[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Interne Webserver fuer Zugriffe ueber Proxies sperren...



On Mon, Jan 13, 2003 at 03:04:26PM +0200, Michelle Konzack wrote:
> Hallo Jens, 
> 
> Am 18:01 2003-01-11 +0100 hat Jens Benecke geschrieben:
> >
> >On Wed, Jan 08, 2003 at 11:21:53PM +0000, Michelle Konzack wrote:
> >> habe in einem Netzwerk das problem, das jemand (oder auch mehrere)
> >> mir mit den Webservern Sch... macht. Habe rund ein dutzend
> >> verschiedener requests ueberprueft und sie kommen von proxies...
> >> Kann squid erkennen, das ein http-Request von einem proxy stammt ?
> >Squid oder Apache?
> Wie meinst Du das ?  Bis jetzt habe ich nur den Router (internet -
> Intern) und den Web-Server.  Dachte das ich auf den Router squid
> aufsetze um die Kacke abzufangen... 

Willst du, daß Apache das abfängt oder daß Squid das abfängt?
Für Apache + iptables habe ich eine Lösung.
 
> Habe rund 80 bis 450 Zugriffe pro Sekunde auf den Web-Server... 
> Allerdings nicht regelmaessig. Das Ding probiert so ziehmlich alles 
> aus, was man zum hacken verwenden kann. 
 
> /scripts/root.exe 
> /scripts/login.exe 
> /cgi-bin/mail.pl
> usw... 

ah. OK, die Lösung die ich benutze habe ich angehängt.
 
> Habe so um die 8000 verschiedene Versuche auf den Apache zu kommen. 
> 
> >> Und wenn ja, wie blockt man Zuriffe, die ueber einen proxy laufen.
> >Manche(!) Squids setzen HTTP_X_FORWARDED_FOR auf die Ursprungs-IP.
> >Das kannst du mit mod_rewrite oder ähnlichem auf dem Webserver
> >abfangen.
> So was gibt es leider nicht in den Logs... 

Dann packs rein. Wo ist das Problem? Du kannst dir das Log-Format
beliebig anpassen.
 
> >> Oder kann man das irgendwie bereits mit irgendwelchen filtern auf
> >> dem Router machen ? Die Kiste wird ein AMD Duron 900 weil ich
> >> nichts kleineres mehr bekomme (ebenso gibt es keine kleinen Boards
> >> mit 6 PCI-Slots) und es stehen somit jede menge Resourcen zur
> >> verfuegung.
> >Ich bezweifle daß das was bringt. Was für einen "Sch..." machen die
> >Leute mit den Webservern eigentlich?
> Also der Webserver haengt ueber den Router am internet (eine E1 mit
> 128/512 kBit). 

Moment.

Du hast 80-450 Zugriffe auf dem Webserver PRO SEKUNDE über eine
512kBit-Leitung (über die ca. 50kb/s gehen)

Ein HTTP/1.1-Request sieht absolut minimal so aus:

	-> GET / HTTP/1.1	[16 bytes inkl. \r\n]
	-> Host: abc.de		[16 bytes inkl. \r\n\r\n]

	<- Date: Wed, 15 Jan 2003 23:28:20 GMT
	<- Server: Apache/1.3.19 (Unix)  (SuSE/Linux)
	<- Last-Modified: Tue, 12 Mar 2002 11:45:59 GMT
	<- Accept-Ranges: bytes
	<- Content-Length: 926
	<- Content-Type: text/html
	
	[215 bytes]

Typisch ist meist mehr und da ist Overhead noch gar nicht mit drin.
Damit ist die 128k-Richtung schon mal komplett ausgelastet. Was macht
die Leitung sonst noch? Nichts?

 
> Was mich interessiert ist, woher die original Anfragen kommen. 
> Die Proxy-Betreiber (in den USA) wollte mir keine Auskunf geben. 

Droh mit Klage, das hilft in den USA doch irgendwie immer.


-- 
mfg, Jens Benecke	
 
http://www.hitchhikers.de: Europas Mitfahrzentrale seit 1998
Fahren Sie zusammen, sparen Sie Geld - unkompliziert und schnell!
NEU: Jetzt mit kostengünstiger, umfassender Unfallversicherung!
--- Begin Message ---
On Mon, Jan 28, 2002 at 09:49:51AM -0000, Brian Clifton wrote:
> Dear All 
> 
> Is there a way to stop apache responding to .exe file requests
> altogether?
> 
> I am getting fed up with my error_log file being filled by nimbda and we
> don't host any .exe files!! I have been monitoring it since the summer
> and the number of nimbda type entries appears to have started to go up
> again since xmas...
> 
> Any thoughts greatly appreciated... 

Customize this and put it in your crontab, every hour or so.

---------------------------------------------------------------------------
#!/bin/sh
#
# Cure stupid system administrators.
# (c) Jens Benecke <scripts@jensbenecke.de>, 2002. 
# Distributed under the GPL v2.0. :)
#

IPT=/sbin/iptables


IPS=$(cat /home/*.{de,com,org,net}/logs/access.log 2>/dev/null | 
	egrep -i 'scripts/\.\.|root.exe|cmd.exe|default.ida' 2>/dev/null |
	cut -d " " -f1|sort|uniq)

#echo $IPS

$IPT -nL|grep -q EVIL || ( echo "No EVIL iptables chain found";exit 1 )
$IPT -F EVIL	# flush

for IP in $IPS ; do
	# DROP makes the Windows-infected box stay longer trying to
	# connect, i.e. having less time trying to infect others.
	$IPT -A EVIL -s $IP  -j DROP
done
---------------------------------------------------------------------------


 

-- 
mfg, Jens Benecke
http://www.jensbenecke.de/ - Persönliches
http://www.hitchhikers.de/ - Europas Mitfahrzentrale (car sharing agency)

Politics is like a septic tank - all the big shits float to the top.

--- End Message ---

Attachment: pgp9dxmehYE4J.pgp
Description: PGP signature


Reply to: