this post was submitted on 28 Jan 2025
126 points (97.0% liked)

Pulse of Truth

648 readers
152 users here now

Cyber Security news and links to cyber security stories that could make you go hmmm. The content is exactly as it is consumed through RSS feeds and wont be edited (except for the occasional encoding errors).

This community is automagically fed by an instance of Dittybopper.

founded 1 year ago
MODERATORS
 

Attackers explain how an anti-spam defense became an AI weapon.

you are viewing a single comment's thread
view the rest of the comments
[–] drkt@scribe.disroot.org 18 points 2 days ago (11 children)

I can save you a lot of trouble, actually. You don't need all of this!

Just make a custom 404 page that returns 13 MBs of junk along with status code 200 and has a few dead links (404, so it just goes to itself)

There are no bots on the domain I do this on anymore. From swarming to zero in under a week.

You don't need tar pits or heuristics or anything else fancy. Just make your website so expensive to crawl that it's not worth it so they filter themselves.

[–] Snowcano@startrek.website 6 points 2 days ago (1 children)

Just make a custom 404 page that returns 13 MBs of junk along with status code 200

How would you go about doing this part? Asking for a friend who’s an idiot, totally not for me.

[–] drkt@scribe.disroot.org 7 points 2 days ago* (last edited 2 days ago) (2 children)

I use Apache2 and PHP, here's what I did:

in .htaccess you can set ErrorDocument 404 /error-hole.php https://httpd.apache.org/docs/2.4/custom-error.html

in error-hole.php,

<?php
http_response_code(200);
?>
<p>*paste a string that is 13 megabytes long*</p>

For the string, I used dd to generate 13 MBs of noise from /dev/urandom and then I converted that to base64 so it would paste into error-hole.php

You should probably hide some invisible dead links around your website as honeypots for the bots that normal users can't see.

[–] SatyrSack@feddit.org 2 points 1 day ago (2 children)

How does this affect a genuine user who experiences a 404 on your site?

[–] owl@infosec.pub 3 points 1 day ago* (last edited 1 day ago) (1 children)

I don't know a lot about this, but I would guess a normal user would like a message, that says something along the lines of "404, couldn't find what you were looking for." The status code and the links back to itself as well as the 13 MBs of noise should probably not irritate them. Hidden links should also not irritate normal users.

[–] SatyrSack@feddit.org 2 points 1 day ago (1 children)

I also "don't know a lot about this", but I do know that your browser receiving a 200 means that everything worked properly. From what I can tell, this technique is replaces any and every 404 response with 200, thus tricking the browser (and therefore the user) into thinking the site is working as expected every time they run into a missing webpage on this site.

[–] WolfLink@sh.itjust.works 3 points 1 day ago

The user doesn’t see the status code, they see what’s rendered to the screen.

[–] drkt@scribe.disroot.org 1 points 1 day ago

They will see a long string of base64 that takes a quarter of a second longer to load then a regular page. If it's important to you, you can make the base64 string invisible and add some HTML to make it appear as a normal 404 page.

[–] WolfLink@sh.itjust.works 1 points 1 day ago (1 children)

For the string, I used dd to generate 13 MBs of noise from /dev/urandom and then I converted that to base64 so it would paste into error-hole.php

That string is going to end up being 17MB assuming it’s a utf8 encoded .php file

[–] drkt@scribe.disroot.org 1 points 1 day ago

idk what to tell you.

ls -lha
-rw-rw-r-- 1 www-data www-data  14M Jan 14 23:05 error-hole.php
load more comments (9 replies)