it-swarm-vi.com

Tôi có thể phát hiện các cuộc tấn công ứng dụng web bằng cách xem tệp nhật ký Apache của mình không?

Thỉnh thoảng tôi nhận được các ứng dụng khách yêu cầu tôi xem tệp access_log của họ để xác định xem có cuộc tấn công web nào thành công không. Những công cụ nào hữu ích để phân biệt các cuộc tấn công?

25
Tate Hansen

Có, bạn có thể, nhật ký Apache cung cấp cho bạn thông tin về những người đã truy cập trang web của bạn bao gồm cả bot và nhện. các mẫu bạn có thể kiểm tra:

  • ai đó đã thực hiện nhiều yêu cầu trong ít hơn thứ hai hoặc khung thời gian được chấp nhận.
  • truy cập trang an toàn hoặc đăng nhập nhiều lần trong một cửa sổ một phút.
  • truy cập các trang không tồn tại bằng cách sử dụng các tham số hoặc đường dẫn truy vấn khác nhau.

Da đầu Apache http://code.google.com.vn/p/Apache-scalp/ rất giỏi làm tất cả những việc trên

15
Mohamed

mod_sec có thể phát hiện bất cứ thứ gì, bao gồm kiểm tra các yêu cầu POST.

Bạn thậm chí có thể tải lên các quy tắc id snort vào nó và chặn các yêu cầu này một cách nhanh chóng trước khi chúng tấn công các ứng dụng

5
Troy Rose

Phân tích nhật ký sẽ không bao gồm tất cả các cuộc tấn công. Ví dụ: bạn sẽ không thấy các cuộc tấn công được chuyển qua POST yêu cầu. Vì một biện pháp bảo vệ bổ sung có thể phục vụ IDS/IPS.

5
anonymous

Như Ams đã lưu ý, phân tích nhật ký sẽ không bao gồm tất cả các cuộc tấn công và bạn sẽ không thấy các tham số của POST yêu cầu. Tuy nhiên, đôi khi phân tích nhật ký cho POST yêu cầu là rất bổ ích.

Cụ thể, POST là phổ biến để gửi mã độc đến các tập lệnh backdoor. Các cửa hậu như vậy có thể được tạo ở đâu đó sâu trong các thư mục con hoặc mã backdoor có thể được chèn vào một tệp hợp pháp. Nếu trang web của bạn không thuộc quyền kiểm soát phiên bản hoặc một số kiểm soát toàn vẹn khác, có thể khó xác định vị trí các tập lệnh backlink như vậy.

Đây là mẹo:

  1. Quét nhật ký truy cập của bạn để tìm POST yêu cầu và biên dịch danh sách các tệp được yêu cầu. Trên các trang web thông thường, không nên có nhiều tệp trong số đó.
  2. Kiểm tra các tập tin cho tính toàn vẹn và hợp pháp. Đây sẽ là danh sách trắng của bạn.
  3. Bây giờ thường xuyên quét nhật ký của bạn để tìm POST yêu cầu và so sánh các tệp được yêu cầu với danh sách trắng của bạn (không cần phải nói rằng bạn nên tự động hóa quy trình này). Bất kỳ tệp mới nào cũng cần được điều tra. vào danh sách trắng. Nếu không - điều tra vấn đề.

Bằng cách này, bạn sẽ có thể phát hiện hiệu quả đáng ngờ POST yêu cầu đối với các tệp thường không chấp nhận POST yêu cầu (mã backlink được chèn) và backlink mới được tạo Nếu bạn may mắn, bạn có thể sử dụng địa chỉ IP của các yêu cầu đó để xác định điểm xâm nhập ban đầu hoặc bạn chỉ cần kiểm tra nhật ký trong khoảng thời gian đó để biết hoạt động đáng ngờ.

5
Denis

Hãy xem WebForensik

Đó là một tập lệnh dựa trên PHPIDS (được phát hành theo GPL2) để quét các logfile HTTPD của bạn để tìm các cuộc tấn công chống lại các ứng dụng web.

Các tính năng:

- supports standard log formats (common, combined)
- allows user-defined (mod_log_config syntax) formats
- automatically pipes your web logs through PHPIDS
- categorizes all incidents by type, impact, date, Host...
- generates reports in CSV, HTML (sortable table), XML
4
guy_intro

Apache-scalp có thể kiểm tra các cuộc tấn công thông qua HTTP/GET:

"Scalp! Là một công cụ phân tích nhật ký cho máy chủ web Apache nhằm tìm kiếm các vấn đề bảo mật. Ý tưởng chính là xem qua các tệp nhật ký khổng lồ và trích xuất các cuộc tấn công có thể đã được gửi qua HTTP/GET"

4
Tate Hansen

Có thể tốt hơn để quét bộ đệm cơ sở dữ liệu của bạn (và/hoặc tệp nhật ký) so với nhật ký máy chủ web của bạn, mặc dù chắc chắn sẽ tốt khi kết hợp các kỹ thuật này và ghép các dấu thời gian và ngày.

Để biết thêm thông tin, vui lòng xem cuốn sách của Kevvie Fowler trên Phân tích pháp y SQL Server .

1
atdre

Hãy thử [~ # ~] lorg [~ # ~] -> https://github.com/jensvoid/lorg . Nó có các chế độ phát hiện khác nhau (dựa trên chữ ký, dựa trên thống kê, dựa trên học tập), một số tính năng Nice như định vị địa lý, tra cứu DNSBL và phát hiện robot (= kẻ tấn công là người hay máy?).

Nó có thể đoán được sự thành công của các cuộc tấn công bằng cách tìm kiếm các ngoại lệ trong trường 'byte được gửi', mã phản hồi HTTP hoặc phát lại hoạt động của các cuộc tấn công.

Mã vẫn là tiền alpha, nhưng đang phát triển tích cực.

1
Adam Smith