<?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>Blog de Jonathan Petitcolas &#187; Sécurité informatique</title>
	<atom:link href="http://www.jonathan-petitcolas.com/category/securite-informatique/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jonathan-petitcolas.com</link>
	<description>Geek, développeur Web, passionné de high-tech</description>
	<lastBuildDate>Sat, 21 Aug 2010 14:47:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Décrypter un hash : attention aux tables arc-en-ciel !</title>
		<link>http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/</link>
		<comments>http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/#comments</comments>
		<pubDate>Sat, 04 Oct 2008 23:29:23 +0000</pubDate>
		<dc:creator>Jonathan Petitcolas</dc:creator>
				<category><![CDATA[Sécurité informatique]]></category>
		<category><![CDATA[cryptographie]]></category>
		<category><![CDATA[hash]]></category>
		<category><![CDATA[sécurité]]></category>

		<guid isPermaLink="false">http://www.jonathan-petitcolas.com/?p=357</guid>
		<description><![CDATA[Comment déchiffrer un hash quelconque en utilisant les tables arc-en-ciels ?]]></description>
			<content:encoded><![CDATA[<p>Souvent, les développeurs croient, à tort, que hasher les mots de passes (ou tout autre information sensible) est suffisant. Je risque d'en décevoir beaucoup, mais la sécurité apportée par ce chiffrement est de moins en moins fiables. Et ceux que ce soit un hash MD5 ou un hash SHA1. </p>
<p>Tout d'abord, rappellons ce qu'est un hash. Un hash est simplement la création d'une empreinte numérique d'une chaîne de caractères. La fonction de hash est injective : cela signifie que pour toute chaîne hashée, il y a au plus une chaîne de départ qui lui est associée. Une autre propriété est qu'en changeant même très légèrement la chaîne de départ, on obtient un hash complètement différent. Enfin, un hash est irréversible : à partir d'un hash, il est impossible de retrouver l'antécédent.</p>
<p>La sécurité des mots de passe dans la majeure partie des applications Web amateurs repose sur le hash simple d'une chaîne de caractères (quand le mot de passe est chiffré, ce qui n'est pas toujours le cas... eh oui, il y a des kamikazes). Lorsque l'internaute s'inscrit, son mot de passe est chiffré dans la base. Ensuite, on teste si le hash du mot de passe saisi lors de l'authentification correspond. Etant donné l'unicité de l'antécédent par la fonction injective qu'est le hash, cela fonctionne généralement bien.</p>
<p>Cependant, ce qui marchait bien il y a quelques années dans le monde de la sécurité est à présent complètement dépassé. En effet, il existe ce que l'on appelle des tables arc-en-ciel. Ces tables permettent de déchiffrer très aisément un hash quelconque. Comment cela marche-t-il puisqu'on ne peut pas revenir en arrière ? Il s'agit en fait d'une table contenant des hashs pré-calculés. Les mots de passe les plus simples peuvent donc être très facilement récupérés : il suffit de récupérer l'enregistrement correspondant au hash à déchiffrer, et on obtient le mot de passe en clair.</p>
<p>Prenons par exemple un hash SHA1 au hasard :</p>
<blockquote><p>db4f707f9c5d964c6af953a08f87c57e780c0a35</p></blockquote>
<p>Allons faire un tour sur un site de cracking. Cela nous permet alors de retrouver très facilement le mot de passe de départ : </p>
<blockquote><p>jonathan-petitcolas</p></blockquote>
<p>La sécurité par hash est donc illusoire. Cela obligera simplement à ouvrir un nouvel onglet et à faire un copier/coller. On a vu mieux, non ? ;)</p>
<p>Dans un prochain billet, nous parlerons de l'ajout d'un grain de sel, ce qui nous permettra d'ajouter une sécurité <del datetime="2008-10-05T00:06:15+00:00">supplémentaire</del> à notre algorithme.</p>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/&amp;t=D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Jonathan+Petitcolas+%3A+D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21+-+http://tinyurl.com/nqhusb&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-netvibes">
			<a href="http://www.netvibes.com/share?title=D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21&amp;url=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/" rel="nofollow" class="external" title="Submit this to Netvibes">Submit this to Netvibes</a>
		</li>
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/&amp;title=D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21&amp;summary=Comment%20d%C3%A9chiffrer%20un%20hash%20quelconque%20en%20utilisant%20les%20tables%20arc-en-ciels%20%3F&amp;source=Blog de Jonathan Petitcolas" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-googlereader">
			<a href="http://www.google.com/reader/link?url=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/&amp;title=D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21&amp;srcUrl=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/&amp;srcTitle=D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21&amp;snippet=Comment%20d%C3%A9chiffrer%20un%20hash%20quelconque%20en%20utilisant%20les%20tables%20arc-en-ciels%20%3F" rel="nofollow" class="external" title="Add this to Google Reader">Add this to Google Reader</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/&amp;title=D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/&amp;title=D%C3%A9crypter+un+hash+%3A+attention+aux+tables+arc-en-ciel+%21" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>

]]></content:encoded>
			<wfw:commentRss>http://www.jonathan-petitcolas.com/decrypter-un-hash-attention-aux-tables-arc-en-ciel/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
