PDA

Bekijk Volledige Versie : IP Block



Emiel van Lent
25/01/03, 21:45
Beste Ng,

Ik zit met een probleem. Ik ben geblocked op de site van cu2.nl, wegens spam
ofz. Nou weet ik nergens van. Contact opgenomen met cu2 en ze willen me niet
deblokkeren. Nou kan ik wel via een proxy gaan surfen, maar dat doe ik
liever niet. Is hier misschien een andere manier voor om de beveiliging te
omzeilen.

Ook zou ik willen weten hoe ik deze functie ook op mijn site kan inbouwen,
zodat ik ook mensen op hun ip kan blokkeren. Is dit een script ofz. Graag
iets meer uitleg.

Alvast bedankt,

Emiel van Lent

Rene Pijlman
25/01/03, 22:05
Emiel van Lent:
>Ook zou ik willen weten hoe ik deze functie ook op mijn site
>kan inbouwen, zodat ik ook mensen op hun ip kan blokkeren.

Dat kun je regelen op de webserver, met een firewall of de
configuratie van de webserver.

>Graag iets meer uitleg.

Graag iets meer informatie over de web server.

--
René Pijlman

Wat wil jij leren? http://www.leren.nl

Richard Rasker
25/01/03, 22:05
Op 1/25/03, 8:41:22 PM, schreef "Emiel van Lent" <evanlent@hotmail.com> =

over het thema IP Block:

> Beste Ng,

> Ik zit met een probleem. Ik ben geblocked op de site van cu2.nl, wegen=
s=20
spam
> ofz. Nou weet ik nergens van. Contact opgenomen met cu2 en ze willen m=
e=20
niet
> deblokkeren. Nou kan ik wel via een proxy gaan surfen, maar dat doe ik=

> liever niet. Is hier misschien een andere manier voor om de beveiligin=
g=20
te
> omzeilen.

Moeilijk, want ze filteren waarschijnlijk op IP-adres. Nu kun je het=20
IP-adres in de packets die je verstuurt wel veranderen (IP-spoofing),=20
maar dan zullen de packets die de server terugstuurt niet meer bij jou=20
aankomen.

> Ook zou ik willen weten hoe ik deze functie ook op mijn site kan=20
inbouwen,
> zodat ik ook mensen op hun ip kan blokkeren. Is dit een script ofz. Gr=
aag
> iets meer uitleg.

Als je een iptables-firewall draait, kun je per geblokkeerd IP-adres de =

volgende regel toevoegen aan het firewall-script:

/sbin/iptables -A INPUT -i eth0 -s xxx.xxx.xxx.xxx -j block

Hierbij staat xxx.xxx.xxx.xxx voor het te blokkeren IP-adres. Let op da=
t=20
deze regel voorafgaat aan alle regels die hoe dan ook toegang verlenen.

Omdat ik nogal veel last had van Code Red- en Nimda-scans op mijn=20
webserver (tot vele honderden scans per dag van dezelfde hosts, zodat de=
=20
logbestanden compleet uit hun voegen barstten), heb ik een scriptje=20
gemaakt dat deze hosts automatisch kan herkennen en blokkeren. Dit scrip=
t=20
kan heel gemakkelijk worden aangepast om andere dingen te herkennen. Ju =

kunt het bijvoorbeeld automatisch een paar keer per dag laten uitvoeren =

via cron.

Dit is het script (blockcheck):


#!/bin/bash
#
# blockcheck v. 1.0
# 08-01-2003
# Auteur: R.E.Rasker - rasker@linetec.nl
# http://www.linetec.nl/
#
# Dit script mag vrij gekopieerd, aangepast en verspreid worden
# onder de voorwaarden van de GNU General Public License,
# zoals gepubliceerd op http://www.gnu.org/licenses/gpl.html.
#
# Opmerkingen, vragen en suggesties kunt u sturen naar
# rasker@linetec.nl
#
# blockcheck kan automatisch grote vervuilers van bijvoorbeeld
# webserver-logbestanden identificeren, in een blocklist opslaan
# en via een iptables-firewall blokkeren. In de blocklist wordt
# tevens de datum opgeslagen waarop een host is toegevoegd, zodat
# deze na een bepaalde expire-tijd ook weer automatisch uit de
# blocklist verwijderd kan worden.
#
# Het firewall-script zelf moet de volgende code bevatten om de
# blocklist automatisch te verwerken; deze code moet natuurlijk
# voorafgaan aan regels die toegang verlenen:
#
# for i in `grep -v "^#" /usr/local/etc/blocklist.db | cut -d : -f 1`; d=
o
# /sbin/iptables -A INPUT -i eth0 -s $i -j block
# done
#
#
# Variabelen en vaste waarden:
# ERRMIN geeft aan hoe vaak een bepaald verdacht IP-adres minimaal
# in het error-log moet voorkomen om automatisch geblokkeerd te worden.
# EXPIRE geeft aan na hoeveel tijd een IP-adres weer toegang krijgt
# (de honderdtallen geven de maanden aan).
# ERRLOG geeft de locatie aan van het Apache error-log.
# BLOCKLIST geeft de locatie aan van de blocklist; let op dat deze
# locatie ook in het firewall-script wordt gebruikt (zie boven).
# FIREWALL geeft de locatie aan van het firewall-script.
# De variabele FIRESTART geeft aan of de firewall uiteindelijk
# opnieuw gestart moet worden.

ERRMIN=3D10
EXPIRE=3D100
ERRLOG=3D/var/log/httpd/error_log
BLOCKLIST=3D/usr/local/etc/blocklist.db
FIREWALL=3D/usr/local/bin/init_firewall
FIRESTART=3Dfalse

#
# Allereerst wordt de huidige datum bepaald.
#

DATENOW=3D`date +%y%m%d`

#
# Met de volgende opdracht wordt gezocht naar hosts die pogen requests
# uit te voeren voor Windows-systeembestanden (zoals bij Nimda) of
# buffer-overflows (zoals bij CodeRed).
# De genoemde worms zijn de grootste logvervuilers:
#

for i in `grep "winnt.*exe\|NNNNNNNNNNN" $ERRLOG | sed -e 's/^.*\[client=
=20
//g' -e 's/\].*$//g' | sort -u`; do

#
# Als een host al in de blocklist voorkomt, moet dit gesignaleerd worden=
:
#
=20
MATCH=3Dfalse
for j in `grep -v "^#" $BLOCKLIST | cut -d : -f 1`; do
if [ $i =3D $j ]; then
MATCH=3Dtrue
fi
done
=20
#
# Als een host niet in de blocklist voorkomt, kijk dan of deze minstens =

het
# opgegeven aantal keren in ERRLOG voorkomt; zo ja, voeg de host dan toe=

# aan de blocklist, samen met de datum, en signaleer dat de firewall=20
opnieuw
# gestart moet worden:
#
=20
if [ $MATCH =3D false ]; then
if [ `grep -c $i $ERRLOG` -gt $ERRMIN ]; then
echo $i":"$DATENOW >> $BLOCKLIST
FIRESTART=3Dtrue
fi
fi
done
=20
#
# Voor de automatische expire van hosts in de blocklist wordt alleen=20
gekeken
# naar de datum. Zodra een expired host wordt gevonden, wordt dit=20
gesignaleerd
# om de firewall te kunnen aanpassen. Hosts die niet expired zijn, komen=
=20
in een
# tijdelijk bestand terecht, dat na de for-lus BLOCKLIST vervangt.
# Met de eerste grep-opdracht worden eventuele commentaarregels behouden=
..
#
=20
grep "#" $BLOCKLIST > $BLOCKLIST.tmp
for HOST in `grep -v "^#" $BLOCKLIST`; do
BLOCKDATE=3D`echo $HOST | cut -d : -f 2`
if [ `expr $DATENOW - $BLOCKDATE` -gt $EXPIRE ]; then
FIRESTART=3Dtrue
else
echo $HOST >> $BLOCKLIST.tmp
fi
done
mv $BLOCKLIST.tmp $BLOCKLIST
=20
#
# Als hosts aan BLOCKLIST zijn toegevoegd dan wel uit BLOCKLIST zijn=20
verwijderd,
# wordt de firewall opnieuw gestart:
#
=20
if $FIRESTART =3D true; then
$FIREWALL
fi

Emiel van Lent
25/01/03, 22:55
't is niet op een eigen server, het is op de chello server. Het hoeft niet
zo heel proffesioneel te zijn, als het maar goed werkt. Ik had het volgende
javascriptje gevonden maar dat werkt ook niet echt:

<script>
//this js uses server side coding "ssi" so
//this documents name must end in .shtml

// www.kdcgrohl.com

var ip = '<!--#echo var="REMOTE_ADDR"-->';

function banned(){

//if you wish to change the alert message, do so below.
alert("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Attention!!!!!! !!!!!!!!!!!!!!!!!!!
!!!!!!!!!!\nYour ip address \("+ip+"\) has been banned!");
history.go(-1);
window.location.replace("http://www.w3c.org")
}

function ban(){

//add as many ip's below as you wish.
if (ip == "x.x.x.x" || ip == "x.x.x.x") {
banned();
}

//add the first three sections to ban the range.
if (ip.indexOf("x.x.x")!= -1){
banned();
}
}
ban();
</script>


Emiel van Lent

Erick T. Barkhuis
25/01/03, 23:05
Richard Rasker [on Sat, 25 Jan 2003 19:58:28 GMT] wrote:

> ERRMIN=3D10
> EXPIRE=3D100
> ERRLOG=3D/var/log/httpd/error_log
> BLOCKLIST=3D/usr/local/etc/blocklist.db
> FIREWALL=3D/usr/local/bin/init_firewall
> FIRESTART=3Dfalse

Ik ben even los. Wat doet die 3D daar telkens tussen?

--
Erick T. Barkhuis RI
WebWax at http://www.webwax.nl

"E-commerce: zinloos besteld."

Maarten Wierda
25/01/03, 23:15
"Erick T. Barkhuis" wrote:

> > ERRMIN=3D10
> > EXPIRE=3D100
> > ERRLOG=3D/var/log/httpd/error_log
> > BLOCKLIST=3D/usr/local/etc/blocklist.db
> > FIREWALL=3D/usr/local/bin/init_firewall
> > FIRESTART=3Dfalse
>
> Ik ben even los. Wat doet die 3D daar telkens tussen?

Heeft je newsreader dat er tusse gepropt?



ERRMIN=10
EXPIRE=100
ERRLOG=/var/log/httpd/error_log
BLOCKLIST=/usr/local/etc/blocklist.db
FIREWALL=/usr/local/bin/init_firewall
FIRESTART=false


--
Cheers, Maarten Wierda
cp: Sham 69 - Angels With Dirty Faces

Richard Rasker
25/01/03, 23:15
Op 1/25/03, 9:54:29 PM, schreef Erick T. Barkhuis <spamblok@webwax.nl> o=
ver=20
het thema Re: IP Block:

> Richard Rasker [on Sat, 25 Jan 2003 19:58:28 GMT] wrote:

> > ERRMIN=3D3D10
> > EXPIRE=3D3D100
> > ERRLOG=3D3D/var/log/httpd/error_log
> > BLOCKLIST=3D3D/usr/local/etc/blocklist.db
> > FIREWALL=3D3D/usr/local/bin/init_firewall
> > FIRESTART=3D3Dfalse

> Ik ben even los. Wat doet die 3D daar telkens tussen?

> --
> Erick T. Barkhuis RI
> WebWax at http://www.webwax.nl

> "E-commerce: zinloos besteld."

Die horen er niet te staan, maar lijken veroorzaakt te worden door de=20
combinatie van mijn newsclient (StarOffice 5.2) en de jouwe. Met StarOff=
ice=20
geplaatste berichten geven bij sommige (Microsoft-)newsreaders wel vaker=
=20
wat rare resultaten, zoals =3D20 aan het einde van regels en het wegvall=
en=20
van > quote-tekens aan het begin van een regel. Ik kan hier helaas niet =

veel aan doen, behalve een andere newsclient te nemen - maar ik ben nog =

steeds erg gehecht aan mijn StarOffice-exemplaar, omdat ik daarin=20
spellingcontrole en allerlei handige macro's kan gebruiken... Maar=20
misschien moest ik binnenkort toch maar es overstappen op Pan of zo.

Richard Rasker

--
Linetec Translation and Technology Services

http://www.linetec.nl/

Erick T. Barkhuis
25/01/03, 23:25
Maarten Wierda [on Sat, 25 Jan 2003 22:15:58 +0100] wrote:
> "Erick T. Barkhuis" wrote:
>
> > > ERRMIN=3D10
> > > EXPIRE=3D100
> > > ERRLOG=3D/var/log/httpd/error_log
> > > BLOCKLIST=3D/usr/local/etc/blocklist.db
> > > FIREWALL=3D/usr/local/bin/init_firewall
> > > FIRESTART=3Dfalse
> >
> > Ik ben even los. Wat doet die 3D daar telkens tussen?
>
> Heeft je newsreader dat er tusse gepropt?
>
>

> ERRMIN=10
> EXPIRE=100[...]
>

Nee, dat was Richard's newsclient, zie ik nu.
Hij postte immers met in de headers:

Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

--
Erick T. Barkhuis RI
WebWax at http://www.webwax.nl

"Is die site met gedenkwaardige niwo-citaten er nog?" - Anders Reizen Piet

Ophidia
26/01/03, 00:15
"Emiel van Lent"

> 't is niet op een eigen server, het is op de chello server. Het hoeft
niet
> zo heel proffesioneel te zijn, als het maar goed werkt. Ik had het
volgende
> javascriptje gevonden maar dat werkt ook niet echt:

yeah right: als je niet over een eigen server/firewall beschikt kun je
dat ook niet ... om maar iets te zeggen: veel mensen (telenet.be bvb)
gaan via een proxy: met jouw "scriptje" zou je met 1 IP zo'n 250.000
mensen tegenhouden ...

O.

Nico Coesel
26/01/03, 13:05
Richard Rasker <rasker@linetec.nl> wrote:

>Op 1/25/03, 8:41:22 PM, schreef "Emiel van Lent" <evanlent@hotmail.com> =
>
>over het thema IP Block:
>=20
>logbestanden compleet uit hun voegen barstten), heb ik een scriptje=20
>gemaakt dat deze hosts automatisch kan herkennen en blokkeren. Dit scrip=
>t=20
>kan heel gemakkelijk worden aangepast om andere dingen te herkennen. Ju =

Aha, dus als iemand een script maakt dat een Nimda of code-red aanval
doet met telkens een ander IP adres (IP spoofing), dan kan die persoon
zo jouw server helemaal platleggen. Lekker handig... NOT!.

--
Reply to nico@nctdevpuntnl (punt=.)
Bedrijven en winkels vinden? Adresboekje.nl

Richard Rasker
26/01/03, 14:35
Op 1/26/03, 12:02:27 PM, schreef nico@puntnl.niks (Nico Coesel) over het=
=20
thema Re: IP Block:

> Richard Rasker <rasker@linetec.nl> wrote:

> >Op 1/25/03, 8:41:22 PM, schreef "Emiel van Lent" <evanlent@hotmail.co=
m>=20
over het thema IP Block:
> >
> >logbestanden compleet uit hun voegen barstten), heb ik een scriptje
> >gemaakt dat deze hosts automatisch kan herkennen en blokkeren. Dit=20
script
> >kan heel gemakkelijk worden aangepast om andere dingen te herkennen.

> Aha, dus als iemand een script maakt dat een Nimda of code-red aanval
> doet met telkens een ander IP adres (IP spoofing), dan kan die persoon=

> zo jouw server helemaal platleggen. Lekker handig... NOT!.

Inderdaad, daar heb je helemaal gelijk in - maar er zijn zat=20
gemakkelijker manieren in omloop om een specifieke server plat te leggen=
,=20
zonder dat je daar veel tegen kunt doen. Een DoS-aanval tegen een kleine=
=20
server (zoals die van mij) is bijvoorbeeld kinderlijk eenvoudig, en je=20
kunt er vrijwel niets tegen doen.

Ik heb het script geschreven voor het blokkeren van Code Red- en=20
Nimda-ge=EFnfecteerde machines die om onduidelijke redenen steeds maar w=
eer=20
dezelfde host(s) aanvallen. Bovendien moet het IP-adres van een=20
dergelijke machine een minimumaantal keren (in dit geval 10, maar je kun=
t=20
het net zo gemakkelijk op 100 of 1000 zetten) voorkomen in het error-log=
=20
voordat deze wordt geblokkeerd. Een script dat probeert vele duizenden=20
IP-adressen bij mij plat te leggen door telkens 100 scans met hetzelfde =

adres uit te voeren, bereikt in feite zijn doel al door de scans op zich=
..

Als laatste kan ik nog melden dat ik de lijst met geblokkeerde hosts=20
dagelijks even inzie. Als deze lijst ineens gigantisch zou groeien, kan =

ik altijd nog besluiten om het script gewoon uit te schakelen. Ter=20
informatie: ik zie deze lijst momenteel groeien met slechts =E9=E9n of t=
wee=20
hosts per week.

Richard Rasker

--
Linetec Translation and Technology Services

http://www.linetec.nl/

Andre
26/01/03, 23:15
"Emiel van Lent" <evanlent@hotmail.com> schreef in bericht
news:lJCY9.2866$t91.70726@amstwist00...
> 't is niet op een eigen server, het is op de chello server. Het hoeft niet
> zo heel proffesioneel te zijn, als het maar goed werkt. Ik had het
volgende
> javascriptje gevonden maar dat werkt ook niet echt:
....
> var ip = '<!--#echo var="REMOTE_ADDR"-->';

Reden:
<!--#echo ...--> is een Server Side Include statement. Dat moet op de server
wel ingeschakeld zijn...

André

Andre
26/01/03, 23:25
"Emiel van Lent" <evanlent@hotmail.com> schreef in bericht
news:ELBY9.2857$t91.70554@amstwist00...
> Beste Ng,
>
> Ik zit met een probleem. Ik ben geblocked op de site van cu2.nl, wegens
spam
> ofz. Nou weet ik nergens van. Contact opgenomen met cu2 en ze willen me
niet
> deblokkeren. Nou kan ik wel via een proxy gaan surfen, maar dat doe ik
> liever niet. Is hier misschien een andere manier voor om de beveiliging te
> omzeilen.
>
> Ook zou ik willen weten hoe ik deze functie ook op mijn site kan inbouwen,
> zodat ik ook mensen op hun ip kan blokkeren. Is dit een script ofz. Graag
> iets meer uitleg.

Bij gebruik van Apache kan je de toegang (ook op ip-adres) regelen via
htaccess.

André

http://directory.google.com/Top/Computers/Internet/Web_Design_and_Developmen
t/Authoring/Webmaster_Resources/Hints_and_Tips/htaccess/

Yahaa
27/01/03, 20:55
Is een programma voor. Net cloak of zoiets, kweet nie zeker hoe het heet
maar het kan wel. Suc6


"Emiel van Lent" <evanlent@hotmail.com> wrote in message
news:ELBY9.2857$t91.70554@amstwist00...
> Beste Ng,
>
> Ik zit met een probleem. Ik ben geblocked op de site van cu2.nl, wegens
spam
> ofz. Nou weet ik nergens van. Contact opgenomen met cu2 en ze willen me
niet
> deblokkeren. Nou kan ik wel via een proxy gaan surfen, maar dat doe ik
> liever niet. Is hier misschien een andere manier voor om de beveiliging te
> omzeilen.
>
> Ook zou ik willen weten hoe ik deze functie ook op mijn site kan inbouwen,
> zodat ik ook mensen op hun ip kan blokkeren. Is dit een script ofz. Graag
> iets meer uitleg.
>
> Alvast bedankt,
>
> Emiel van Lent
>
>
>