Blog

Xác định WAF trong ứng dụng web

12/12/2016 - 03:10

Trong bài viết trước mình đã giới thiệu một vài loại WAF và cách thức hoạt động của nó. Ở bài viết này, mình sẽ hướng dẫn một vài phương pháp để xác định loại WAF được triển khai trên ứng dụng web.

Trong quá trình thử nghiệm thâm nhập, nếu bạn thu thập được nhiều thông tin về hệ thống mục tiêu, thì bạn sẽ có nhiều phương án tấn công hơn. Và việc xác định WAF cũng không phải là một ngoại lệ. Có được thông tin về WAF được triển khai trên ứng dụng web sẽ giúp bạn tiết kiệm thời gian trong quá trình thử nghiệm thâm nhập. Với thông tin có được về hệ thống WAF, bạn có thể tìm hiểu được cách thức và nguyên tắc hoạt động của nó thay vì phải mò mẫn.

Dưới đây là một vài cách để xác định loại WAF trên ứng dụng web:

  • Giá trị cookie
    Một vài WAF sẽ thêm vào cookie một giá trị nhất định.
    Citrix Netscalar: Bạn sẽ thấy giá trị của cookie trong HTTP Response sẽ là ns_af, citrix_ns_id


    F5 Big IP ASM: Bạn sẽ thấy giá trị của cookie trong HTTP Response bắt đầu là ký tự TS theo sau đó là chuỗi các ký tự ngẫu nhiên tuân thủ theo regular expression ^TS[a-zA-Z0-9]{3,6}

  • HTTP Response Codes
    Một vài loại WAF, bạn có thể xác định thông qua HTTP Response Codes như 403, 406, 419, 500, 501 ...
    ModSecurity: Khi bạn gửi một request khác thường tới web server, bạn sẽ nhận được HTTP Response Code 406  Not  acceptable​

    WebKnight Firewall: Khi bạn gửi một request khác thường tới web server, bạn sẽ nhận được HTTP Response 999 No Hacking

Để tự động xác định WAF được triển khai trên ứng dụng web, mình muốn để giới thiệu công cụ: wafw00f. 
wafw00f là một công cụ được viết bởi ngôn ngữ lập trình Python, và có khả năng để xác định hơn 20 loại WAF khác nhau. Ngoài xác định giá trị cookie và http response, wafw00f còn sử dụng một vài kỹ thuật khác để xác định WAF như Drop (Sử dụng gói tin như FIN hoặc RST và tìm kếm câu trả lời nhận được), Sever cloaking (thay đổi URL và các phương pháp khác nhau như HTTP respond re-writing), Pre-Built Rules.

Tải wafw00f tại đây.

Việc sử dụng wafw00f rất đơn giản, bạn chỉ cần dùng lệnh wafw00f + url




 

Tin liên quan