<?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>The short internship &#187; php</title>
	<atom:link href="http://stage.rbpi.devenet.eu/mot-clef/php/feed" rel="self" type="application/rss+xml" />
	<link>http://stage.rbpi.devenet.eu</link>
	<description>Tribulations d&#039;un stagiaire en service informatique</description>
	<lastBuildDate>Sun, 23 Mar 2014 14:16:49 +0000</lastBuildDate>
	<language>fr-FR</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.8.1</generator>
	<item>
		<title>Jour 22 • Le souci du détail</title>
		<link>http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html</link>
		<comments>http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html#comments</comments>
		<pubDate>Tue, 30 Jul 2013 21:00:19 +0000</pubDate>
		<dc:creator><![CDATA[Nicolas]]></dc:creator>
				<category><![CDATA[Ma journée]]></category>
		<category><![CDATA[naïveté]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[serveur]]></category>

		<guid isPermaLink="false">http://stage.rbpi.devenet.eu/?p=270</guid>
		<description><![CDATA[Ce matin, j&#8217;ai continué à me pencher sur la copie de la fenêtre de connexion Windows. Mon poste de travail étant sous Windows 7 et la majorité du parc informatique aussi, je me suis dit que c&#8217;était la bonne version &#8230; <a href="http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[ <p> Ce matin, j&rsquo;ai continué à me pencher sur la copie de la fenêtre de connexion Windows. Mon poste de travail étant sous Windows 7 et la majorité du parc informatique aussi, je me suis dit que c&rsquo;était la bonne version de l&rsquo;OS à choisir. De même la majorité des utilisateurs utilisent Internet Explorer<sup id="rf1-270"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html#fn1-270"  title="Version 9 tout de m&ecirc;me !">1</a></sup> qui utilise la fenêtre habituelle de connexion Windows. <br /> 
La fenêtre a donc été &laquo;&nbsp;optimisée&nbsp;&raquo; pour être la plus ressemblante à celle de Windows 7 ouverte depuis IE. Au final, voici un petit comparatif. </p> 
 <p> <a href="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/fake_windows_weblogin/" target="_blank"><img class="aligncenter size-full wp-image-274" alt="Windows weblogin comparaison" src="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/windows-weblogin.png" width="439" height="514" /></a> </p> 
 <p> Pour rendre la fenêtre encore plus réaliste, j&rsquo;ai ajouté un peu de JavaScript pour rendre la fenêtre déplaçable. Seul bémol, la fenêtre ne peut pas sortir du cadre d&rsquo;Internet Explorer, alors que la vraie fenêtre oui. La copie n&rsquo;est qu&rsquo;une image, mais les champs ainsi que les boutons sont codés en HTML. </p> 
 <p> La fin de matinée a été consacrée à une réunion de synthèse avec X.<sup id="rf2-270"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html#fn2-270"  title="Responsable de notre branche, directeur-adjoint de la DSIT&hellip;">2</a></sup> sur le travail effectué depuis le début du mois de juillet. A., P. et moi étions présents. <br /> 
Il a été donc rappelé tout le travail par chacun, et pour a part j&rsquo;ai pu refaire une synthèse de ce que j&rsquo;ai pu voir et faire au sein du stage : </p> 
<ul>
<li>Recherche et mise en place d&rsquo;un outil de test de montée de charge (avec rédactions de documents)</li>
<li>Analyse du code source d&rsquo;un application web vulnérable avec explications des solutions et corrections à mettre en place</li>
<li>Recherche d&rsquo;un outil d&rsquo;analyse de code source &laquo;&nbsp;statique&nbsp;&raquo; pour répérer dès le développement certaines failles</li>
<li>Rédaction d&rsquo;un document de recommandations des bonnes pratiques de codage lors de développement d’applications web</li>
<li>Recherche d&rsquo;utilisation de la vulnérabilité de l&rsquo;intranet pour daire du hameçonnage<sup id="rf3-270"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html#fn3-270"  title="Ou Phishing en anglais.">3</a></sup></li>
</ul>
 <p> Le midi, malgré le temps peu accueillant, nous avons pu nous régaler avec un barbecue <span class="icon-emo-happy"/> </p> 
 <p> L&rsquo;après-midi a été un peu plus calme, j&rsquo;ai pu terminer la <a href="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/fake_windows_weblogin/" target="_blank">fausse fenêtre d&rsquo;authentification</a>, que je ai mise en ligne. <br /> 
N&rsquo;oubliez pas qu&rsquo;elle est destinée à être ouverte dans une iFrame sur l&rsquo;intranet de la collectivité, dans un environnement Windows 7 avec Internet Explorer, et qui s&rsquo;appuie sur la naïveté des utilisateurs <span class="icon-emo-wink2"/> </p> 
 <p> Je vais tout de même lister les petits détails qui devraient mettre la puce à oreille aux utilisateurs : </p> 
<ul>
<li>Normalement, la session Windows de l&rsquo;utilisateur connecté l&rsquo;identifie par défaut sur l&rsquo;intranet.</li>
<li>L&rsquo;URL incluse est auth.ville.local, alors que le serveur est auth.ville.fr<sup id="rf4-270"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html#fn4-270"  title="d&rsquo;ailleurs les champs gris&eacute;s affichaient auth.ville.fr et VILLE">4</a></sup></li>
<li>La fenêtre n&rsquo;est pas déplaçable en dehors du navigateur, seul la barre de titre permet en réalité de la déplacer</li>
<li>Lorsqu&rsquo;un champ est sélectionné, la bordure est bleue et ne reste pas grise</li>
<li>La touche &laquo;&nbsp;échap&nbsp;&raquo; ne permet pas de quitter la fenêtre, chose possible sur la vraie fenêtre</li>
<li>Le fond bleu change de couleur lors du survol des deux champs, et non pas de la fenêtre</li>
</ul>
<hr class="footnotes"><ol class="footnotes"><li id="fn1-270"> <p> Version 9 tout de même !&nbsp;<a href="#rf1-270" class="backlink" title="Jump back to footnote 1 in the text.">&#8617;</a> </p> </li><li id="fn2-270"> <p> Responsable de notre branche, directeur-adjoint de la DSIT&#8230;&nbsp;<a href="#rf2-270" class="backlink" title="Jump back to footnote 2 in the text.">&#8617;</a> </p> </li><li id="fn3-270"> <p> Ou <em>Phishing</em> en anglais.&nbsp;<a href="#rf3-270" class="backlink" title="Jump back to footnote 3 in the text.">&#8617;</a> </p> </li><li id="fn4-270"> <p> d&rsquo;ailleurs les champs grisés affichaient auth.ville.fr et VILLE&nbsp;<a href="#rf4-270" class="backlink" title="Jump back to footnote 4 in the text.">&#8617;</a> </p> </li></ol>]]></content:encoded>
			<wfw:commentRss>http://stage.rbpi.devenet.eu/ma-journee/jour-22-le-souci-du-detail.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jour 20 • Bilan</title>
		<link>http://stage.rbpi.devenet.eu/ma-journee/jour-20-bilan.html</link>
		<comments>http://stage.rbpi.devenet.eu/ma-journee/jour-20-bilan.html#comments</comments>
		<pubDate>Fri, 26 Jul 2013 21:00:14 +0000</pubDate>
		<dc:creator><![CDATA[Nicolas]]></dc:creator>
				<category><![CDATA[Ma journée]]></category>
		<category><![CDATA[développement]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[présentation]]></category>
		<category><![CDATA[réunion]]></category>
		<category><![CDATA[synthèse]]></category>

		<guid isPermaLink="false">http://stage.rbpi.devenet.eu/?p=263</guid>
		<description><![CDATA[Dernière journée de cette semaine. Quelle surprise quand en se levant il pleuvait et tonnait ! Une bonne grosse averse et des orages à partir de quatre heures du matin, qui ont duré au moins jusque 10 heures. Conséquence : &#8230; <a href="http://stage.rbpi.devenet.eu/ma-journee/jour-20-bilan.html">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[ <p> Dernière journée de cette semaine. Quelle surprise quand en se levant il pleuvait et tonnait ! Une bonne grosse averse et des orages à partir de quatre heures du matin, qui ont duré au moins jusque 10 heures. <br /> 
Conséquence : barbecue annulé et reporté à mardi de la semaine prochaine. En espérant qu&rsquo;il fasse beau. </p> 
 <p> La matinée a achevé mes recherches sur des outils pour auditer du code source d&rsquo;applications web. J&rsquo;ai préparé un joli PowerPoint de présentation et de comparatif des solutions trouvées durant la semaine. <br /> 
Les outils qui ont vraiment retenus mon attentions sont RIPS, Graudit et SonarQube<sup id="rf1-263"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-20-bilan.html#fn1-263"  title="M&ecirc;me si SonarQube est un outil de mesure de qualit&eacute; de code, il permet de trouver des variables non utilis&eacute;es et des portions de code dupliqu&eacute;es.">1</a></sup>. Pour le reste, soit je n&rsquo;ai pu pu les tester<sup id="rf2-263"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-20-bilan.html#fn2-263"  title="Impossibilit&eacute; des les t&eacute;l&eacute;charger ou impossibilit&eacute; de les ex&eacute;cuter, malgr&eacute; tout le mal que je me suis donn&eacute; :/">2</a></sup>, soit les résultats étaient plus que médiocres, soit encore les applications ne répondaient pas au problème&#8230; </p> 
 <p> Le barbecue annulé nous a permis de faire une petite session de Left4Dead à quatre. Après cette longue pause, nous avons présenté notre travail à A. Et pris dans les discussions, il était déjà l&rsquo;heure du weekend <span class="icon-emo-happy"/> </p> 
 <p> Sinon j&rsquo;ai compté, il ne me reste plus que 13 jours ouvrés de stage&#8230; </p> 
<hr class="footnotes"><ol class="footnotes"><li id="fn1-263"> <p> Même si SonarQube est un outil de mesure de qualité de code, il permet de trouver des variables non utilisées et des portions de code dupliquées.&nbsp;<a href="#rf1-263" class="backlink" title="Jump back to footnote 1 in the text.">&#8617;</a> </p> </li><li id="fn2-263"> <p> Impossibilité des les télécharger ou impossibilité de les exécuter, malgré tout le mal que je me suis donné :/&nbsp;<a href="#rf2-263" class="backlink" title="Jump back to footnote 2 in the text.">&#8617;</a> </p> </li></ol>]]></content:encoded>
			<wfw:commentRss>http://stage.rbpi.devenet.eu/ma-journee/jour-20-bilan.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jour 19 • Maitrise</title>
		<link>http://stage.rbpi.devenet.eu/ma-journee/jour-19-maitrise.html</link>
		<comments>http://stage.rbpi.devenet.eu/ma-journee/jour-19-maitrise.html#comments</comments>
		<pubDate>Thu, 25 Jul 2013 21:12:08 +0000</pubDate>
		<dc:creator><![CDATA[Nicolas]]></dc:creator>
				<category><![CDATA[Ma journée]]></category>
		<category><![CDATA[outil]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[question]]></category>
		<category><![CDATA[recherche]]></category>

		<guid isPermaLink="false">http://stage.rbpi.devenet.eu/?p=255</guid>
		<description><![CDATA[Aujourd&#8217;hui A. était en déplacement sur Paris pour le marché d&#8217;hébergements. Ce qui ne nous a pas empêche de travailler ! Après une installation réussie hier de l&#8217;outil SonarQube, j&#8217;ai pu tester différents sites avec différents types de configurations (tests &#8230; <a href="http://stage.rbpi.devenet.eu/ma-journee/jour-19-maitrise.html">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[ <p> Aujourd&rsquo;hui A. était en déplacement sur Paris pour le marché d&rsquo;hébergements. Ce qui ne nous a pas empêche de travailler ! </p> 
 <p> Après une installation réussie hier de l&rsquo;outil SonarQube, j&rsquo;ai pu tester différents sites avec différents types de configurations (tests basiques, sur tels critères, etc). L&rsquo;outil est vraiment complet pour la qualité de code, mais absolument rien concernant la sécurité&#8230; Or le but de mes recherches est de trouver des applications capables de déceler dans le code source des vulnérabilités. Donc malgré l&rsquo;intérêt que j&rsquo;ai pour cet outil, il ne convient malheureusement pas&#8230; <br /> 
Néanmoins, j&rsquo;ai appris à lancer ces différents tests, jongler avec cet outil parfois capricieux. J&rsquo;ai enfin pris ma revanche <span class="icon-emo-wink2"/> </p> 
 <p> J&rsquo;ai donc continué ma recherche, et je suis tombé sur un petit logiciel pour Windows capable de scanner du code statique, et aussi dynamiquement<sup id="rf1-255"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-19-maitrise.html#fn1-255"  title="Dans ce cas, un serveur web sur lequel le code est ex&eacute;cut&eacute; est n&eacute;cessaire">1</a></sup> : <a href="http://www.autosectools.com/PHP-Vulnerability-Scanner" target="_blank">PHP Vulnerability Hunter</a>. <br /> 
Je reste assez septique. Le logiciel n&rsquo;a trouvé qu&rsquo;une seule petite faille mineur sur le code testé, et dont un essai sur deux de scan se solde par une sorte de plantage. Peut-être faut-il un nombre restreint de fichiers à tester ? </p> 
 <p> Demain matin, P. a demandé à A. s&rsquo;il pouvait l&rsquo;accompagner pour une réunion concernant le marché d&rsquo;hébergement pour voir comment ça se déroule. Je pense finir ma présentation des outils trouvés jusqu&rsquo;à présent, car après le barbecue, petite réunion de synthèse. </p> 
<hr class="footnotes"><ol class="footnotes"><li id="fn1-255"> <p> Dans ce cas, un serveur web sur lequel le code est exécuté est nécessaire&nbsp;<a href="#rf1-255" class="backlink" title="Jump back to footnote 1 in the text.">&#8617;</a> </p> </li></ol>]]></content:encoded>
			<wfw:commentRss>http://stage.rbpi.devenet.eu/ma-journee/jour-19-maitrise.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jour 18 • C&#8217;est qui le chef ?</title>
		<link>http://stage.rbpi.devenet.eu/ma-journee/jour-18-cest-qui-le-chef.html</link>
		<comments>http://stage.rbpi.devenet.eu/ma-journee/jour-18-cest-qui-le-chef.html#comments</comments>
		<pubDate>Wed, 24 Jul 2013 18:49:38 +0000</pubDate>
		<dc:creator><![CDATA[Nicolas]]></dc:creator>
				<category><![CDATA[Ma journée]]></category>
		<category><![CDATA[outil]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://stage.rbpi.devenet.eu/?p=231</guid>
		<description><![CDATA[Quel bonheur de commencer la journée avec un peu de frais dans le bureau ! Deuxième surprise : Windows a fait des mises à jour cette nuit1, et a donc redémarrer l&#8217;ordinateur : la machine virtuelle d&#8217;Ubuntu a planté en &#8230; <a href="http://stage.rbpi.devenet.eu/ma-journee/jour-18-cest-qui-le-chef.html">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[ <p> Quel bonheur de commencer la journée avec un peu de frais dans le bureau ! </p> 
 <p> Deuxième surprise : Windows a fait des mises à jour cette nuit<sup id="rf1-231"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-18-cest-qui-le-chef.html#fn1-231"  title="Habituellement, Microsoft sort ses patchs de s&eacute;curit&eacute; tous les deuxi&egrave;mes mardi de chaque mois.">1</a></sup>, et a donc redémarrer l&rsquo;ordinateur : la machine virtuelle d&rsquo;Ubuntu a planté en plein installation. <br /> 
Me voilà donc à recommencer l&rsquo;installation. Problème, après redémarrage problèmes graphiques empêchant le lancement de toute fenêtre. Bref, j&rsquo;étais bon pour refaire une installation. Et alors là, plantage en plein installation. Que du bonheur. J&rsquo;ai même tenté une installation &laquo;&nbsp;dual-boot&nbsp;&raquo; avec Wubi depuis Windows, là encore patatra&#8230; </p> 
 <p> Vint de l&rsquo;heure de se restaurer pendant que le téléchargement d&rsquo;Ubuntu serveur est en cours. Car j&rsquo;ai fondé mon espoir sur cette version sans interface graphique, et fort heureusement, je n&rsquo;ai pas été déçu. <br /> 
En suivant scrupuleusement l&rsquo;article de Dupot<sup id="rf2-231"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-18-cest-qui-le-chef.html#fn2-231"  title="http://dupot.org/post-10.html">2</a></sup> — après quelques configurations pour accéder au proxy ! —, SonarQube pour PHP et tous les dépendances nécessaires ont été installées <span class="icon-emo-happy"/> </p> 
 <p> <a href="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/example_sonar_qube_2.png"><img class="aligncenter size-large wp-image-234" alt="SonarQube résultat" src="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/example_sonar_qube_2-500x110.png" width="500" height="110" /></a> <br /> 
<a href="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/example_sonar_qube_1.png"><img class="aligncenter size-large wp-image-233" alt="SonarQube résultat" src="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/example_sonar_qube_1-500x509.png" width="500" height="509" /></a> </p> 
 <p> Et il faut dire, que l&rsquo;outil semble assez puissant. Je n&rsquo;ai pour l&rsquo;instant que fait un test sur un exemple proposé par SonarQube, l&rsquo;ensemble du code est passé en revu. Je n&rsquo;ai encore pu voir si cela avait un intérêt concernant la sécurité, car la majorité des alertes se font sur la qualité du code (nombre classes, méthodes, fonctions, complexité, etc). <br /> 
Je vais pouvoir demain passer l&rsquo;ensemble des projets à travers cet outil <span class="icon-emo-happy"/> </p> 
<hr class="footnotes"><ol class="footnotes"><li id="fn1-231"> <p> Habituellement, Microsoft sort ses patchs de sécurité tous les deuxièmes mardi de chaque mois.&nbsp;<a href="#rf1-231" class="backlink" title="Jump back to footnote 1 in the text.">&#8617;</a> </p> </li><li id="fn2-231"> <p> <a href="http://dupot.org/post-10.html" target="_blank">http://dupot.org/post-10.html</a>&nbsp;<a href="#rf2-231" class="backlink" title="Jump back to footnote 2 in the text.">&#8617;</a> </p> </li></ol>]]></content:encoded>
			<wfw:commentRss>http://stage.rbpi.devenet.eu/ma-journee/jour-18-cest-qui-le-chef.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jour 17 • Persévérance</title>
		<link>http://stage.rbpi.devenet.eu/ma-journee/jour-17-perseverance.html</link>
		<comments>http://stage.rbpi.devenet.eu/ma-journee/jour-17-perseverance.html#comments</comments>
		<pubDate>Tue, 23 Jul 2013 17:14:02 +0000</pubDate>
		<dc:creator><![CDATA[Nicolas]]></dc:creator>
				<category><![CDATA[Ma journée]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[recherche]]></category>
		<category><![CDATA[serveur]]></category>
		<category><![CDATA[solution]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://stage.rbpi.devenet.eu/?p=221</guid>
		<description><![CDATA[Aujourd&#8217;hui encore il a fait chaud. Autant le matin, l&#8217;atmosphère était respirable, mais alors l&#8217;après-midi, je me serai cru dans une fournaise. Je suis content que le journée se finisse, car je commençais à avoir un peu mal à la &#8230; <a href="http://stage.rbpi.devenet.eu/ma-journee/jour-17-perseverance.html">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[ <p> Aujourd&rsquo;hui encore il a fait chaud. Autant le matin, l&rsquo;atmosphère était respirable, mais alors l&rsquo;après-midi, je me serai cru dans une fournaise. Je suis content que le journée se finisse, car je commençais à avoir un peu mal à la tête ! </p> 
 <p> D&rsquo;autant plus que j&rsquo;ai continué à rechercher des solutions de scripts pour analyser du code PHP. J&rsquo;ai fait un rapide bilan écrit (un peu plus complet et détaillé que celui d&rsquo;hier, notamment avec des captures d&rsquo;écrans) des solutions trouvées jusqu&rsquo;à présent. <br /> 
Sans grande surprise, je n&rsquo;ai toujours pas trouvé les sources de Pixy. </p> 
 <p> Mais surtout, j&rsquo;ai tenté de faire fonctionner SonarQube. Sur Windows évidemment. Alors après quelques cafouillages, des configurations bancales qui ont tout de même le mérite de ne pas tout faire planter, impossible de faire des tests pour PHP. Soit j&rsquo;ai mal fait quelque chose dans les installations des différents plugins et applications nécessaires (voire j&rsquo;en ai oublié un :/), soit ce n&rsquo;était pas mon jour&#8230; Alors imaginez avec une chaleur pas possible. </p> 
 <p> Mon problème n&rsquo;était pas le serveur central SonarQube, sorte de &laquo;&nbsp;dashboard&nbsp;&raquo;. Ce qui m&rsquo;a d&rsquo;abord posé problème, c&rsquo;était le Sonar Runner qui permet de lancer des tests sans devoir passer par Maven ou Ant. Mais c&rsquo;était trop peu pour me faire peur. Car après quelques sueurs <del>froides</del> chaudes, c&rsquo;est l&rsquo;installation de PHP qui a flanché. Et là, j&rsquo;ai perdu tout espoir en Windows. </p> 
<p style="text-align: center;"><a style="font-style: normal; line-height: 24px; text-decoration: underline;" href="http://www.sonarqube.org/" target="_blank"><img class="aligncenter size-full wp-image-223" style="border-color: #bbbbbb; background-color: #fff;" alt="SonarQube" src="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/Sonarqube-48x200.png" width="200" height="48" /></a> </p> 
 <p> J&rsquo;ai donc opté pour une machine virtuelle sous Ubuntu (j&rsquo;ai d&rsquo;ailleurs trouvé un tutoriel qui semble bien expliqué pour auditer du code PHP), qui j&rsquo;espère sera prête d&rsquo;ici demain matin. Et normalement, merveille des merveilles, je découvrirais le rapport d&rsquo;audit de Sonar <span class="icon-emo-happy"/> </p> 
]]></content:encoded>
			<wfw:commentRss>http://stage.rbpi.devenet.eu/ma-journee/jour-17-perseverance.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jour 16 • À la recherche du lien perdu</title>
		<link>http://stage.rbpi.devenet.eu/ma-journee/jour-16-a-la-recherche-du-lien-perdu.html</link>
		<comments>http://stage.rbpi.devenet.eu/ma-journee/jour-16-a-la-recherche-du-lien-perdu.html#comments</comments>
		<pubDate>Mon, 22 Jul 2013 19:41:06 +0000</pubDate>
		<dc:creator><![CDATA[Nicolas]]></dc:creator>
				<category><![CDATA[Ma journée]]></category>
		<category><![CDATA[outil]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[recherche]]></category>

		<guid isPermaLink="false">http://stage.rbpi.devenet.eu/?p=200</guid>
		<description><![CDATA[Cette nouvelle semaine a commencé avec de nouveaux objectifs, qui tombaient à pic, car le document que j&#8217;avais rédigé sur les recommandations de sécurité pour le développement d&#8217;applications web est en train d&#8217;être relu par A., nous n&#8217;avons toujours pas &#8230; <a href="http://stage.rbpi.devenet.eu/ma-journee/jour-16-a-la-recherche-du-lien-perdu.html">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[ <p> Cette nouvelle semaine a commencé avec de nouveaux objectifs, qui tombaient à pic, car le document que j&rsquo;avais rédigé sur les recommandations de sécurité pour le développement d&rsquo;applications web est en train d&rsquo;être relu par A., nous n&rsquo;avons toujours pas reçu de nouveaux codes sources pour y jeter un coup d&rsquo;œil&#8230; </p> 
 <p> Il s&rsquo;agit de faire des recherches pour trouver des logiciels ou scripts open-source permettant d&rsquo;analyser le code source d&rsquo;une application PHP. <br /> 
Parmi ceux trouvés<sup id="rf1-200"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-16-a-la-recherche-du-lien-perdu.html#fn1-200"  title="Certains gr&acirc;ce au site du d&eacute;partement s&eacute;curit&eacute; CERN, le m&ecirc;me qui m&rsquo;avait permis de d&eacute;couvrir l&rsquo;analogie mot de passe et brosse &agrave; dents.">1</a></sup>, il y en a un qui me résiste encore pour le télécharger : Pixy <span class="icon-emo-unhappy"/> <br /> 
Le script a été conçu par des membres d&rsquo;une université en Autriche, et l&rsquo;<a href="http://www.seclab.tuwien.ac.at/projects/pixy/" target="_blank">ancien site</a> du projet, facilement trouvable, renvoie vers le <a href="http://pixybox.seclab.tuwien.ac.at/pixy/" target="_blank">nouveau site</a>, qui lui est injoignable&#8230; </p> 
 <p> J&rsquo;ai tenté vainement jusqu&rsquo;à présent de trouver un autre site sur lequel trouver le script. Peut-être que j&rsquo;aurais plus de chance demain ! </p> 
 <p> Voici une courte liste de ce qui a retenu mon attention jusqu&rsquo;à présent : </p> 
<ul>
<li><a href="http://pixybox.seclab.tuwien.ac.at/" target="_blank">Pixy</a> : on va attendre de trouver un lien de téléchargement valide :/</li>
<li><a href="http://www.justanotherhacker.com/projects/graudit.html" target="_blank">Graudit</a><sup id="rf2-200"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-16-a-la-recherche-du-lien-perdu.html#fn2-200"  title="Contraction de grep et de Audit">2</a></sup> : tout en ligne de commande, mais a du mal avec les <em>framework</em>&#8230;</li>
<li><a href="http://rips-scanner.sourceforge.net/" target="_blank">Rips Scanner</a> : il suffit de copier les fichiers php dans un répertoire web, et on peu lancer les scans. Ne supporte pas pour l&rsquo;instant PHP orienté objet. C&rsquo;est bien dommage, car la solution s&rsquo;annonçait intéressante !</li>
<li><a href="http://www.sonarqube.org/downloads/" target="_blank">SonarQube</a> : ça l&rsquo;air d&rsquo;une grosse usine à gaz, et c&rsquo;est nativement plus pour Java.</li>
</ul>
 <p> Sinon, il fait chaud. Très chaud. Et même si le bâtiment est en général très frais, ça commence à ne plus devenir tenable&#8230; </p> 
<hr class="footnotes"><ol class="footnotes"><li id="fn1-200"> <p> Certains grâce au <a href="https://security.web.cern.ch/security/recommendations/fr/code_tools.shtml" target="_blank">site</a> du département sécurité CERN, le même qui m&rsquo;avait permis de découvrir l’analogie <a title="Jour 15 • Brosse à dents" href="http://stage.rbpi.devenet.eu/ma-journee/jour-15-brosse-a-dents">mot de passe et brosse à dents</a>.&nbsp;<a href="#rf1-200" class="backlink" title="Jump back to footnote 1 in the text.">&#8617;</a> </p> </li><li id="fn2-200"> <p> Contraction de <em>grep</em> et de Audit&nbsp;<a href="#rf2-200" class="backlink" title="Jump back to footnote 2 in the text.">&#8617;</a> </p> </li></ol>]]></content:encoded>
			<wfw:commentRss>http://stage.rbpi.devenet.eu/ma-journee/jour-16-a-la-recherche-du-lien-perdu.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jour 8 • Un peu de code source</title>
		<link>http://stage.rbpi.devenet.eu/ma-journee/jour-8-un-peu-de-code-source.html</link>
		<comments>http://stage.rbpi.devenet.eu/ma-journee/jour-8-un-peu-de-code-source.html#comments</comments>
		<pubDate>Wed, 10 Jul 2013 21:13:56 +0000</pubDate>
		<dc:creator><![CDATA[Nicolas]]></dc:creator>
				<category><![CDATA[Ma journée]]></category>
		<category><![CDATA[développement]]></category>
		<category><![CDATA[faille]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[recherche]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://stage.rbpi.devenet.eu/?p=120</guid>
		<description><![CDATA[La journée a commencé avec deux voitures incendiées : en arrivant nous avons pu voir que deux voitures de fonction utilisées par la collectivité locale étaient en cendre. Une personne de la police scientifique était présente et s&#8217;adonnait à des &#8230; <a href="http://stage.rbpi.devenet.eu/ma-journee/jour-8-un-peu-de-code-source.html">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[ <p> La journée a commencé avec deux voitures incendiées : en arrivant nous avons pu voir que deux voitures de fonction utilisées par la collectivité locale étaient en cendre. Une personne de la police scientifique était présente et s&rsquo;adonnait à des prélèvements, photos, etc pour tenter de déterminer la cause. A priori, ce ne serait pas volontaire. </p> 
 <p> <img class="aligncenter size-full wp-image-132" alt="Voitures brûlées" src="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/voitures_brulees.jpg" width="500" height="188" /> </p> 
 <p> La suite du programme a été de tester une application web<sup id="rf1-120"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-8-un-peu-de-code-source.html#fn1-120"  title="Encore en d&eacute;veloppement, sur un serveur d&rsquo;int&eacute;gration">1</a></sup> permettant de gérer le recyclage de gros déchets. <br /> 
P. s&rsquo;est rapidement aperçu que les champs des formulaires n&rsquo;étaient aucunement contrôlés : bonjour les failles XSS. D&rsquo;autre part, l&rsquo;envoi de fichiers n&rsquo;était pas non plus sécurisé : nous avons pu envoyer un fichier PHP et l&rsquo;exécuter. Et enfin les commandes systèmes <code>exec</code>, <code>shell_exec</code> et <code>system</code> n&rsquo;étaient pas désactivées, ce qui nous a permis d&rsquo;avoir la main mise sur le serveur&#8230;<img class="aligncenter size-large wp-image-142" alt="Capture faille exploitée par script PHP" src="http://stage.rbpi.devenet.eu/wp-content/uploads/2013/07/capture_faille_appli_dechets-500x592.png" width="500" height="592" />L&rsquo;après-midi a été consacré à la recherche des lignes problématiques dans le code source que B. a pu nous fournir. Les développeurs ont utilisés le <em>framework</em> Zend pour leur application. Le problème, c&rsquo;est que Zend n&rsquo;échappe les caractères par défaut lors de réception de données<sup id="rf2-120"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-8-un-peu-de-code-source.html#fn2-120"  title="Donn&eacute;es re&ccedil;ues en GET ou en POST">2</a></sup>. Il faut donc qu&rsquo;à chaque ligne où la méthode de Zend pour récupérer une requête est utilisée échapper les caractères avec la fonction <code>htmlspecialchars</code><sup id="rf3-120"><a href="http://stage.rbpi.devenet.eu/ma-journee/jour-8-un-peu-de-code-source.html#fn3-120"  title="L&rsquo;application est en effet cod&eacute;e en PHP">3</a></sup>. <br /> 
Sublime Text a su me fournir rapidement toutes les lignes à corriger. Reste maintenant à pouvoir modifier le code source du projet en intégration&#8230; </p> 
<hr class="footnotes"><ol class="footnotes"><li id="fn1-120"> <p> Encore en développement, sur un serveur d&rsquo;intégration&nbsp;<a href="#rf1-120" class="backlink" title="Jump back to footnote 1 in the text.">&#8617;</a> </p> </li><li id="fn2-120"> <p> Données reçues en GET ou en POST&nbsp;<a href="#rf2-120" class="backlink" title="Jump back to footnote 2 in the text.">&#8617;</a> </p> </li><li id="fn3-120"> <p> L&rsquo;application est en effet codée en PHP&nbsp;<a href="#rf3-120" class="backlink" title="Jump back to footnote 3 in the text.">&#8617;</a> </p> </li></ol>]]></content:encoded>
			<wfw:commentRss>http://stage.rbpi.devenet.eu/ma-journee/jour-8-un-peu-de-code-source.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
