======== Sécurité WEB ======== **Choses à faire** ---- - Apprendre l'HTML et le CSS -> [[http://www.siteduzero.com/tutoriel-3-13666-apprenez-a-creer-votre-site-web-avec-html5-et-css3.html|Lien]] - Apprendre le Javascript-> [[http://www.siteduzero.com/tutoriel-3-309961-dynamisez-vos-sites-web-avec-javascript.html|Lien]] - Apprendre le PHP -> [[http://sylvie-vauthier.developpez.com/tutoriels/php/grand-debutant/|Lien]] - [[http://www.siteduzero.com/tutoriel-3-14668-concevez-votre-site-web-avec-php-et-mysql.html|Lien]] - [[http://www.siteduzero.com/tutoriel-3-147180-la-programmation-orientee-objet-en-php.html|Lien]] - Savoir à quoi sert le fichier robots.txt et en quoi celui-ci peut être utile dans la collecte d'information -> [[http://fr.wikipedia.org/wiki/Protocole_d'exclusion_des_robots|Lien]] - [[http://www.google.fr/search?q=inurl:robots.txt%20ext:txt|Lien]] - Comprendre comment fonctionne le vol de sessions -> [[http://en.wikipedia.org/wiki/Session_hijacking|Lien]] - Apprendre à éxploiter les XSS, persistantes et et non persistantes -> [[http://fr.wikipedia.org/wiki/Cross-site_scripting|Lien]] - [[https://www.owasp.org/index.php/Testing_for_Data_Validation|Lien]] - [[http://www.mc2design.com/blog/php_self-safe-alternatives|Lien]] - [[|Lien]] - [[|Lien]] - Apprendre à exploiter les CSRF -> [[http://ha.ckers.org/xss.html|Lien]] - [[http://niklosweb.free.fr/Tutoriaux/Hacking/XSS.html|Lien]] - Apprendre à éxploiter un Cross Site Tracing -> [[http://forum.zenk-security.com/thread-129.html|Lien]] - [[http://forum.zenk-security.com/thread-368.html|Lien]] - Apprendre comment fonctionne le protocole HTTP (utile pour plein de chose) -> [[http://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol|Lien]] - Apprendre à exploiter les Command Injection (rare mais à connaitre) -> [[https://www.owasp.org/index.php/Reviewing_Code_for_OS_Injection|Lien]] - Apprendre à exploiter les HTTP Response Splitting -> [[http://blog.4j4x.net/?p=15|Lien]] - Apprendre à exploiter les HTTP Header Injection -> [[http://blogs.msdn.com/b/esiu/archive/2007/09/22/http-header-injection-vulnerabilities.aspx|Lien]] - Apprendre à exploiter les HTTP HEAD Trick dans PHP-> [[https://students.mimuw.edu.pl/~ai292615/php_head_trick.pdf|Lien]] - Apprendre à bypasser les .htaccess (généralement outdated mais bon à savoir) -> [[http://ghostsinthestack.org/article-26-bypasser-les-htaccess-avec-limit.html|Lien]] - Apprendre à provoquer des Full Path Disclosure -> [[https://www.owasp.org/index.php/Full_Path_Disclosure|Lien]] - Apprendre à éxploiter les Remote et Local File Include -> [[http://www.ghostsinthestack.org/article-16-la-faille-include.html|Lien]] - [[http://labs.neohapsis.com/2008/07/21/local-file-inclusion-%E2%80%93-tricks-of-the-trade/|Lien]] - [[http://forum.zenk-security.com/thread-410.html|Lien]] - [[http://www.shp-box.fr/blog/63|Lien]] - [[https://websec.wordpress.com/2010/02/22/exploiting-php-file-inclusion-overview/|Lien]] - [[http://www.idontplaydarts.com/2011/02/using-php-filter-for-local-file-inclusion/|Lien]] - Apprendre à exploiter les failles Upload -> [[https://students.mimuw.edu.pl/~ai292615/php_multipleupload_overwrite.pdf|Lien]] - Apprendre le SQL -> [[http://sqlpro.developpez.com/|Lien]] - [[http://dev.mysql.com/doc/refman/5.0/fr/index.html|Lien]] - Apprendre à éxploiter les injections SQL -> [[http://www.ghostsinthestack.org/article-8-les-bases-des-injections-sql.html|Lien]] - [[https://www.owasp.org/index.php/Testing_for_SQL_Injection_(OWASP-DV-005)|Lien]] - [[https://www.owasp.org/index.php/Testing_for_Data_Validation|Lien]] - [[http://venom630.free.fr/geo/tutz/securite_informatique/tour_d_horizon_sur_les_sql_injections_nikloskoda.html|Lien]] - [[http://www.exploit-db.com/papers/17934/|Lien]] - [[http://shiflett.org/blog/2006/jan/addslashes-versus-mysql-real-escape-string|Lien]] - Apprendre à bypasser les filtres dans le cadre d'injections SQL -> [[http://www.mcherifi.org/hacking/sql-injection-les-techniques-devasion-de-filtres.html|Lien]] - [[http://websec.wordpress.com/2010/12/04/sqli-filter-evasion-cheat-sheet-mysql/|Lien]] - [[http://websec.wordpress.com/2010/03/19/exploiting-hard-filtered-sql-injections/|Lien]] - [[http://websec.wordpress.com/2010/05/07/exploiting-hard-filtered-sql-injections-2-conditional-errors/|Lien]] - [[http://websec.wordpress.com/2010/05/26/exploiting-hard-filtered-sql-injections-3/|Lien]] - Apprendre à exploiter les injections SQL faisant intervenir des fichiers -> [[http://niklosweb.free.fr/Tutoriaux/Hacking/Injections%20SQL%20et%20fichiers.html|Lien]] - [[http://websec.wordpress.com/2010/10/01/blind-sql-injection-with-load_file/|Lien]] - Apprendre un langage de Script (python, perl, ruby) afin d’exploiter des "Blind SQL Injection" -> [[http://www.ghostsinthestack.org/article-11-blind-sql-injections.html|Lien]] - [[http://forum.zenk-security.com/thread-1991.html|Lien]] - [[http://www.mcherifi.org/hacking/sql-injection-avancee-blind-sql-injection.html|Lien]] - [[http://websec.wordpress.com/2011/04/06/blind-sqli-techniques/|Lien]] - Apprendre à exploiter les "Total Blind SQL Injection" basé sur le temps -> [[http://niklosweb.free.fr/Tutoriaux/Hacking/Injections%20SQL%20basees%20sur%20le%20temps.html|Lien]] - Apprendre à exploiter les "NoSQL/SSJS Injection" basé sur le temps -> [[http://www.syhunt.com/?n=Articles.NoSQLInjection|Lien]] - Apprendre à reconnaître les différents types de "hash" (MD5, SHA...), savoir dans quel cadre ils sont utilisés, et comment leurs trouver une collision. -> [[http://fr.wikipedia.org/wiki/Fonction_de_hachage|Lien]] - [[http://hash.kalkulators.org/index.php?hash=exemple|Lien]] - [[http://forum.zenk-security.com/thread-2444-post-21042.html|Lien]] - Apprendre à exploiter les "Null Byte Injection" dans preg_replace() -> [[http://ha.xxor.se/2011/06/null-byte-injection-in-pregreplace.html|Lien]] - Apprendre à exploiter les failles unserialize de PHP -> [[http://tlking.wordpress.com/2011/10/27/la-faille-unserialize-de-php/|Lien]] **Lectures Conseillées** ---- - [[http://www.amazon.fr/The-Web-Application-Hackers-Handbook/dp/1118026470|The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws]] /!\ Edition 3 en cours ! **Exercices** ---- - Créer un script PHP, qui, appelé depuis une XSS permet de récupérer le cookie de session du client, et de le stocker dans un fichier ou une BDD (prérequis : 1 à 6). - Faire les épreuves "Failles Web" de [[http://www.zenk-security.com/epreuves.php|Zenk Security]] (prérequis : 1 à 20+). - S’entraîner sur différents CTF. [[http://securityoverride.com/challenges/index.php|Lien]] - [[http://www.root-me.org/|Lien]] - [[http://www.newbiecontest.org/|Lien]] - [[https://redtiger.dyndns.org/hackit/|Lien]] - [[http://hackit.sh4ka.fr/|Lien]] **Framework** ---- - Web Application Attack and Audit (w3af) - [[http://w3af.sourceforge.net/|Lien]] - Burp Suite - [[http://portswigger.net/burp/|Lien]] - [[http://www.lestutosdenico.com/outils/burp-suite|Lien]] - Arachni - [[https://github.com/Zapotek/arachni|Lien]] **Outils** ---- **Cheat Sheet** ---- **Autres** ----