Forum Solarus-Games francophone

Autres => Informatique => Discussion démarrée par: Rhokua le 21 Avril 2006 à 23:33

Titre: Eviter de vous faire Hacker votre site!
Posté par: Rhokua le 21 Avril 2006 à 23:33
Älors je crée ce topic pour vous donner des conseils contre le Hack pour votre site:

-Alors pour commencer utilisez un mot de passe assès long(au minimum 8 caractères)et utilisez des chiffres

-Ne mettez jamais un mot de passe genre,le nom de votre ordi ou d'un ami...mettez vraiment un mot de passe compliqué

-Vous connaissez sans doute le logiciel Brutus,celui qui consiste à chercher toutes les possibilités de mots de passe jusqu'à trouver la bonne,et ben évitez de mettre un ot de passe commençant par a mais je vous conseille plutot par z!ün mot de passe du genre ziJ4$6&98%Wi devrait resister assès longtemps à Brutus!¨

-Toujours placer un index dans chaque dossier, on néglige beaucoup cette chose, mais si vous saviez ce que l'on peut faire avec ! Surtout que c'est pas grand chose alors pensez y !

-Faites attention à ceux qui essaierai de vous envoyez des scripts Fake vous demandant pour X raisons d'envoyer le pass du site (cela peut paraître bête mais ça arrive !) via l'email que vous donné sur votre site. De plus, il est conseiller d'utiliser une compte mail créé juste pour cet effet par exemple chez Yahoo.

- Ne donnez sous aucun prétexte les fichiers  sm.dat (fichier contenant les login, pass et host des serveurs FTP sous Cute FTP),  sites.ini (Idem mais pour FTPexpert).

- Ne stocker aucun fichier (txt par exemple) avec des logins, pass de vos membres par exemple, ou tout autre fichier personnel sur votre compte FTP, dans le pire des cas, placer y un .htaccess ...



Voilà avec tous ça vous avez peu de chance de vous faire Hacker votre site mais sachez qu'il existera toujours un moyen d'en venir à bout!
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: Noxneo le 21 Avril 2006 à 23:39
Je pense que ce que tu viens de poster n'est pas très utile:

1)la plupart des sites amateurs ici ont 2 visiteurs par semaine, donc ca n'intéresse personne de les pirater

2)Un VRAI cracker utilise rarement ce que tu as cité plus haut, mais plutôt des failles PHP (notamment avec include) et autres?
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: Q.I. 907 le 22 Avril 2006 à 03:17
Citation de: Lindor le 21 Avril 2006 à 23:33
-Alors pour commencer utilisez un mot de passe assès long(au minimum 8 caractères)et utilisez des chiffres
Huit caractères, minuscules+majuscules+chiffres. Celui qui veut frimer sur les forums de discussion peut ajouter des caractères spéciaux.
Un mot de passe différent par compte, ordinateur, etc. et pas de fonction de mémorisation de mots de passe (bien que tout le monde le fasse -_-), cela permettant de régulièrement les taper et de s'en souvenir mais surtout de ne pas les stocker.
Plus d'infos ici : http://www.tendancepc.net/web/webmotsdepasse.html

Citation-Ne mettez jamais un mot de passe genre,le nom de votre ordi ou d'un ami...mettez vraiment un mot de passe compliqué
Je travaille à la Hotline du FAI le plus célèbre de France (pas Wanamou c'est de la nioniotte, mais Free :D) et c'est fou le nombre de mots de passe que je vois ressemblant à des prénoms, dates de naissance, etc. <_<

Citation-Vous connaissez sans doute le logiciel Brutus,celui qui consiste à chercher toutes les possibilités de mots de passe jusqu'à trouver la bonne,et ben évitez de mettre un ot de passe commençant par a mais je vous conseille plutot par z!ün mot de passe du genre ziJ4$6&98%Wi devrait resister assès longtemps à Brutus!&#168;
(en général) N'importe quel mot de passe est introuvable sur le web, les serveurs laissant une marge de temps bien longue entre chaque tentative.
Chez Free c'est sécurisé, un compte ne peut pas être bombé, il y a un délai de blocage entre chaque tentative et un blacklistage rapide de l'IP si ça persiste (oui j'ai été formé je sais tout sur eux :p). Donc ça doit être pareil chez les autres. :)

Citation-Toujours placer un index dans chaque dossier, on néglige beaucoup cette chose, mais si vous saviez ce que l'on peut faire avec ! Surtout que c'est pas grand chose alors pensez y !
Inutile, Options -Indexes dans .htaccess en racine et c'est réglé ! :lol:

Citation-Faites attention à ceux qui essaierai de vous envoyez des scripts Fake vous demandant pour X raisons d'envoyer le pass du site (cela peut paraître bête mais ça arrive !) via l'email que vous donné sur votre site. De plus, il est conseiller d'utiliser une compte mail créé juste pour cet effet par exemple chez Yahoo.
Gné ?
Le webmaster (ou son équipe) doit être le seul à s'occuper de son site et il ne doit pas le prêter, si c'est ça que tu voulais dire.

Citation- Ne donnez sous aucun prétexte les fichiers  sm.dat (fichier contenant les login, pass et host des serveurs FTP sous Cute FTP),  sites.ini (Idem mais pour FTPexpert).
Pareil que ci-dessus.

Citation- Ne stocker aucun fichier (txt par exemple) avec des logins, pass de vos membres par exemple, ou tout autre fichier personnel sur votre compte FTP, dans le pire des cas, placer y un .htaccess ...
Celui qui accède au site par FTP sera point intimidé par le .htaccess/.htpasswd. :P
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: HCkev le 22 Avril 2006 à 23:13
Ayant de très bonnes conaissances en PHP, je me permet de donner un petit conseil (car les hack surviennent très souvent des failles d'un script) :)

Toujours protéger et/ou vérifier toutes données venant de l'extérieur, que ce soit en GET, POST, COOKIE, SESSION.... etc (Il y a bien-entendu des exeptions). Il faut toujours s'assurer que les données ne sont pas nocives :) La plupart des failles viennent de là.

Pour protéger, il y a plusieurs façon:

1- Si la donnée attendue est cencée être un nombre (pour l'ID d'une news par exemple), utilisez la fonction intval() qui transformera la variable en un nombre et sera de type INT. S'il est impossible de "transformer" la variable en nombre, ce sera le chiffre 0 qui sera utilisé :) Donc ya pas grand hack possible avec des nombres ^_^

2- S'il s'agit d'une chaîne qui doit être stockée dans une base de donnée, il est impératif d'ajouter un anti-slash (\) derrière les quotes et les anti-slash. Selon la configuration de PHP, il est possible que les données extérieurs soient protégés automatiquement, si magic_quotes_gpc est activé (Par défaut (il me semble)). Pour faciliter la tâche, j'ai deux fonctions très simples, mais très utiles:
function unprotect_gpc($str)
{
return (get_magic_quotes_gpc()) ? stripslashes($str) : $str;
}

function protect_gpc($str)
{
return (!get_magic_quotes_gpc()) ? addslashes($str) : $str;
}

unprotect_gpc() enlève la protection si magic_quotes_gpc et retourne la chaîne non-protégè, et protect_gpc() protège la chaîne si nécéssaire. :)

3- S'il s'agit d'une chaîne qui sera affichée dans la page web (bien que cette méthode soit déconseillée, l'utilisateur peut écrire n'importe quoi et déformer le site), protégez contre le HTML en utilisant htmlentities(). Pour une meilleure protection, utilisez comme deuxième argument ENT_QUOTES (sans guillemets, il s'agit d'une constante de PHP) qui remplacera aussi les single-quotes (').


Pour les vérifications, cela dépend du type de donné attendu, alors là les expressions régulières(PERL, de préférence(les fonctions qui commencent par preg_ )) seront d'une grande utilité :)

voilà  ^_^
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: mota le 23 Avril 2006 à 07:17
Utiliser de préférence les fonctions de manipulation de chaîne plutôt que les expressions régulières, ça bouffe largement moins de ressources, même si parfois c'est plus long à faire :)
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: Geomaster le 23 Avril 2006 à 09:04
Citation de: Q.I. 907 le 22 Avril 2006 à 03:17
Citation de: Lindor le 21 Avril 2006 à 23:33
-Alors pour commencer utilisez un mot de passe assès long(au minimum 8 caractères)et utilisez des chiffres
Huit caractères, minuscules+majuscules+chiffres. Celui qui veut frimer sur les forums de discussion peut ajouter des caractères spéciaux.

Absolument ridicule comme remarque. L'alternance lettres, chiffres, caractères spéciaux augmente tout simplement la durée nécessaire à un programme pour trouver votre mot de passe. Je ne vois pas en quoi tu frimes en mettant un ou des caractères spéciaux dans ton mot de passe.
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: Q.I. 907 le 23 Avril 2006 à 11:55
Tout à fait d'accord, mais c'est inutile d'en faire trop, à ce stade c'est bien suffisant comme ça.
Après bien entendu chacun fait comme il veut.
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: alexibast le 23 Avril 2006 à 12:38
en fait le moyen le plus facile (et le plus stupide aussi) de se proteger des hacker c'est d'en etre un soi meme.
mais on se retrouve vite sans amis
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: Noxneo le 29 Avril 2006 à 17:39
La définition d'un hacker, c'est quelqu'un qui apprend l'informatique à "haut niveau" (c'est à dire pas Word :p) en autodidacte.
Ici, le terme approprié est cracker (désolé de faire cette remarque, mais ça me choque un peu le "en fait le moyen le plus facile (et le plus stupide aussi) de se proteger des hacker c'est d'en etre un soi meme."...c'est pas stupide d'être un hacker:p).
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: SaniOKh le 29 Avril 2006 à 19:34
Je ne pense pasque des conseils à ce sujet sans questions particulières soient utiles, parce que tous les sites amateurs codés avec PHP sont différents et il n'y a pas une recette miracle universelle pour rendre un site inviolable. Heureusement d'ailleurs, parce que si un cracker arrive à trouver un jour une anti-recette miracle universelle, alors on est tous dans la... vous voyez quoi.
Citation de: Q.I. 907 le 22 Avril 2006 à 03:17Celui qui accède au site par FTP sera point intimidé par le .htaccess/.htpasswd. :P
Tant qu'on y est, je pose une question à la personne qui bosse dans ce domaine :D : est-ce que tu sais s'il y a un autre moyen de contourner les .htaccess/.htpasswd que le FTP? Parce que je suis en train de réaliser un site avec une console admin plutôt... puissante :D et je n'ai pas vraiment confiance, disons.
Encore une question qui peut paraître bête et n00bique: est-ce que c'est sûr de rendre la partie admin inaccessible sans les variables transmis en POST (je m'y perds entre GET et POST, je parle du mode où on ne voit pas les variables dans la barre d'adresses, c'est bien POST, non?) entre chaque page (à chaque fois, les variables, qui sont en relation avec le nom et le mot de passe, sont vérifiées) ou je devrais abandonner cette idée et m'approfondir dans les sessions et cookies?
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: HCkev le 29 Avril 2006 à 19:46
à mon avis, les sessions restent le moyen le plus sur, mais faut faire attention, car selon la manière qu'on les génère, il peut y avoir des failles ;) Moi persos, j'ai opté pour des sessions maison, avec une BDD (pas avec $_SESSION).

Mais chose sur: Éviter à tout prix les variables du genre $admin = 1 car normalement, y a moyen de contourner ça :) Déjà, le fait d'utiliser une constante plutôt qu'une variable augmenterais grandement la sécurité (car une constante ne peut être définie que par le script et ne peut pas être modifiée).
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: SaniOKh le 29 Avril 2006 à 19:49
Bon, pour le nom des variables, c'est bon :D C'est tellement tordu que même moi, je m'y perds moi-même des fois :D
Mais je n'ai pas tout compris pour les constantes et les variables... je ne vois pas la différence entre les deux dans ce que tu dis, est-ce que tu peux dévélopper, s'il te plaît? :) (je sais, n00b attitude ^^')
Titre: Re: Eviter de vous faire Hacker votre site!
Posté par: HCkev le 29 Avril 2006 à 20:01
Un constance se définit avec la fonction define():
define( 'CONSTANTE', 'VALEUR' );

L'avantage des constantes est qu'elles ne peuvent être définies seulement dans le script (donc pas de problèmes avec GET, POST, et cie). De plus, elles ne peuvent pas être modifées, une fois une constante définie, elle ne peut pas changer de valeur jusqu'a la fin de l'éxécution du script.

Exemple:
define( 'MA_CONSTANTE', 'youpii !' );
echo MA_CONSTANTE; // Affiche: youpii !
define( 'MA_CONSTANTE', 'yahoo !' ); // Erreur ! La constante est déjà définie !


On peut vérifier si une constante est définie avec defined() ;)

Pour plus d'infos, il y a toujours la doc ^_^
http://php.net/define
http://php.net/defined