Xây dựng IWAF

Một phần của tài liệu Luận văn thạc sĩ công nghệ thông tin Hệ thống tường lửa thông minh cho các ứng dụng web iwaf (Trang 67)

6. Bố cục của luận văn

5.3.Xây dựng IWAF

IWAF được xây dựng trên nền tảng mã nguồn mở. IWAF sử dụng và phát triển thêm các tính năng cho hệ thống WAF mã nguồn mở nổi tiếng là Modsecurity.

ModSecurity là một WAF mã nguồn mở được Ivan Ristic phát triển dành cho Web Server Apache, hiện nay đã hỗ trợ IIS 7.5, Nginx, Java. Ông là một người có rất nhiều kinh nghiệm trong bảo vệ Web Server Apache. Ông đã có nhiều thời gian nghiên cứu Web Application Security, Web Intrusion Detection, và Security Patterns. Trước khi chuyển sang lĩnh vực bảo mật, Ivan đã có nhiều năm làm việc như một Developer, System Architect, Technical Director trong phát triển phần mềm. Ông hiện đang là thành viên của OWASP và chuyên viên của Web Application Security Consortium (WASC).

Modsecurity là WAF có tính mở, nó không đưa ra mô hình bảo mật cụ thể nào mà phụ thuộc vào việc sử dụng của người dùng. Người dùng có thể xây dựng các module, chính sách để đưa vào modsecurity sao cho phù hợp với hệ thống web cần phải bảo vệ.

Một số chức năng chính của Modsecurity

+ Request filtering: Tất cả các request gửi đến web server đều được phân tích và lọc (filter) trước khi chúng được đưa đến các modules khác để xử lý.

+ Understanding of the HTTP protocol: Modsecurity hiểu được giao thức HTTP và có khả năng lọc dựa trên các thông tin ở HTTP Header hay có thể xem xét đến từng thông số hay cookies của các request …

+ POST payload analysis: Ngoài việc lọc dựa trên HTTP Header, modsecurity có thể dựa trên nội dung (payload) của POST requests.

+ Audit logging: Mọi requests đều có thể được ghi lại (bao gồm cả POST) để người quản trị có thể theo dõi nếu cần.

+ HTTPS filtering: modsecurity có thể phân tích HTTPS.

+ Compressed content filtering: modsecurity sẽ phân tích sau khi đã giải nén các các dữ liệu được yêu cầu.

Modsecurity cho phép chúng ta đặt chính sách (xử lý) tại một trong 05 thời điểm trong chu kỳ xử lý như sau:

Hình 5.2 Sơ đồ xử lý của modsecurity (nguồn Modsecurity Reference-Manual)

+ Phase 1-Request Header: chính sách được đặt tại đây sẽ được thực hiện ngay sau khi webserver đọc request header, lúc này phần request body vẫn chưa được đọc.

+ Phase 2-Request Body: Đây là thời điểm các thông tin chức năng chung đưa vào vào được phân tích và xem xét, các qui tắc mang tính ứng dụng hướng kết

nối thường được đặt ở đây. Ở thời điểm này, webserver đã nhận đủ các thông số của request và phần request body đã được đọc. Modsecurity hỗ trợ ba loại mã hoá request body:

Application/x-www-form-urlencoded: Dùng để truyền form dữ liệu multipart/form-data: Dùng để truyền file

Text/xml: Dùng để phân tích dữ liệu XML

Phase Response Header: Đây là thời điểm ngay sau khi phần response header được gửi trả về cho client. Chúng ta đặt rule ở đây nếu muốn giám sát quá trình sau khi phần response được gửi đi.

+ Phase 3-Response Body: Đây là thời điểm kiểm tra dữ liệu HTML gửi trả về.

+ Phase 4- logging: Là thời điểm các hoạt động ghi nhật ký được thực hiện, các chính sách đặt ở đây sẽ định rõ việc ghi nhật ký sẽ thực hiệ như thế nào.

CHƯƠNG 6: CÀI ĐẶT PHẦN MỀM, THỬ NGHIỆM, PHÂN TÍCH VÀ ĐÁNH GIÁ KẾT QUẢ

Một phần của tài liệu Luận văn thạc sĩ công nghệ thông tin Hệ thống tường lửa thông minh cho các ứng dụng web iwaf (Trang 67)