文件源码读取 php伪协议,include(文件包含漏洞,php伪协议)
點擊tips
查看元素,也并沒有有用的信息,聯想到題目,include
想起了文件包含漏洞。
構造payload
?file=/../../../../../../flag.php
沒有返回東西。看完wq學到了一個新姿勢:
php偽代碼
構造payload
?file=php://filter/read=convert.base64-encode/resource=flag.php
得到base64加密后的flag.php文件,丟去解密得到flag。
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
【file://協議】
PHP.ini:
file:// 協議在雙off的情況下也可以正常使用;
allow_url_fopen :off/on
allow_url_include:off/on
file:// 用于訪問本地文件系統,在CTF中通常用來讀取本地文件的且不受allow_url_fopen與allow_url_include的影響
使用方法:
file:// [文件的絕對路徑和文件名]
http://127.0.0.1/cmd.php?file=file://D:/soft/phpStudy/WWW/phpcode.txt
【php://協議】
條件:
不需要開啟allow_url_fopen,僅php://input、 php://stdin、 php://memory 和 php://temp 需要開啟allow_url_include。
php:// 訪問各個輸入/輸出流(I/O streams),在CTF中經常使用的是php://filter和php://input,php://filter用于讀取源碼,php://input用于執行php代碼。
php://filter 讀取源代碼并進行base64編碼輸出,不然會直接當做php代碼執行就看不到源代碼內容了。
PHP.ini:
php://filter在雙off的情況下也可以正常使用;
allow_url_fopen :off/on
allow_url_include:off/on
測試現象:
http://127.0.0.1/cmd.php?file=php://filter/read=convert.base64-encode/resource=./cmd.php
測試現象:
http://127.0.0.1/cmd.php?file=php://input
[POST DATA] <?php phpinfo()?>
標簽:php,file,url,filter,漏洞,allow,include
來源: https://www.cnblogs.com/cmredkulaa/p/14008645.html
總結
以上是生活随笔為你收集整理的文件源码读取 php伪协议,include(文件包含漏洞,php伪协议)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: catia怎么进入装配_CATIA教程之
- 下一篇: 动态规划算法php,php算法学习之动态