Request “lạ”

Tram Ho

Nếu là một web developer thì bạn cũng ít nhiều phải đụng chạm tới proxy/load balancer hay app server. Trong rất nhiều thao tác với phần này thì việc thường xuyên kiểm tra log để phát hiện ra những điều bất thường là thao tác không thể bỏ qua.

Ngữ cảnh

Một khi website/service đã public thì có nghĩa là nó đã được “phơi” ra giữa thế giới internet. Thế giới internet cũng giống thế giới con người ở khía cạnh “ở đâu cũng có người này người kia”. Nghĩa là có những request ghé thăm với mục đích trong sáng, cũng có những request mang tính thăm dò, phá hoại.

Vậy thì bạn cần phản ứng thế nào với từng loại request không có thiện ý này?

Ví dụ #1

Ví dụ #2

Ví dụ #3

Giả sử domain của bạn là https://abc.com, nhưng lại nhận được những request như sau:

Chi tiết về 3 loại log trên có ở link này

Cách khắc phục

Nếu ở ví dụ #1 và #2 có status của request là 2XX thì nghĩa là hở rồi, vá thôi.

Còn ở #3 thì bạn telnet vào host https://abc.com, thực hiện GET một external host khác. Nếu như data trả về là data của external host, thì lại hở rồi, vá thôi ?

Liên hệ bản thân

Mình từng gặp 1 case khá oái oăm liên quan đến #3 và Rails như sau:

Ở trang homepage của web, mình có cache partial như sau:

Và ngay sau khi mình deploy thì có 1 request dạng #3 đổ về, đã biến link (*) của mình thành:

thay vì

Fix bằng cách đưa absolute url về relative path ngay. Hú hồn.

Rất mong nhận được chia sẻ về nhiều dòng log “lạ” nữa từ kipaloger.

Ref:

https://wiki.apache.org/httpd/ProxyAbuse

http://www.the-art-of-web.com/system/telnet-http11/

Markdown end here Social share

Note của tác giả tóm tắt nội dung bài viết

  1. Server của bạn có thể bị thăm dò bất cứ lúc nào, bằng nhiều cách khác nhau.
  2. Việc nhận biết là server của mình có lỗ hổng hay ko thì căn cứ vào những dòng log thu thập được.
  3. Bị thăm dò không có nghĩa là server của bạn có lỗ hổng. Hãy lờ nó đi nếu như dòng log cho thấy 1 kết quả an toàn. Ngược lại, hãy fix ngay.

ITZone via kipalog

Chia sẻ bài viết ngay

Nguồn bài viết : Kipalog