36 điểm bởi baeba 2025-04-30 | 29 bình luận | Chia sẻ qua WhatsApp

Mở đầu

  • Phần lớn lưu lượng Internet là bot, và một phần trong số đó có mục đích độc hại (spam, hack, v.v.).
  • Tác giả từng bị bot khiến máy chủ WordPress nhiễm mã độc hoặc bị loại khỏi kết quả tìm kiếm của Google.
  • Để ngăn chặn điều này, tác giả bắt đầu sử dụng Zip Bomb.

Nội dung chính

  • Zip Bomb là gì?

    • Là tệp nén nhỏ nhưng khi giải nén sẽ mở rộng thành dung lượng rất lớn.
    • Tệp nén 1MB có thể nở thành 1GB, còn 10MB thành 10GB, làm tê liệt máy chủ.
  • Chức năng gzip hiện có

    • Trên web, gzip được dùng để nén nhằm tăng hiệu quả truyền tải.
    • Hầu hết bot cũng hỗ trợ nén gzip.
  • Cách ứng phó bằng Zip Bomb

    • Khi bị đánh giá là bot độc hại, máy chủ sẽ phản hồi bằng tệp Zip Bomb được nén gzip cùng với 200 OK.
    • Trong lúc mở tệp này, bot có thể bị sập hoặc treo trên máy chủ của chính nó.
    • Thông thường dùng loại 1MB (nở thành 1GB) hoặc 10MB (nở thành 10GB).
  • Cách tạo Zip Bomb

    dd if=/dev/zero bs=1G count=10 | gzip -c > 10GB.gz  
    
    • Tạo 10GB dữ liệu byte 0 bằng /dev/zero, sau đó nén lại bằng gzip.
    • Kết quả là một zip bomb có kích thước khoảng 10MB.
  • Ví dụ áp dụng trên máy chủ

    • Nếu middleware phát hiện IP trong danh sách đen hoặc mẫu hành vi độc hại, nó sẽ gửi Zip Bomb.
    if (ipIsBlackListed() || isMalicious()) {  
        header("Content-Encoding: deflate, gzip");  
        header("Content-Length: "+ filesize(ZIP_BOMB_FILE_10G));  
        readfile(ZIP_BOMB_FILE_10G);  
        exit;  
    }  
    

Kết luận

  • Zip Bomb không phải là biện pháp phòng thủ hoàn hảo.
    • Bot tinh vi có thể phát hiện và vượt qua nó.
  • Tuy nhiên, với các bot cấp thấp thu thập dữ liệu web một cách bừa bãi, đây là một biện pháp phòng thủ hiệu quả.
  • Dù có tiêu tốn một phần tài nguyên máy chủ, nó vẫn đủ đáng giá vì mục tiêu bảo mật.

29 bình luận

 
halfdogs 2025-05-02

Tôi nghĩ đây là một cách đáng thử nếu bạn không có phương án nào hiệu quả để chặn các bot tạo ra lưu lượng spam đến máy chủ của mình.

 
ng0301 2025-04-30

Đọc khá vui, giống như một bài viết về việc tặng bom kim tuyến cho kẻ trộm hàng giao tận nơi vậy :)

 
roxie 2025-05-04

Video đó vui mà. Y hệt như thế luôn haha

 
kandk 2025-05-01

Bài viết trên internet không phải là bưu kiện thuộc sở hữu của ai đó
Nếu là tài sản riêng không được công khai thì hẳn họ đã thêm thủ tục xác thực rồi
Có thể xem nó giống như việc đặt một tờ rơi ngoài đường rồi bôi chất kịch độc lên đó vậy

 
jeremykim 2025-05-03

Đây là một khái niệm khác với việc dán các tờ rơi bị tẩm độc với mục đích xấu.

 
skrevolve 2025-04-30

Về mặt đạo đức thì đây không phải là cách hay. Và cũng không phải là giải pháp gốc rễ.

 
jisang 2025-05-02

Đây là lần đầu tôi gặp kiểu này nên tôi muốn hỏi giải pháp căn bản là gì!!

 
[Bình luận này đã bị ẩn.]
 
kandk 2025-05-01

Tôi đồng ý

 
cosine20 2025-05-01

Bot độc hại thì có phải là theo cách có đạo đức à? lol

 
kandk 2025-05-01

Bot độc hại thực sự thì không thể bắt bằng cách này đâu.
Bomb gzip cũng không hiệu quả,
cứ xem như có ai đó không biết gì viết một bài đùa về bom cho vui thôi.

 
salsa 2025-04-30

Đúng là kiểu người như thế này làm cho việc được công nhận là phòng vệ chính đáng càng khó hơn nhỉ haha...

 
jk34011 2025-04-30

Tại sao đây lại không phải là một cách làm đúng đắn về mặt đạo đức? Tôi tò mò.

 
roqkfwkdlqslek 2025-04-30

Bài viết thú vị thật! Đây là một cách mà tôi chưa từng nghĩ tới, cảm ơn bạn đã chia sẻ!

 
crawler 2025-04-30

Mục đích của việc đăng bài như thế này là gì nhỉ?
Tôi nghĩ trên thực tế gần như không có khả năng các công ty đang chạy crawler đọc bài này rồi loại trừ ra.
Vậy bài viết này được viết hướng tới những độc giả nào?
Là một bài giới thiệu để cho những người cũng đang vận hành blog biết rằng có cách như thế này,
hay là một kiểu câu tương tác rằng blog của tôi bảo mật mạnh thế này đấy, nếu làm được thì cứ thử crawl xem?
Tôi thật sự rất tò mò không biết đăng bài này lên thì sẽ nhận được điều gì

 
[Bình luận này đã bị ẩn.]
 
yeorinhieut 2025-04-30

Chẳng phải chỉ là có những cách như thế này thôi sao..

 
dooboo 2025-04-30

Chỉ là blog cá nhân thôi, chẳng lẽ không được viết gì cũng được sao? 🤔

 
crawler 2025-04-30

Tất nhiên vì đó không phải là nơi công khai nên cũng có thể chỉ là bài đăng được viết ra mà không suy nghĩ gì nhiều.
Giống như trong cộng đồng, người ta cũng có thể để lại bình luận mà chẳng suy nghĩ gì nhiều.
Tôi không thể chặn hoàn toàn crawler, nên tốt nhất là ngay từ đầu đừng nhận bất kỳ nỗ lực truy cập nào, nhưng tôi tò mò về ý đồ muốn câu kéo sự chú ý đó.

 
j2sus91 2025-04-30

Vậy tức là nếu phán đoán bot dựa trên IP thì cũng sẽ ném bom vào luôn đúng không haha
Cảm nhận được sự phẫn nộ từ tác giả. haha

 
kandk 2025-04-30

Ý là sẽ tặng một quả bom cho những yêu cầu mà agent tự nhận là bot.. Quá ác ý rồi. Dù sao thì agent cũng rất dễ che giấu. Nếu là bot thực sự có ý đồ xấu thì sẽ không để lộ ác ý.

 
qyurila 2025-04-30

Gần đây thỉnh thoảng có thể thấy các trường hợp bị thiệt hại do lưu lượng truy cập quá mức từ các dịch vụ tích hợp với LLM, nên về thực chất cũng có thể xem đây là một biện pháp đối phó cho kiểu tình huống đó. Ví dụ, nếu nhìn vào tính năng tìm kiếm web của ChatGPT thì với đặc tính của nhóm người dùng này, khả năng phát sinh lưu lượng truy cập quá mức theo kiểu “không có ác ý” là khá lớn, và tôi nghe nói những trường hợp này có thể dễ dàng lọc ra bằng cách đối sánh agent đơn giản. Nếu đó thật sự là chủ đích thì rốt cuộc chỉ là con đường làm hao tốn chi phí máy chủ của OpenAI (và cả danh tiếng?) một cách oan uổng mà thôi..

 
kandk 2025-05-01

Vậy nên đây là một bài viết vô nghĩa.

 
galadbran 2025-05-01

OpenAI dù sao cũng là một công ty đủ lớn để có thể giữ mức lịch sự đó rồi.
Và có lẽ việc người dùng tự mình nhấp vào kết quả tìm kiếm thì khó tạo ra lưu lượng đến mức đáng ngại, chẳng phải vấn đề là crawler hoạt động quá mức sao?

 
doolayer 2025-04-30

Tôi đồng ý rằng dù là User-Agent như bạn nói hay cơ chế phát hiện dựa trên IP được nhắc trong bài gốc, vì thông tin nhận dạng đều có thể bị ngụy trang nên rất khó khẳng định là ác ý hay không. Có lẽ bot thực sự độc hại sẽ tiếp cận tinh vi hơn nhiều.
Theo tôi, thay vì kiểu tấn công này, có lẽ một hướng "nudge" thực tế hơn là cung cấp API thu thập dữ liệu có giới hạn tải, để vẫn cho phép truy cập tự động hợp pháp nhưng bảo vệ được tài nguyên máy chủ. haha

 
kandk 2025-05-01

Đã có cái gọi là bots.txt mà từ rất lâu rồi chúng ta đã đồng thuận mà..

 
twiddlingguidable 2025-05-02

Đây là một bình luận không liên quan đến bài viết này, nhưng có vẻ gần đây số người dùng để lại bình luận ác ý trên hada mà tôi thường theo dõi đã tăng lên rõ rệt. Có lẽ bầu không khí đã khác đi khá nhiều so với thời còn không có bình luận hoặc chỉ có rất ít bình luận.

Cá nhân tôi nghĩ sẽ thế nào nếu có tính năng chặn, hoặc tính năng làm mờ bình luận khi nhận được nhiều lượt báo cáo.

 
roxie 2025-05-04

Có vẻ như những người dùng nhận được nhiều lượt đề xuất sẽ được trao những tính năng như vậy.

 
chcv0313 2025-05-03

2222222222222222