Nếu bạn bận không có thời gian làm mà vẫn muốn có bài giải để đi thi thì có thể tham khảo tài liệu nàyNếu bạn bận không có thời gian làm mà vẫn muốn có bài giải để đi thi thì có thể tham khảo tài liệu nàyNếu bạn bận không có thời gian làm mà vẫn muốn có bài giải để đi thi thì có thể tham khảo tài liệu nàyNếu bạn bận không có thời gian làm mà vẫn muốn có bài giải để đi thi thì có thể tham khảo tài liệu nàyNếu bạn bận không có thời gian làm mà vẫn muốn có bài giải để đi thi thì có thể tham khảo tài liệu này
Trang 11 Trình bày các giai đoạn tấn công phổ biến của hacker.
2 Kiểm thử xâm nhập là gì? Tại sao chúng ta cần kiểm thử xâm nhập?
3 Nêu một số mục tiêu cần kiểm thử cho một hoạt động kiểm thử xâm nhập Cần chú ý những gì khi lập kế hoạch kiểm thử xâm nhập?
4 Mô tả một số loại kiểm thử xâm nhập
5 Mô tả các giai đoạn của một hoạt động kiểm thử xâm nhập
6 Mô tả công cụ em biết có thể trợ giúp trong từng giai đoạn tương ứng của một hoạt động kiểm thử xâm nhập
7 Tấn công vào yếu tố con người (social engineering) là gì? Tại sao kỹ thuật này lại hiệu quả trong thực tế?
8 Mô tả về các mục tiêu của một cuộc tấn công vào yếu tố con người Mô tả các giai đoạn của một cuộc tấn công dạng này
9 Phân loại và mô tả một số loại tấn công vào yếu tố con người
10 Trình bày phương pháp và công cụ đối phó với tấn công vào yếu tố con người
11 Xâm nhập vật lý là gì? Trình bày về các giai đoạn của một cuộc tấn công vật lý
12 Mô tả về một số kỹ thuật trong xâm nhập vật lý phổ biến mà em đã được học Ví dụ như thu thập thông tin, cách vượt qua các biện pháp kiểm soát truy cập, các biện pháp an ninh,
13 Kỹ thuật Fuzzing là gì? Tại sao kỹ thuật này lại quan trọng? Có các kiểu fuzzing nào?
14 Dumb fuzzing là gì? Smart fuzzing là gì? Chúng được dùng trong trường hợp nào?
15 Mô tả cách thức đánh giá fuzzing dựa trên mức độ bao phủ mã lệnh (code coverage)
16 Mô tả các phân vùng bộ nhớ của một process, tác dụng của từng phân vùng
17 Stack frame là gì? Vẽ stack frame của hàm main (ví dụ stack1)
Trang 218 Con trỏ trở về (old eip) lưu trong stack là gì?
19 Mô tả tác dụng của thanh ghi: esp, ebp, eip
20 Lỗi tràn bộ đệm là gì?
21
a) Vẽ sơ đồ trạng thái của stack khi gọi hàm foo1(), vị trí của ebp, esp
b) Khi hàm main() gọi foo1(), nó có thể truyền tham số cho hàm foo1() bằng cách nào
c) Làm cách nào để báo cho foo1() biết vị trí lệnh cần quay lại để thực hiện tiếp trong hàm main()?
d) Địa chỉ của biến cục bộ trong stack của hàm foo1() có thể tính ra bằng cách nào?
22 Nhập chuỗi đúng để in ra chuỗi "You win!" ra màn hình cho đoạn code dưới đây Vẽ trạng thái của ngăn xếp cần đạt được
Trang 323 Các option của lệnh dịch có ý nghĩa gì
$ gcc -fno-stack-protector -ggdb /stack.c -o stack
24 Quy ước kết thúc nhỏ (little endian) của bộ xử lý Intel X86 hiểu như thế nào?
25 Thư viện ltrace dùng để làm gì?
26 Hãy mô tả một số cơ chế bảo vệ bộ nhớ của hệ điều hành
27 Làm cách nào để viết mã máy và chèn vào chương trình thực thi? Mã máy được chèn vào nằm trong phân vùng bộ nhớ nào của chương trình?
28 Nêu một số vấn đề có thể gặp phải khi tạo và chèn bytecode vào chương trình thực thi(vd như NULL byte, IDS, các cơ chế bảo vệ bộ nhớ, sinh bytecode cho các nền tảng khácnhau )? Làm cách nào để xử lý nó?
29 NOP sled là gì? Tại sao cần dùng NOP sled?
Trang 4Bài Làm
Câu 1 Trình bày các giai đoạn tấn công phổ biến của hacker
- Bước 1: Lựa chọn mục tiêu:
+ Động cơ có thể do hận thù hoặc vì vui thích hay lợi nhuận+ Không có quy tắc cơ bản, không có chuyển giao, đội trắng sẽ không biếttrước về cuộc tấn công
- Bước 2: Hệ thống trung gian:
+ Tin tặc bắt đầu cuộc tấn công từ một hệ thống khác, do đó khó có thể bịtheo dõi
+ Có nhiều hệ thống trung gian giữa nạn nhân và tin tặc+ Các hệ thống trung gian cũng thường là nạn nhân của tin tặc
- Bước 3: Tin tặc sẽ tiến hành các bước như kiểm thử xâm nhập:
+ Quét thụ động+ Quét chủ động+ Liệt kê các khu vực tấn công+ Lựa chọn hệ thống mục tiêu+ Thăm dò
+ Khai thác lỗ hổng chưa được phát hiện+ Nâng cao đặc quyền
- Bước 4: Duy trì đăng nhập:
+ Bao gồm việc tải và cài đặt các ứng dụng như rootkit, backdoor, trojan,
để có thể lấy quyền truy cập nhanh chóng sau đó
- Bước 5: Xóa dấu vết
+ Xóa log sự kiện xảy ra+ Ẩn các tệp tải lên + Ẩn các tiến trình hoạt động cho phép duy trì đăng nhập+ Vô hiệu hóa bản tin gửi đến hệ thống bảo mật và log hệ thống để ẩn cáctiến trình nguy hiểm
- Bước 6: Củng cố hệ thống:
+ Sau khi lấy được đặc quyền sở hữu một hệ thống, tin tặc có thể sửa các
lỗ bảo mật hệ thống để không kẻ tấn công nào khác sử dụng hệ thốngcho mục đích khác
2 Kiểm thử xâm nhập là gì? Tại sao chúng ta cần kiểm thử xâm nhập?
Trang 5 Kiểm thử xâm nhập là quá trình xác định các lỗ hổng bảo mật trong hệ thống bằngcác đánh giá các mối nguy hại cho hệ thống thông qua việc sử dụng các kĩ thuậttấn công và gây nguy hại cho hệ thống Hiểu đơn giản, kiểm thử xâm nhập là tựtấn công vào hệ thống để phát hiện ra các lỗ hổng hoặc dò tìm dầu vết khi hệthống bị xâm nhập.
- Tài liệu và báo cáo
Tại sao cần kiểm thử xâm nhập
Trang 6- Đảm bảo dữ liệu quan trọng không bị truy nhập trái phép bởi người dùngkhông có quyền
- Xác định mối đe dọa đối với một hệ thống của một tổ chức
- Cung cấp một đánh giá kỹ lưỡng và toàn diện về an ninh bao gồm chính sách, thủ tục, thiết kế và thực hiện
- Cung cấp phương pháp toàn diện để có thể ngăn chặn các cuộc tấn công
- Đem lại hiệu quả cao về mặt tài chính (chi tiêu cho kiểm thử xâm nhập có thể thấp hơn rất nhiều so với rủi ro khi hệ thống bị tấn công)
Câu 3 Nêu một số mục tiêu cần kiểm thử cho một hoạt động kiểm thử xâm nhập Cần chú ý những gì khi lập kế hoạch kiểm thử xâm nhập?
Mục tiêu cần kiểm thử cho hoạt động kiểm thử xâm nhập:
- Nhân viên trong công ty
+ Kiểm thử toàn bộ hệ thống hay chỉ một phần hệ thống
+ Thấy được các loại hệ thống trong phạm vi kiểm thử để đánh giá đúngmức
- Xác định các địa điểm trong phạm vi kiểm thử:
+ Để tính toán được khoảng thời gian và mức độ cần thiết để thực hiệnkiểm thử an ninh vật lý
+ Một số trang web thì cần chú ý đến nơi đặt trung tâm dữ liệu và tậptrung vào người dùng
- Tổ chức một đội kiểm thử xâm nhập:
+ Không cố định nhưng thường gồm các thành phần sau:
Trưởng nhóm
Chuyên gia bảo mật vật lý
Chuyên gia bảo mật tấn công yếu tố con người tấn công yếu tốcon người
Chuyên gia bảo mật không dây
Chuyên gia bảo mật mạng
Chuyên gia hệ điều hành
- Việc phân chia ca kiểm thử:
+ Việc phân chia ca kiểm thử là rất cần thiết
Trang 7+ Có thể chia thành các giai đoạn:
Ngoại vi
Nội bộ
Đảm bảo chất lượng và báo cáo + Hoặc phân chia nhỏ hơn thành từng mục nhỏ hơn:
Tìm kiếm thông tin
Khai thác yếu tố con người
Quét cổng
- Thỏa thuận trước khi thực hiện kiểm thử:
+ Mô tả và thống nhất công việc tiến hành giữa hai bên một cách rõ ràng+ Cần một bản xác nhận về các thành viên trong đội kiểm thử xâm nhậptrong trường hợp cần thiết
Câu 4 Mô tả một số loại kiểm thử xâm nhập
+ Nhóm kiểm thử hoàn toàn không biết thông tin gì hệ thống
+ Chuyên gia đặt mình vào vai tin tặc và cố gắng tấn công hệ thống+ Hoặc họ sẽ được cấp cho một dải IP để hạn chế tổn thất đối với các máybên trong mạng
+ Loại kiểm thử này là mô tả chính xác nhất nhưng gì mà tin tặc có thểlàm
- Kiểm thử hộp xám:
Trang 8+ Là loại kiểm thử nằm giữa kiểm thử hộp đen và kiểm thử hộp trắng.+ Đây là dạng kiểm thử mà nhóm kiểm thử chỉ được cung cấp thông tinhạn chế và chỉ khi thực sự cần thiết.
+ Vì vậy khi tiến hành công việc họ cần cung cấp nhiều thông tin truy cập
để đẩy nhanh quá trình+ Phương thức này dùng để tối ưu hóa tính hiện thực mà vẫn đảm bảonguồn ngân sách hợp lý
Câu 5 Mô tả các giai đoạn của một hoạt động kiểm thử xâm nhập
Giai đoạn trước tấn công
- Đề cập đến chế độ của cuộc tấn công và mục tiêu cần đạt được
- Xác định vị trí, thu thập và xác định thông tin về mục tiêu
- Tìm kiếm càng nhiều thông tin của mục tiêu càng tốt
việc thu thập nhiều thông tin theo nhiều cách khác nhau giúp xây dựng kế hoạch tấn công
Giai đoạn tấn công
- Kiểm tra vùng ngoài: Kiểm tra an ninh vùng ngoài
- Thu thập mục tiêu:
+ Thu thập một mục tiêu cần phải tập hợp các hoạt động được thực hiện bởi các tester với các đối tượng máy tính bị nghi ngờ đến nhiều các thử thách xâm nhập chẳng hạn như quét lỗ hổng và đánh giá an ninh
- Leo thang đặc quyền
+ Một khi đã dành được mục tiêu, tester cố gắng khai thác hệ thống và truy cập các nguồn tài nguyên được bảo vệ
Tận dụng lợi thế của các chính sách bảo mật kém và tận dụng lợi thế của email hoặc code web không an toàn để thu thập thông tin dẫn tới sự leo thang đặc quyền
Sử dụng các ký thuật như brute force để đạt được đặc quyền (crack mật khẩu)
Sử dụng các trojan và phân tích giao thức
Sử dụng thông tin thu thập được thông qua các ký thuật như ký thuật giao tiếp để truy cập trái phép vào các nguồn tài nguyên đặcquyền
- Thực thi, cấy ghép và xem lại
+ Thỏa hiệp hệ thống
Có được sự thỏa hiệp của hệ thống bằng cách thực thi đoạn code bất kỳ
Trang 9+ Thâm nhập hệ thống
Khám phá mức độ lỗi của an ninh+ Thực hiện các khai thác
Tận dụng các lỗ hổng được xác định trong hệ thống mục tiêu
Giai đoạn sau tấn công
- Đây là giai đoạn quan trọng, có trách nhiệm khôi phục lại các hệ thống trước kia
+ Loại bỏ tất cả các tập tin đã tải lên hệ thống+ Làm sạch tất cả các mục đăng ký và loại bỏ lỗ hổng+ Loại bỏ tất cả các công cụ và khai thác từ các hệ thống thử nghiệm+ Khôi phục lại mạng lưới thử nghiệm bằng cách loại bỏ chia sẻ và kết nối+ Phân tích các kết quả và trình bày với tổ chức
Câu 6 Mô tả công cụ em biết có thể trợ giúp trong từng giai đoạn tương ứng của một hoạt động kiểm thử xâm nhập
Giai đoạn trước tấn công: công cụ Acunetix
- Acunetix là phần mềm quét lỗ hổng website hiệu quả nhất hiện nay gồm SQL Injection, Cross Site Scripting và nhiều lỗ hổng khác Trong đó, SQL Injection
là kỹ thuật tấn công sửa đổi toàn bộ các truy vấn SQL để có thể truy cập dữ liệu của hệ thống CSDL của website Còn Cross-site scripting hay XSS là kỹ thuật tấn công cho phép một hacker có thể thực hiện một kịch bản độc hại ở trên trình duyệt mà người dùng truy cập
- Acunetix WVS có thể ra quét các lỗ hổng này trên website và phục vụ tốt cho việc thu thập thông tin từ mục tiêu
Giai đoạn tấn công: Sử dụng công cụ metasploit
- Metasploit là một framework cung cấp môi trường để pentest các hệ thống phần mềm, mạng Metasploit = Meta + Exploit, ở đó meta thể hiện sự trừu tượng hóa => một framework thiết kế cho các thao tác với exploit Metasploit lưu trữ một database cho các exploit public hiện có, và cung cấp sẵn các công
cụ để triển khai các exploit đó Nhờ đó bạn có thể sử dụng metasploit để tạo ra các payload đi pentest các hệ thống
Câu 7 Tấn công vào yếu tố con người (social engineering) là gì? Tại sao kỹ thuật này lại hiệu quả trong thực tế?
Khái niệm:
Trang 10- Là phương pháp khiến ai đó thực hiện một việc mà thông thường họ sẽ không làm bằng cách tạo ra mối quan hệ tin cậy với họ, chẳng hạn như cho số điện thoại cá nhân hay thông tin bí mật nào đó.
- Đây là một trong những tấn công mạnh mẽ nhất của tội phạm mạng nhằm truy nhập tài sản thông tin của người dùng
Cách thức: Khai thác vào tâm lý con người SEA khiến cho người dùng nhận thức sai lầm để chấp nhận làm một việc ngoại lệ, với một lý do là chính đáng, từ đó phá
vỡ chính sách an toàn Một số khía cạnh tâm lý thường được kẻ tấn công sử dụng
Kỹ thuật tấn công này có hiệu quả trong thực tế vì:
- Không có một phần mêm hay phần cứng nào có thể chống lại một cuộc tấn công Social Engineering
- Chính sách bảo mật mạnh cũng sẽ là liên kết yếu nhất và con người là yếu tố nhạy cảm nhất
- Rất khó để phát hiện ra Social Engineering
- Không có một phương pháp chắc chắn nào để đảm bảo an ninh một cách đầy
đủ từ các cuộc tấn công Social Engineering
Câu 8 Mô tả về các mục tiêu của một cuộc tấn công vào yếu tố con người Mô tả các giaiđoạn của một cuộc tấn công dạng này
Các mục tiêu của một cuộc tấn công vào yếu tố con người là:
- Nhân viên tiếp tân và nhân viên hỗ trợ
- Người dùng và khách hàng
- Người bán hàng của tổ chức mục tiêu
- Giám đốc hỗ trợ kỹ thuật
- Người quản trị hệ thống
Các gian đoạn của một cuộc tấn công SEA
- Nghiên cứu công ty mục tiêu: Trang web, nhân sự, lịch trình
Trang 11- Lựa chọn nạn nhân: Xác định những nhân viên không hài lòng về chính sách trong công ty mục tiêu
- Phát triển mối quan hệ: Phát triển mối quan hệ với những nhân viên đã được chọn
- Khai thác mối quan hệ: Tập hợp thông tin tài khoản nhạy cảm, thông tin tài chính và công nghệ hiện tại
Câu 9 Phân loại và mô tả một số loại tấn công vào yếu tố con người
Trang 12+ Những người trong công ty tuy nhiên bất mãn với điều khoản của côngty
Câu 10 Trình bày phương pháp và công cụ đối phó với tấn công vào yếu tố con người
Chính sách:
- Các chính sách về mật khẩu:
+ Thay đổi mật khẩu định kỳ+ Tránh mật khẩu dễ đoán+ Tải khoản cần được chặn sau 1 số lần cố gắng đăng nhập thất bại+ Giữ bí mật mật khẩu
- Các chính sách an ninh vật lý:
+ Nhận diện nhân viên bằng cách phát thẻ id, đồng phục+ Hộ tống những khách mời
+ Hạn chế các khu vực truy nhập+ Băm nhỏ những tài liệu vô dụng+ Tuyển dụng nhân viên an ninh
Đào tạo: một chương trình đào tạo hiệu qủa nên bao gồm tất cả những chính sách bảo mật và phương pháp để nâng cao nhận thức về SEA
Phân loại thông tin: Phân loại các thông tin tối mật, độc quyền, sử dụng nội bộ, sử dụng công cộng
Đặc quyền truy nhập: Cần phải có quản trị viên, người sử dụng các tài khoản phải được ủy quyền thích hợp
Kiểm tra nhân viên và sử lý đình chỉ đúng đắn: Các nhân viên bị thôi việc và bất mãn rất dễ bị mua chuộc và cung cấp thông tin
Tần xuất phản hồi thích hợp: Cần có những phản ứng thích hợp cho những trường hợp cố gắng sử dụng SEA
Xác thực hai thành phần: Thay vì mật khẩu cố định, sử dụng xác thực hai thành phần cho những dịch vụ mạng có nguy cơ cao như VPN
Phòng thủ Anti-virus/Anti-phishing: Sử dụng nhiều lớp để phòng thủ virus như người dùng đầu cuối và mail gateway để giảm thiểu các cuộc tấn công SEA
Thay đổi công tác quản lý: Việc thay đổi quy trnhf quản lý tài liệu sẽ bảo mật hơn trong quá trình ad-hoc
Trang 13+ Kiểm tra tất cả các URL mà người dùng truy cập để phát hiện dấu hiệu độc hại hay lừa đảo
Câu 11 Xâm nhập vật lý là gì? Trình bày về các giai đoạn của một cuộc tấn công vật lý
Khái niệm: Xâm nhập vật lý là một phương pháp của tội phạm mạng nhằm truy nhập vào cơ sở hạ tầng mạng duex liệu từ phía trong của công ty, từ đó có thể dễ dàng xâm nhập đến mục tiêu Một khi kẻ tấn công có thể đi vào bên trong tổ chức mục tiêu, cơ hội tấn công là rất nhiều
Giai đoạn một cuộc tấn công vật lý:
- Trinh sát:
+ Nghiên cứu mục tiêu cần tấn công:
+ Sử dụng công cụ như Google Map xem hình ảnh chụp qua vệ tinh+ Khảo sát địa điểm tòa nhà: Cửa ra vào, cửa hàng hóa, các khu vực hút thuốc, bãi đỗ xe
+ Khảo sát đồng phục nhân viên, huy hiệu bảo mật
+ Thu thập thông tin mục tiêu trên mạng
- Vượt qua cửa bảo mật:
+ Sử dụng các thông tin đã thu thập được vượt qua các hệ thống báo mật
+ Sử dụng các kĩ thuật để vượt qua xác thực để vào bên trong hệ thống
+ Tạo ra các backdoor hoặc kết nối mở để có thể truy cập từ xa
+ Tạo các tài khoản đặc quyền cao
- Xóa dấu vết:
+ Sau khi tạo được backdoor Kẻ tấn công cố gắng xóa dấu vết Như lịch sử máy tính
+ Đoạn video từ camera
Câu 12 Mô tả về một số kỹ thuật trong xâm nhập vật lý phổ biến mà em đã được học Ví
dụ như thu thập thông tin, cách vượt qua các biện pháp kiểm soát truy cập, các biện pháp
an ninh
- Trinh sát:
+ Nghiên cứu về khu vực thông qua các công cụ như Google Maps
Trang 14+ Các lối ra vào tiềm năng, lối vào chính nhiều bảo vệ, lỗi vào phụ nhưcửa dẫn ra khu vực hút thuốc thường bảo vệ ít hơn
+ Quan sát cửa ra vào sử dùng gì, quét thẻ, mật khẩu hay không
+ Khu vực ra vào có camera không, có bảo vệ không
- Khu vực người hút thuốc:
+ Là khu vực ngoài có ít hệ thống an ninh, một số cửa có thể không cókhóa
+ Khu vực này ít bị người để ý
+ Sử dụng lối vào này làm bàn đạp, chỉ cần ít đồ dùng như, bao thuốc bậtlửa, một thẻ tên giả
+ Nếu cửa không có khóa, giả vờ hút thuốc bên ngoài rồi đi vào cửa vớithuốc lá bên trong vì bên trong có thể có camera ghi lại
- Điểm kiểm thử có người giám sát:
+ Ở một số khu vực có thể có lễ tân hoặc bảo vệ
+ Đôi khi khách hàng cần trình bày cmnd ở bàn tiếp tân, giải thích đếnlàm gì gặp ai Sau đó được nhận được thẻ ra vào Có thể nói chuyện với
bộ phận nhân sự để sắp xếp cuộc hẹn và làm giả thẻ ra vào
+ Thời gian xâm nhập tốt nhất là lúc ăn trưa, vì khi đó nhiều người qua lại
và dễ dàng qua mặt được nhân viên bảo vệ
- Vượt qua cửa bị khóa:
+ Có thể giả vở đang nói chuyện điện thoại để đánh lạc hướng cameratrong lúc chờ đợi người trong phòng khóa đi ra Khi có người đi ra thìnhẹ nhàng giữu cửa lại và đi qua
+ Một cách khác là cửa không đóng mở liên tục và người bình thường thìkhông từ chối một người vật nặng cồng kềnh được Khi đó người đitrước có thể giữ cửa cho người kiểm thử
- Người kiểm thử ở bên trong
+ Người kiểm thử cần tìm đường đến nơi mình cần mà không để bị pháthiện
+ Một phòng hội nghị là rất tốt vì thường có những cổng kết nối mạng.Ngoài ra có thể sử dụng kĩ thuật USB Trojan để tạo kết nối truy cập từxa
+ Một trong cách là khác là tận dụng giờ ăn trưa có nhiều phòng trống Từ
đó truy cập vào mạng nội bộ