Comunitatea PHP Romania
MightyDeals

Prima pagină Web Librarii Javascript Protectie pentru Ajax

Protectie pentru Ajax

Discutii legate de AJAX, jQuery, MooTools, Prototype, Dojo, Yahoo! UI Library, Ext, script.aculo.us

Mesaj Vin Mai 06, 2011 8:12 am
teachme Avatar utilizator
Senior Member

Mesaje: 550
Am gasit undeva o idee pentru blocarea accesului direct la unele pagini care au fost create special pentru a fi incarcate prin ajax.

[php]
<?php
if (!isset($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_REFERER']!='http://www.siteultau.ceva/fisier.php')
{
die('bine pa');
}
?>
[/php]

Am incercat si functioneaza.
Mai aveti alte variante ?

Mesaj Dum Mai 08, 2011 6:12 pm
rudisoft Average Member

Mesaje: 109

Din păcate nu te poți baza prea mult pe acea soluție pentru simplul fapt că header-ul Referer este opțional, și poate fi modificat destul de ușor.

Îți recomand să folosesți un token de securitate, pe care să îl păstrezi în sesiune de exemplu, și pe care îl trimiți împreună cu request-ul Ajax. Dacă token-ul corespunde, request-ul este valid.
Professional PSD/Image to XHTML/CSS services: Design2Code | Web Services | Android Developer

Mesaj Dum Mai 08, 2011 8:02 pm
teachme Avatar utilizator
Senior Member

Mesaje: 550
Ideea este ca din start nu poti accesa nimic in afara de pagina de start daca nu esti logat si acolo oricum nu e ajax.
Daca fac cum zici tu, utilizatorul tot va putea accesa paginile incarcate prin ajax.
Generez acel token, il incarc in sesiune, trimit acelasi token si catre pagina ajax si verific daca sunt identice.
Daca el pune acel token in link (pentru ca evident este vizibil undeva in susrsa) , tot poate accesa pagina respectiva.

Mesaj Dum Apr 14, 2013 12:55 am
Google Bot New Member

Mesaje: 1

Înapoi la Librarii Javascript

Copyright © 2001-2013 PHP Romania Gazduire web | Haine online | Gazduire web | Campanii SMS | Gazduire Claus Web | Inregistrare Domenii | Anunturi | Jocuri cu bile
Furnizat de phpBB® Forum Software © phpBB Group
Translation/Traducere: phpBB România
Powered by Simplis