Kiểm tra thâm nhập ứng dụng web EITC/IS/WAPT là chương trình Chứng nhận CNTT của Châu Âu về các khía cạnh lý thuyết và thực tiễn của kiểm tra thâm nhập ứng dụng web (hack trắng), bao gồm các kỹ thuật khác nhau cho các trang web kỹ thuật quét, quét và tấn công, bao gồm các công cụ và bộ kiểm tra thâm nhập chuyên dụng .
Chương trình học của Kiểm tra thâm nhập ứng dụng web EITC/IS/WAPT bao gồm giới thiệu về Burp Suite, ghi đè web và DVWA, kiểm tra bạo lực với Burp Suite, phát hiện tường lửa ứng dụng web (WAF) với WAFW00F, phạm vi mục tiêu và thêu, phát hiện các tệp ẩn với ZAP, quét lỗ hổng WordPress và liệt kê tên người dùng, quét cân bằng tải, tập lệnh trên nhiều trang, XSS - được phản ánh, lưu trữ và DOM, tấn công proxy, định cấu hình proxy trong ZAP, tấn công tệp và thư mục, khám phá tệp và thư mục với DirBuster, thực hành tấn công web , OWASP Juice Shop, CSRF - Cross Site Request Forgery, thu thập cookie và thiết kế ngược, Các thuộc tính HTTP - đánh cắp cookie, SQL injection, DotDotPwn - truyền tải thư mục, chèn iframe và đưa vào HTML, Heartbleed khai thác - khám phá và khai thác, chèn mã PHP, bWAPP - đưa vào HTML, POST được phản ánh, chèn lệnh hệ điều hành với Commix, phía máy chủ bao gồm chèn SSI, dồn nén trong Docker, OverTheWire Natas, LFI và tiêm lệnh, Google hack để dồn nén, Google Dorks Để kiểm tra thâm nhập, Apache2 ModSecurity, cũng như Nginx ModSecurity, trong cấu trúc sau, bao gồm nội dung giáo khoa video toàn diện làm tài liệu tham khảo cho Chứng chỉ EITC này.
Bảo mật ứng dụng web (thường được gọi là Web AppSec) là khái niệm thiết kế các trang web hoạt động bình thường ngay cả khi chúng bị tấn công. Ý tưởng là tích hợp một tập hợp các biện pháp bảo mật vào một ứng dụng Web để bảo vệ tài sản của nó khỏi các tác nhân thù địch. Các ứng dụng web, giống như tất cả các phần mềm, dễ có sai sót. Một số lỗ hổng này là lỗ hổng thực tế có thể bị khai thác, gây rủi ro cho doanh nghiệp. Những sai sót như vậy được bảo vệ chống lại thông qua bảo mật ứng dụng web. Nó đòi hỏi phải sử dụng các phương pháp tiếp cận phát triển an toàn và áp dụng các biện pháp kiểm soát bảo mật trong suốt vòng đời phát triển phần mềm (SDLC), đảm bảo rằng các lỗi thiết kế và các vấn đề triển khai được giải quyết. Kiểm tra thâm nhập trực tuyến, được thực hiện bởi các chuyên gia nhằm phát hiện và khai thác các lỗ hổng ứng dụng web bằng cách sử dụng phương pháp tiếp cận hack trắng, là một phương pháp cần thiết để có khả năng phòng thủ thích hợp.
Một bài kiểm tra thâm nhập web, còn được gọi là bài kiểm tra bút trên web, mô phỏng một cuộc tấn công mạng vào một ứng dụng web để tìm ra các lỗ hổng có thể khai thác được. Kiểm tra thâm nhập thường được sử dụng để bổ sung tường lửa ứng dụng web trong bối cảnh bảo mật ứng dụng web (WAF). Nói chung, thử nghiệm bút đòi hỏi phải cố gắng thâm nhập vào bất kỳ số lượng hệ thống ứng dụng nào (ví dụ: API, máy chủ giao diện người dùng/phụ trợ) để tìm ra các lỗ hổng, chẳng hạn như các đầu vào không được vệ sinh dễ bị tấn công tiêm mã.
Các phát hiện của kiểm tra thâm nhập trực tuyến có thể được sử dụng để định cấu hình các chính sách bảo mật WAF và giải quyết các lỗ hổng được phát hiện.
Kiểm tra thâm nhập có năm bước.
Quy trình kiểm tra bút được chia thành năm bước.
- Lập kế hoạch và do thám
Xác định phạm vi và mục tiêu của thử nghiệm, bao gồm các hệ thống được giải quyết và các phương pháp thử nghiệm sẽ được sử dụng, là giai đoạn đầu tiên.
Để hiểu rõ hơn về cách thức hoạt động của mục tiêu và những điểm yếu tiềm ẩn của nó, hãy thu thập thông tin tình báo (ví dụ: mạng và tên miền, máy chủ thư). - Quét (scanning)
Giai đoạn tiếp theo là tìm ra cách ứng dụng mục tiêu sẽ phản ứng với các kiểu xâm nhập khác nhau. Điều này thường được thực hiện bằng cách sử dụng các phương pháp sau:
Phân tích tĩnh - Kiểm tra mã của ứng dụng để dự đoán cách nó sẽ hoạt động khi nó được chạy. Trong một lần chuyển, các công cụ này có thể quét toàn bộ mã.
Phân tích động là quá trình kiểm tra mã của ứng dụng trong khi nó đang hoạt động. Phương pháp quét này thực tế hơn vì nó cung cấp chế độ xem thời gian thực về hiệu suất của ứng dụng. - Có được quyền truy cập
Để tìm ra điểm yếu của mục tiêu, bước này sử dụng các cuộc tấn công của ứng dụng web chẳng hạn như tập lệnh trên nhiều trang web, chèn SQL và các cửa hậu. Để hiểu được thiệt hại mà các lỗ hổng này có thể gây ra, người thử nghiệm cố gắng khai thác chúng bằng cách nâng cấp đặc quyền, đánh cắp dữ liệu, chặn lưu lượng truy cập, v.v. - Giữ quyền truy cập
Mục đích của giai đoạn này là đánh giá xem liệu lỗ hổng có thể bị khai thác để thiết lập sự hiện diện lâu dài trong hệ thống bị xâm nhập, cho phép kẻ xấu truy cập chuyên sâu hay không. Mục đích là bắt chước các mối đe dọa dai dẳng nâng cao, có thể tồn tại trong hệ thống hàng tháng để đánh cắp thông tin nhạy cảm nhất của công ty. - nghiên cứu
Kết quả kiểm tra thâm nhập sau đó được đưa vào một báo cáo bao gồm các thông tin như:
Các lỗ hổng đã được khai thác chi tiết
Dữ liệu thu được nhạy cảm
Khoảng thời gian mà người kiểm tra bút có thể không được chú ý trong hệ thống.
Các chuyên gia bảo mật sử dụng dữ liệu này để hỗ trợ định cấu hình cài đặt WAF của doanh nghiệp và các giải pháp bảo mật ứng dụng khác nhằm vá các lỗ hổng và ngăn chặn các cuộc tấn công tiếp theo.
Phương pháp thử nghiệm thâm nhập
- Kiểm tra thâm nhập bên ngoài tập trung vào các tài sản của một công ty có thể nhìn thấy trên internet, chẳng hạn như chính ứng dụng web, trang web của công ty, cũng như email và máy chủ tên miền (DNS). Mục tiêu là có được quyền truy cập và trích xuất thông tin hữu ích.
- Thử nghiệm nội bộ yêu cầu người thử nghiệm có quyền truy cập vào một ứng dụng đằng sau tường lửa của công ty mô phỏng một cuộc tấn công nội gián thù địch. Điều này không cần thiết để mô phỏng một nhân viên lừa đảo. Một nhân viên có thông tin xác thực có được do nỗ lực lừa đảo là một điểm khởi đầu phổ biến.
- Thử nghiệm mù là khi người thử nghiệm được cung cấp tên của công ty đang được thử nghiệm. Điều này cho phép các chuyên gia bảo mật xem cách một cuộc tấn công ứng dụng thực tế có thể diễn ra như thế nào trong thời gian thực.
- Thử nghiệm mù đôi: Trong thử nghiệm mù đôi, các chuyên gia bảo mật không biết trước về cuộc tấn công mô phỏng. Họ sẽ không có thời gian để xây dựng công sự của mình trước khi có nỗ lực xâm phạm, giống như trong thế giới thực.
- Kiểm thử theo mục tiêu - trong trường hợp này, người kiểm tra và nhân viên bảo mật hợp tác và duy trì theo dõi các chuyển động của nhau. Đây là một bài tập huấn luyện tuyệt vời cung cấp cho nhóm bảo mật phản hồi theo thời gian thực từ quan điểm của một hacker.
Tường lửa ứng dụng web và thử nghiệm thâm nhập
Kiểm thử thâm nhập và WAF là hai kỹ thuật bảo mật riêng biệt nhưng bổ sung cho nhau. Người thử nghiệm có khả năng tận dụng dữ liệu WAF, chẳng hạn như nhật ký, để tìm và khai thác các điểm yếu của ứng dụng trong nhiều loại thử nghiệm bút (ngoại trừ thử nghiệm mù và mù đôi).
Đổi lại, dữ liệu kiểm tra bút có thể giúp quản trị viên WAF. Sau khi hoàn thành thử nghiệm, các cấu hình WAF có thể được sửa đổi để bảo vệ khỏi các sai sót được phát hiện trong quá trình thử nghiệm.
Cuối cùng, kiểm tra bút đáp ứng một số yêu cầu tuân thủ của các phương pháp đánh giá bảo mật, chẳng hạn như PCI DSS và SOC 2. Một số yêu cầu, chẳng hạn như PCI-DSS 6.6, chỉ có thể được đáp ứng nếu sử dụng WAF được chứng nhận. Tuy nhiên, do những lợi ích đã nói ở trên và khả năng sửa đổi cài đặt WAF, điều này không làm cho việc kiểm tra bút trở nên kém hữu ích hơn.
Ý nghĩa của kiểm tra bảo mật web là gì?
Mục tiêu của kiểm tra bảo mật web là xác định các lỗi bảo mật trong các ứng dụng Web và thiết lập của chúng. Lớp ứng dụng là mục tiêu chính (tức là những gì đang chạy trên giao thức HTTP). Gửi các dạng đầu vào khác nhau tới một ứng dụng Web để gây ra sự cố và khiến hệ thống phản hồi theo những cách không mong muốn là một cách tiếp cận phổ biến để kiểm tra tính bảo mật của nó. Những "bài kiểm tra tiêu cực" này nhằm xem liệu hệ thống có đang làm bất cứ điều gì mà nó không dự định hoàn thành hay không.
Điều quan trọng là phải nhận ra rằng kiểm tra bảo mật Web đòi hỏi nhiều thứ hơn là chỉ xác minh các tính năng bảo mật của ứng dụng (chẳng hạn như xác thực và ủy quyền). Nó cũng rất quan trọng để đảm bảo rằng các tính năng khác được triển khai một cách an toàn (ví dụ: logic nghiệp vụ và việc sử dụng xác thực đầu vào và mã hóa đầu ra thích hợp). Mục đích là để đảm bảo rằng các chức năng của ứng dụng Web được an toàn.
Có nhiều loại đánh giá bảo mật là gì?
- Kiểm tra Bảo mật ứng dụng động (DAST). Kiểm tra bảo mật ứng dụng tự động này phù hợp nhất cho các ứng dụng nội bộ, ít rủi ro và phải đáp ứng các yêu cầu bảo mật theo quy định. Kết hợp DAST với một số kiểm tra bảo mật trực tuyến thủ công cho các lỗ hổng phổ biến là chiến lược tốt nhất cho các ứng dụng có nguy cơ trung bình và các ứng dụng quan trọng đang trải qua những thay đổi nhỏ.
- Kiểm tra bảo mật cho các ứng dụng tĩnh (SAST). Chiến lược bảo mật ứng dụng này bao gồm cả phương pháp kiểm tra tự động và thủ công. Nó lý tưởng để phát hiện lỗi mà không cần phải chạy ứng dụng trong môi trường sống. Nó cũng cho phép các kỹ sư quét mã nguồn để phát hiện và sửa chữa các lỗi bảo mật phần mềm một cách có hệ thống.
- Kiểm tra thâm nhập. Kiểm tra bảo mật ứng dụng thủ công này lý tưởng cho các ứng dụng thiết yếu, đặc biệt là những ứng dụng đang có những thay đổi đáng kể. Để tìm các kịch bản tấn công nâng cao, việc đánh giá sử dụng logic nghiệp vụ và kiểm tra dựa trên đối thủ.
- Ứng dụng tự bảo vệ trong thời gian chạy (RASP). Phương pháp bảo mật ứng dụng ngày càng phát triển này kết hợp nhiều kỹ thuật công nghệ khác nhau để tạo thiết bị cho một ứng dụng sao cho các mối đe dọa có thể được theo dõi và hy vọng sẽ được ngăn chặn trong thời gian thực khi chúng xảy ra.
Kiểm tra bảo mật ứng dụng đóng vai trò gì trong việc giảm thiểu rủi ro của công ty?
Phần lớn các cuộc tấn công vào các ứng dụng web bao gồm:
- SQL Injection
- XSS (Kịch bản chéo trang)
- Thực thi lệnh từ xa
- Đường dẫn Traversal tấn công
- Quyền truy cập nội dung bị hạn chế
- Tài khoản người dùng bị xâm phạm
- Cài đặt mã độc hại
- Doanh thu bán hàng bị mất
- Niềm tin của khách hàng bị xói mòn
- Uy tín thương hiệu bị tổn hại
- Và rất nhiều cuộc tấn công khác
Trong môi trường Internet ngày nay, một ứng dụng Web có thể bị tổn hại bởi nhiều thách thức. Hình trên mô tả một số cuộc tấn công phổ biến nhất do những kẻ tấn công gây ra, mỗi cuộc tấn công có thể gây ra thiệt hại đáng kể cho một ứng dụng riêng lẻ hoặc toàn bộ doanh nghiệp. Biết được nhiều cuộc tấn công khiến một ứng dụng dễ bị tấn công, cũng như các kết quả có thể xảy ra của một cuộc tấn công, cho phép công ty giải quyết các lỗ hổng bảo mật trước thời hạn và kiểm tra chúng một cách hiệu quả.
Các biện pháp kiểm soát giảm thiểu có thể được thiết lập trong suốt giai đoạn đầu của SDLC để ngăn chặn bất kỳ vấn đề nào bằng cách xác định nguyên nhân gốc rễ của lỗ hổng bảo mật. Trong quá trình kiểm tra bảo mật ứng dụng Web, kiến thức về cách thức hoạt động của các mối đe dọa này cũng có thể được sử dụng để nhắm mục tiêu các địa điểm quan tâm đã biết.
Nhận biết tác động của một cuộc tấn công cũng rất quan trọng đối với việc quản lý rủi ro của công ty, vì các tác động của một cuộc tấn công thành công có thể được sử dụng để xác định mức độ nghiêm trọng của lỗ hổng nói chung. Nếu các lỗ hổng được phát hiện trong quá trình kiểm tra bảo mật, việc xác định mức độ nghiêm trọng của chúng cho phép công ty ưu tiên các nỗ lực khắc phục hiệu quả hơn. Để giảm thiểu rủi ro cho công ty, hãy bắt đầu với những vấn đề nghiêm trọng quan trọng và tìm cách giảm thiểu những vấn đề có ảnh hưởng.
Trước khi xác định một vấn đề, đánh giá tác động có thể có của từng chương trình trong thư viện ứng dụng của công ty sẽ giúp bạn ưu tiên kiểm tra bảo mật ứng dụng. Kiểm tra bảo mật Wenb có thể được lên lịch để nhắm mục tiêu các ứng dụng quan trọng của công ty trước tiên, với việc kiểm tra có mục tiêu hơn để giảm rủi ro đối với doanh nghiệp. Với danh sách các ứng dụng có cấu hình cao đã được thiết lập, kiểm tra bảo mật wenb có thể được lên lịch để nhắm mục tiêu các ứng dụng quan trọng của công ty trước, với kiểm tra có mục tiêu hơn để giảm rủi ro đối với doanh nghiệp.
Trong quá trình kiểm tra bảo mật ứng dụng web, những tính năng nào cần được kiểm tra?
Trong quá trình kiểm tra bảo mật ứng dụng Web, hãy xem xét danh sách các tính năng không đầy đủ sau đây. Việc triển khai không hiệu quả từng thứ có thể dẫn đến những điểm yếu, khiến công ty gặp nguy hiểm.
- Cấu hình của ứng dụng và máy chủ. Mã hóa/thiết lập mật mã, cấu hình máy chủ Web, v.v. đều là những ví dụ về các sai sót tiềm ẩn.
- Xác thực đầu vào và xử lý lỗi Xử lý đầu vào và đầu ra kém dẫn đến việc đưa vào SQL, tạo kịch bản trang chéo (XSS) và các sự cố đưa vào điển hình khác.
- Xác thực và duy trì các phiên. Các lỗ hổng có thể dẫn đến việc mạo danh người dùng. Sức mạnh thông tin xác thực và khả năng bảo vệ cũng cần được tính đến.
- Ủy quyền. Khả năng bảo vệ chống lại sự leo thang đặc quyền theo chiều dọc và chiều ngang của ứng dụng đang được kiểm tra.
- Logic trong kinh doanh. Hầu hết các chương trình cung cấp chức năng kinh doanh đều dựa vào những điều này.
- Logic ở cuối khách hàng. Loại tính năng này đang trở nên phổ biến hơn với các trang web hiện đại, chứa nhiều JavaScript, cũng như các trang web sử dụng các loại công nghệ phía máy khách khác (ví dụ: Silverlight, Flash, Java applet).
Để tìm hiểu chi tiết về chương trình giảng dạy chứng nhận, bạn có thể mở rộng và phân tích bảng bên dưới.
Chương trình Chứng nhận Thử nghiệm Thâm nhập Ứng dụng Web EITC/IS/WAPT tham khảo các tài liệu giáo khoa truy cập mở dưới dạng video. Quá trình học tập được chia thành cấu trúc từng bước (chương trình -> bài học -> chủ đề) bao gồm các phần chương trình học có liên quan. Tư vấn không giới hạn với các chuyên gia tên miền cũng được cung cấp.
Để biết chi tiết về kiểm tra thủ tục Chứng nhận Làm thế nào nó hoạt động.
Tải xuống tài liệu chuẩn bị tự học ngoại tuyến hoàn chỉnh cho chương trình Kiểm tra thâm nhập ứng dụng web EITC/IS/WAPT dưới dạng tệp PDF
Tài liệu chuẩn bị EITC/IS/WAPT – phiên bản tiêu chuẩn
Tài liệu chuẩn bị EITC/IS/WAPT – phiên bản mở rộng với các câu hỏi ôn tập