Quy trình quét động

Nam Phi

Công cụ quét Web Mobile Local API Extension Serverless Hướng dẫn
OWASP® Zed Attack Proxy (ZAP)

Sử dụng vùng chứa OWASP ZAP ; ZAP Docker để thực hiện quá trình quét động tự động (DAST) đối với ứng dụng của bạn. Các tệp cấu hình được xác định trước đã có tất cả các CWE cần thiết. Bạn chỉ cần thêm mã này vào môi trường của mình và lệnh chạy Docker.

Để biết định nghĩa về từng loại Nhấp vào đây Loại ứng dụng

Bạn có thể quét toàn bộ trên web, thiết bị di động hoặc ứng dụng nội bộ bằng cách làm theo các bước sau:

  1. DAST và API quét sẽ chạy bằng cách sử dụng hình ảnh ZAP Docker. Đối với các ứng dụng nội bộ dành cho web, thiết bị di động hoặc nội bộ, bạn nên chạy quét ZAP đầy đủ trên môi trường chạy thử hoặc prod-1. 

  2. Tải tệp cấu hình zap-casa-config.conf xuống rồi chuyển đến thư mục của tệp đó. 

  1. Tạo một tệp ngữ cảnh để quét. Hãy xem hướng dẫn “Xác thực” bên dưới để biết thêm thông tin chi tiết.

  1. Chạy lệnh sau: 

docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-full-scan.py 
-t https://example.com -P 8080 
-c zap-casa-config.conf 
-x results-full.xml -n example.context -U username
  1. Kết quả sẽ được lưu trong một tệp XML (ví dụ đính kèm ở đây: zap-results-full.xml)

Bạn có thể quét API theo các bước sau:

  1. Đối với các lần quét API, hãy sử dụng tệp cấu hình zap-casa-api-config.conf

  1. Chuyển đến thư mục của thư mục đó và chạy lệnh sau

docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw 
-t owasp/zap2docker-stable zap-api-scan.py 
-t https://example.com -f openapi-P 8080 
-c zap-casa-api-config.conf 
-x results-full.xml
  1. Kết quả sẽ được lưu trong một tệp XML (ví dụ đính kèm ở đây: zap-results-api.xml )

Xác thực

Bạn nên thực hiện quét ZAP bằng phương thức xác thực để hiểu vị trí lưu trữ và truy cập dữ liệu người dùng. Bạn cần phải định cấu hình thì mới có thể quét. Hình ảnh ZAP Docker cho phép hai đối số liên quan đến xác thực:

-n ngữ cảnh_tệp

Tệp ngữ cảnh sẽ được tải trước khi quét mục tiêu

-U người dùng

Tên người dùng được sử dụng để quét đã xác thực. Người dùng phải được xác định trong tệp ngữ cảnh đã cho. 

Để đặt các thông số này, bạn phải tạo một tệp ngữ cảnh. Việc này được thực hiện dễ dàng nhất thông qua giao diện người dùng ZAP trên máy tính.

ngữ cảnh zap
  1. Đặt cơ chế xác thực. ZAP hiện hỗ trợ 5 phương pháp xác thực:

    • Xác thực thủ công

    • Xác thực dựa trên biểu mẫu

    • Xác thực HTTP/NTLM

    • Xác thực dựa trên tập lệnh

    • Xác thực dựa trên JSON

Xác thực zap
  1. Xác định thông số xác thực. Thông thường, URL này sẽ bao gồm URL đăng nhập và định dạng trọng tải (tên người dùng và mật khẩu). Các thông số bắt buộc này dành riêng cho các phương thức xác thực đang được sử dụng.
Xác thực cấu hình zap
  1. Hãy thêm một người dùng và mật khẩu hợp lệ. Tạo nhiều người dùng nếu ứng dụng hiển thị các chức năng khác nhau dựa trên vai trò.
Định cấu hình người dùng zap

Sau khi định cấu hình các chế độ cài đặt này, bạn có thể xuất ngữ cảnh dưới dạng tệp để quét.

Ngữ cảnh xuất zap

Hãy nhớ lưu ngữ cảnh vào một vị trí dễ tham khảo vì bạn sẽ cần thêm đường dẫn tệp làm đối số cho lệnh quét. Bây giờ, bạn sẽ có thể chạy quét đã xác thực với thông tin đăng nhập của người dùng được chỉ định trong ngữ cảnh. Ví dụ:

Tạo người dùng
  docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw 
  -t owasp/zap2docker-stable zap-full-scan.py 
  -t https://example.com -P 8080 
  -c zap-casa-config.conf -x results-full.xml 
  -n /Users/DemoUser/Documents/Context.context -U test@example.com