사용자가 도시/위치별로 검색 할 수있는 내 search.php
페이지에서 JQuery/AJAX를 통해 search_data.php
페이지로 검색하고 결과는 search.php
에 반환됩니다.PHP로 Jquery/AJAX 요청을 보호하기위한 보안 구멍이 있습니까?
지금이 내가 뭘하는지입니다 :
$_SESSION['verid'] = randomid(12);
$_SESSION['verkey'] == randomid(12);
randomid
12 개 임의의 문자를 생성하는 기능입니다 :이이 search.php
에. 그것은 사람을이 방법
if ($_POST['vuid'] != $_SESSION['verid']) {
header('Location: http://mysite.com/');
die();
} else {
if ($_POST['vukid'] != $_SESSION['verkey']) {
header('Location: http://mysite.com/');
die();
} else {
//both keys correct. process Jquery data.
}
중지 할 것 :이 두 세션 변수 나는이 한 search_data.php
에
("VUID"와 "vukid"라는 이름의) 자바 스크립트 변수로 JQuery와 $.post
요청과 함께 전송됩니다 수동으로 탐색하여 search_data.php
악의적 인 일을하려고합니다 (제 생각에는?) Jquery 만 액세스 할 수 있습니다.
제 질문은, 여기에 "구멍"이 있습니까? 이런 종류의 웹 페이지를 보호하는 좋은 방법입니까?
클라이언트는 사용자가 자바 스크립트로 액세스 할 수있는 모든 항목에 액세스 할 수 있습니다. 자바 스크립트를 사용하여 세션 변수를 얻고 전달하면 클라이언트도 그렇게 할 수 있습니다. PHP로 설정된 세션 변수를 찾고 있다면, 클라이언트는 같은 세션 변수를 가진 페이지에서 서버로 요청을 보낼 수 있습니다. 그들은 세션 변수를 인식 할 필요조차 없습니다. 이 경우 사용자가 다른 도메인의 서버 측 코드를 사용하여 .php 파일에 게시 할 수 없습니다. 그들은 여전히 귀하의 도메인에서 그것을 할 수 있습니다. –