Mon PC fait office de routeur Tor, l'ip est publique et je pense qu'il s'agit de
tentatives pour trouver des failles. C'est pourquoij'ai mis en place une règle
fail2ban pour bloquer ces IPs ( sur le fichier error.log :
failregex = [[]client <HOST>[]] (Invalid URI in request|request failed) )
Mais cela n'empêche pas d'autres IPs de reprendre les attaques, et mes logs se
retrouvent remplis de ce genre de requêtes. J'aimerais savoir s'il existe des
moyens pour filtrer ces requêtes en amont plutôt que de mettre en place une
solution d'après-coup.
Je pense soit à un petit script qui écouterait sur le port http et redirigerait
la requête vers apache si celle-ci est valide ( et la bloquerait le cas
contraire ), ou alors un module apache qui pourrait faire ce boulot.
Est-ce que vous connaissez des solutions qui pourrait répondre à ce genre de
problèmes ? ( Je n'ai pas envie de faire une règle iptable sur toute une zone
géographique..)
Est-ce que vous connaissez des solutions qui pourrait répondre à ce genre de problèmes ? ( Je n'ai pas envie de faire une règle iptable sur toute une zone géographique..)
iptables reste pertinent dans ce cas, si bien utilisé.
Dans ton cas particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce que tu vois dans tes logs. Je suggère iptables avec le module "string". En revanche tu devras te documenter un peu sur le type de paquets que tu reçois, éventuellement en faisant une petite analyse avec wireshark ou tcpdump.
Est-ce que vous connaissez des solutions qui pourrait répondre à ce genre de
problèmes ? ( Je n'ai pas envie de faire une règle iptable sur toute une zone
géographique..)
iptables reste pertinent dans ce cas, si bien utilisé.
Dans ton cas particulier tu veux bloquer tous les paquets IPs qui
ressemblent à ce que tu vois dans tes logs.
Je suggère iptables avec le module "string".
En revanche tu devras te documenter un peu sur le type de paquets que tu
reçois, éventuellement en faisant une petite analyse avec wireshark ou
tcpdump.
Est-ce que vous connaissez des solutions qui pourrait répondre à ce genre de problèmes ? ( Je n'ai pas envie de faire une règle iptable sur toute une zone géographique..)
iptables reste pertinent dans ce cas, si bien utilisé.
Dans ton cas particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce que tu vois dans tes logs. Je suggère iptables avec le module "string". En revanche tu devras te documenter un peu sur le type de paquets que tu reçois, éventuellement en faisant une petite analyse avec wireshark ou tcpdump.
Séb
Le Tue, 08 Apr 2008 21:44:06 +0200, Samuel Colin a écrit:
iptables reste pertinent dans ce cas, si bien utilisé. Dans ton cas particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce que tu vois dans tes logs. Je suggère iptables avec le module "string".
Merci je ne connaissais pas ce module.
En revanche tu devras te documenter un peu sur le type de paquets que tu reçois, éventuellement en faisant une petite analyse avec wireshark ou tcpdump.
Les xYY correspondent à des code héxa de caractères non affichables par apache
Je pense qu'il s'agit d'attaques binaires de ce style-ci : http://www.milw0rm.com/exploits/3996
Où alors c'est un encodage que le serveur ne comprend pas..
Voici un petit code iptable qui permet de réduire 70% des attaques dans mon cas ( fail2ban se chargera du reste... )
iptables -A INPUT -p tcp --dport 80 -j FILTER_HTTP iptables -A INPUT -p tcp --dport 443 -j FILTER_HTTP
iptables -A FILTER_HTTP -m string --hex-string "13" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "ff" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "c9" --algo kmp -j DROP iptables -A FILTER_HTTP -p tcp -j ACCEPT
( Je crée une nouvelle table pour éviter d'avoir à appliquer le module à l'ensemble des paquets entrants : je pense que cela doit demander plus de ressources au noyau d'attendre que le paquet soit composé pour ensuite faire une recherche de chaîne.. )
En espérant que ça soit utile à d'autres :)
Le Tue, 08 Apr 2008 21:44:06 +0200, Samuel Colin a écrit:
iptables reste pertinent dans ce cas, si bien utilisé. Dans ton cas
particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce
que tu vois dans tes logs. Je suggère iptables avec le module "string".
Merci je ne connaissais pas ce module.
En revanche tu devras te documenter un peu sur le type de paquets que tu
reçois, éventuellement en faisant une petite analyse avec wireshark ou
tcpdump.
Les xYY correspondent à des code héxa de caractères non affichables par
apache
Je pense qu'il s'agit d'attaques binaires de ce style-ci :
http://www.milw0rm.com/exploits/3996
Où alors c'est un encodage que le serveur ne comprend pas..
Voici un petit code iptable qui permet de réduire 70% des attaques dans mon
cas ( fail2ban se chargera du reste... )
iptables -A INPUT -p tcp --dport 80 -j FILTER_HTTP
iptables -A INPUT -p tcp --dport 443 -j FILTER_HTTP
iptables -A FILTER_HTTP -m string --hex-string "13"
--algo kmp -j DROP
iptables -A FILTER_HTTP -m string --hex-string "ff"
--algo kmp -j DROP
iptables -A FILTER_HTTP -m string --hex-string "c9"
--algo kmp -j DROP
iptables -A FILTER_HTTP -p tcp -j ACCEPT
( Je crée une nouvelle table pour éviter d'avoir à appliquer le module à
l'ensemble des paquets entrants : je pense que cela doit demander plus de
ressources au noyau d'attendre que le paquet soit composé pour ensuite faire
une recherche de chaîne.. )
Le Tue, 08 Apr 2008 21:44:06 +0200, Samuel Colin a écrit:
iptables reste pertinent dans ce cas, si bien utilisé. Dans ton cas particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce que tu vois dans tes logs. Je suggère iptables avec le module "string".
Merci je ne connaissais pas ce module.
En revanche tu devras te documenter un peu sur le type de paquets que tu reçois, éventuellement en faisant une petite analyse avec wireshark ou tcpdump.
Les xYY correspondent à des code héxa de caractères non affichables par apache
Je pense qu'il s'agit d'attaques binaires de ce style-ci : http://www.milw0rm.com/exploits/3996
Où alors c'est un encodage que le serveur ne comprend pas..
Voici un petit code iptable qui permet de réduire 70% des attaques dans mon cas ( fail2ban se chargera du reste... )
iptables -A INPUT -p tcp --dport 80 -j FILTER_HTTP iptables -A INPUT -p tcp --dport 443 -j FILTER_HTTP
iptables -A FILTER_HTTP -m string --hex-string "13" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "ff" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "c9" --algo kmp -j DROP iptables -A FILTER_HTTP -p tcp -j ACCEPT
( Je crée une nouvelle table pour éviter d'avoir à appliquer le module à l'ensemble des paquets entrants : je pense que cela doit demander plus de ressources au noyau d'attendre que le paquet soit composé pour ensuite faire une recherche de chaîne.. )
En espérant que ça soit utile à d'autres :)
Séb
Le Tue, 08 Apr 2008 21:44:06 +0200, Samuel Colin a écrit:
iptables reste pertinent dans ce cas, si bien utilisé. Dans ton cas particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce que tu vois dans tes logs. Je suggère iptables avec le module "string".
Merci je ne connaissais pas ce module.
En revanche tu devras te documenter un peu sur le type de paquets que tu reçois, éventuellement en faisant une petite analyse avec wireshark ou tcpdump.
Les xYY correspondent à des code héxa de caractères non affichables par apache
Je pense qu'il s'agit d'attaques binaires de ce style-ci : http://www.milw0rm.com/exploits/3996
Où alors c'est un encodage que le serveur ne comprend pas..
Voici un petit code iptable qui permet de réduire 70% des attaques dans mon cas ( fail2ban se chargera du reste... )
iptables -A INPUT -p tcp --dport 80 -j FILTER_HTTP iptables -A INPUT -p tcp --dport 443 -j FILTER_HTTP
iptables -A FILTER_HTTP -m string --hex-string "13" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "ff" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "c9" --algo kmp -j DROP iptables -A FILTER_HTTP -p tcp -j ACCEPT
( Je crée une nouvelle table pour éviter d'avoir à appliquer le module à l'ensemble des paquets entrants : je pense que cela doit demander plus de ressources au noyau d'attendre que le paquet soit composé pour ensuite faire une recherche de chaîne.. )
En espérant que ça soit utile à d'autres :)
Le Tue, 08 Apr 2008 21:44:06 +0200, Samuel Colin a écrit:
iptables reste pertinent dans ce cas, si bien utilisé. Dans ton cas
particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce
que tu vois dans tes logs. Je suggère iptables avec le module "string".
Merci je ne connaissais pas ce module.
En revanche tu devras te documenter un peu sur le type de paquets que tu
reçois, éventuellement en faisant une petite analyse avec wireshark ou
tcpdump.
Les xYY correspondent à des code héxa de caractères non affichables par
apache
Je pense qu'il s'agit d'attaques binaires de ce style-ci :
http://www.milw0rm.com/exploits/3996
Où alors c'est un encodage que le serveur ne comprend pas..
Voici un petit code iptable qui permet de réduire 70% des attaques dans
mon cas ( fail2ban se chargera du reste... )
iptables -A INPUT -p tcp --dport 80 -j FILTER_HTTP
iptables -A INPUT -p tcp --dport 443 -j FILTER_HTTP
iptables -A FILTER_HTTP -m string --hex-string "13"
--algo kmp -j DROP
iptables -A FILTER_HTTP -m string --hex-string "ff"
--algo kmp -j DROP
iptables -A FILTER_HTTP -m string --hex-string "c9"
--algo kmp -j DROP
iptables -A FILTER_HTTP -p tcp -j ACCEPT
( Je crée une nouvelle table pour éviter d'avoir à appliquer le module à
l'ensemble des paquets entrants : je pense que cela doit demander plus de
ressources au noyau d'attendre que le paquet soit composé pour ensuite
faire une recherche de chaîne.. )
Le Tue, 08 Apr 2008 21:44:06 +0200, Samuel Colin a écrit:
iptables reste pertinent dans ce cas, si bien utilisé. Dans ton cas particulier tu veux bloquer tous les paquets IPs qui ressemblent à ce que tu vois dans tes logs. Je suggère iptables avec le module "string".
Merci je ne connaissais pas ce module.
En revanche tu devras te documenter un peu sur le type de paquets que tu reçois, éventuellement en faisant une petite analyse avec wireshark ou tcpdump.
Les xYY correspondent à des code héxa de caractères non affichables par apache
Je pense qu'il s'agit d'attaques binaires de ce style-ci : http://www.milw0rm.com/exploits/3996
Où alors c'est un encodage que le serveur ne comprend pas..
Voici un petit code iptable qui permet de réduire 70% des attaques dans mon cas ( fail2ban se chargera du reste... )
iptables -A INPUT -p tcp --dport 80 -j FILTER_HTTP iptables -A INPUT -p tcp --dport 443 -j FILTER_HTTP
iptables -A FILTER_HTTP -m string --hex-string "13" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "ff" --algo kmp -j DROP iptables -A FILTER_HTTP -m string --hex-string "c9" --algo kmp -j DROP iptables -A FILTER_HTTP -p tcp -j ACCEPT
( Je crée une nouvelle table pour éviter d'avoir à appliquer le module à l'ensemble des paquets entrants : je pense que cela doit demander plus de ressources au noyau d'attendre que le paquet soit composé pour ensuite faire une recherche de chaîne.. )