Worm probes

David Ulevitch davidu at everydns.net
Tue Sep 18 17:54:52 UTC 2001


Hello Joseph,

Tuesday, September 18, 2001, 11:51:43 AM, you wrote:

JM> Yes. We are seeing it here bigtime.  Does anyone have any apache hacks
JM> to lessen the impact?  One idea:  Once a probe is sent, the prober's
JM> IP# is stored in a hash (perhaps in shared memory or a mmap'd file
JM> that all children can share) and new connections from that IP are no
JM> longer accepted.

Here's a possibility but I need help with one aspect:

A) create a rule in your apache httpd.conf like this:

<Location /scripts/root.exe>
    Deny from all
    ErrorDocument 404 http://www.everydns.net/blockip.php
</Location>

B) create blockip.php (or use perl or whatever[read: python])
<?
$iptables = '/usr/local/sbin/iptables';
$ip = $REMOTE_ADDR;
$blockline = $iptables." -A INPUT -s ".$ip." -p all -j DROP;";
system($blockline);
?>

C) the caveat here is that you need to give the webuser (nobody)
access to iptables.  This can be done in sudo like this:
nobody    ALL=NOBODY: /usr/local/sbin/iptables

The MAJOR problem is that you have now given your entire web site
access to iptables.  If you have a machine which has no "users" then
this may be okay for you however for most of us it is not.  Do any of
you have a way to call a perl script directly from the httpd.conf
entry and perhaps pass the REMOTE_ADDR to it?  I know there's a way
and I'll look for it, but in the meantime -- any ideas?


Thanks,
 David Ulevitch                            mailto:davidu at everydns.net





More information about the NANOG mailing list