<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>WEBlog de Félix Aimé &#187; sql injection</title>
	<atom:link href="http://blog.felix-aime.fr/tag/sql-injection/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.felix-aime.fr</link>
	<description>{ OpenSource Intelligence, Information Security, Information Warfare }</description>
	<lastBuildDate>Mon, 06 Feb 2012 12:39:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Fuzz or not to fuzz ?</title>
		<link>http://blog.felix-aime.fr/securite-des-systemes-dinformation/skipfish-fuzzing-des-applications-web/</link>
		<comments>http://blog.felix-aime.fr/securite-des-systemes-dinformation/skipfish-fuzzing-des-applications-web/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 22:31:04 +0000</pubDate>
		<dc:creator>feu</dc:creator>
				<category><![CDATA[Sécurité des systèmes d'information]]></category>
		<category><![CDATA[applications web]]></category>
		<category><![CDATA[failles]]></category>
		<category><![CDATA[sécurité]]></category>
		<category><![CDATA[sql injection]]></category>
		<category><![CDATA[vulnérabilités]]></category>
		<category><![CDATA[waf]]></category>
		<category><![CDATA[XSS]]></category>

		<guid isPermaLink="false">http://blog.felix-aime.fr/?p=486</guid>
		<description><![CDATA[Il y a quelques jours, un nouveau fuzzer d&#8217;applications web pointait le bout de son nez. Nommé SkipFish, ce dernier s&#8217;est annoncé comme une sorte de renouveau parmi les fuzzers d&#8217;applications web. Cependant, le buzz dépasse largement la technique et ce dernier possède encore beaucoup de défauts inhérents aux fuzzers. Faisons le tour des particularités [...]]]></description>
			<content:encoded><![CDATA[<p>Il y a quelques jours, un nouveau fuzzer d&#8217;applications web pointait le bout de son nez. Nommé <a href="http://code.google.com/p/skipfish/">SkipFish</a>, ce dernier s&#8217;est annoncé comme une sorte de renouveau parmi les fuzzers d&#8217;applications web. Cependant, le buzz dépasse largement la technique et ce dernier possède encore beaucoup de défauts inhérents aux fuzzers. Faisons le tour des particularités des fuzzers et démontrons pourquoi un fuzzer ne remplacera jamais un cerveau bien entraîné à la chasse aux vulnérabilités.</p>
<p>De <a href="http://w3af.sourceforge.net/">w3af</a> (mon préféré&#8230;) à <a href="http://code.google.com/p/skipfish/">Skipfish</a> en passant par <a href="http://sourceforge.net/projects/wapiti/">Wapiti</a>, le petit français : les fuzzers deviennent de plus en plus évolués pour déceler une très large variété de vulnérabilités ou d&#8217;information disclosures. Cependant, les applications web sont, comme toutes applications, systémiques. De ce fait, dans une grande majorité des cas, des conditions doivent souvent être remplies afin d&#8217;accéder à certaines vulnérabilités. Ces conditions (authentifications, patterns à respecter etc.), souvent additionnelles entre elles sont très largement omises par les fuzzers, ne lisant pas, sauf dans le cadre de certains PoCs, les informations contenues dans la page (tels que les names/types des champs inputs pouvant donner pas mal d&#8217;information sur la nature des données attendues en POST/GET). Ceci aboutissant le plus généralement à de faux négatifs et donc au passage à la trappe d&#8217;un très grand nombre de vulnérabilités potentielles.</p>
<p>Le nombre de requêtes vers une application ciblée durant une phrase de fuzzing est aussi à ne pas négliger. Ainsi, elles se comptent en dizaines de milliers, voir, centaines de milliers pour le petit dernier Skipfish laissant une trace plus que repérable dans les logs pouvant par la suite être interprétée par un IDS/IPS.</p>
<p>En parlant de dispositifs ajoutés un serveur web lambda nous pouvons de plus mentionner les <a href="http://www.owasp.org/index.php/Web_Application_Firewall">WAF</a>. Ces derniers ne permettront pas de déceler une vulnérabilité même si elle est présente dernière le reverse proxy et exploitable (par exemple en utilisant des attaques du type HPP, HPF ou même plus inhérentes aux services SGBD ; voir cette très <a href="http://www.ptsecurity.com/download/PT-devteev-CC-WAF-ENG.pdf">bonne présentation</a> pour plus de détails). Ce, pour la simple et bonne raison que les fuzzers sont développés pour déceler les vulnérabilités et non bypasser certaines protections tierces protégeant l&#8217;accès à ces vulnérabilités.</p>
<p>Bref, les tests d&#8217;intrusions sur les applications web en front-end avec un simple navigateur et quelques plugins ont encore de beaux jours devant eux, rien ne remplacera l&#8217;expérience de l&#8217;auditeur dans son travail tant dans l&#8217;analyse du code que dans une attaque en font-end. Cependant, fuzzer une application peut s&#8217;avérer utile en appoint, notamment en local.</p>
<p>Pour information, j&#8217;ai passé sur w3af et sur Skipfish le script <a href="http://directory.felix-aime.fr/_SecurityBugsHunter/">php calendar</a> avant de réaliser cet article. Voici ce qu&#8217;ils ont découverts :</p>
<p><strong>[-] Skipfish : </strong></p>
<p>Il a simplement découvert l&#8217;injection SQL et une XSS dans le formulaire d&#8217;authentification de la zone d&#8217;admin (et le dossier de la zone d&#8217;admin). Aucune SQL injection dans l&#8217;index de l&#8217;application ni même l&#8217;include locale présente aussi dans l&#8217;index de l&#8217;application.</p>
<p><strong>[-] w3af : </strong></p>
<p>Il découvre le full path disclosure lorsque la valeur de la variable lang passée en GET n&#8217;est pas celle attendue. Il découvre aussi la LFI et une XSS (que je n&#8217;avais pas vu, présente grâce à l&#8217;erreur de retour en cas de non inclusion du fichier) mais aucune SQL injection dans l&#8217;index là aussi. Il ne découvre pas la zone d&#8217;administration, donc pas d&#8217;SQL injection ou de XSS dans le formulaire d&#8217;authentification de cette dernière.</p>
<p>Je ferai peut-être, un audit plus complet, avec de vraies statistiques pour comparer les fuzzers avec un audit fait à la main.</p>
<p>PS : Merci à @<a href="http://twitter.com/wadael">wadael</a> pour me pousser à faire des articles =)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.felix-aime.fr/securite-des-systemes-dinformation/skipfish-fuzzing-des-applications-web/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

