DC-9靶机
文章目录
- DC-9靶机
- 信息收集
- web渗透
- 后台渗透
- 用户横向移动
- 权限提升
- 靶机总结
信息收集
- 扫描目标主机存在的端口信息 存在80和22端口 看来思路应该不会有太大变化了,但是ssh端口是处于过滤的状态
- 进行漏洞扫描也没扫描出有可以利用的 但知道了一些界面
web渗透
- 访问网站,点击这不同的模块,发现一个模块把所有人的信息都列出来了,而且还使用ID编号,很怀疑存在SQL注入漏洞
- 来到另外一个搜索界面,发现可疑搜索姓和名,对刚才找到的个人信息进行尝试搜索,Mary
- 发现返回了mary的个人信息
- 只有这里能提交数据,尝试测试注入点,怀疑是post型SQL注入,构建payload
mary'
,没什么,输入mary'#
发现依旧能返回mary的个人信息,确定这就是注入点
- 对其提交的数据进行抓包,将数据包内容保存到sqlmap目录下的DC-9.txt文件中
- 开始对数据包进行sqlmap攻击测试
python sqlmap.py -r test/DC-9.txt -batch -p search -dbms mysql -dbs
,根据回显结果,对可疑的数据库,表名和列名继续攻击
python sqlmap.py -r test/DC-9.txt -batch -p search -dbms mysql -dbs
- 成功爆破出了所有用户的用户名和密码,将其保存到文件中,
- 了解了一下,上面那些是用来登录shh的,登录网站的账密在另外一个数据库中,继续爆破得出密码
856f5de590ef37314e7c3bdf6f8a66dc
- 看得出来是一个md5的密码,取网站上解密
transorbital1
后台渗透
- 登录到后台发现出现了一个新的功能界面。可以提交数据,尝试提交后发现下面提示文件不存在,又想到感觉是文件包含漏洞
- 提示的是file,就是要file当作变量,读取
/etc/passwd
文件进行测试,发现成功读取、
- 尝试查看阿帕奇日志文件写入shell,发现不能回显,又想起来数据库爆出来很多账密,但是根据是信息收集得到的消息,发现ssh是过滤掉的
- 据了解,是可能使用
knock协议
进行过滤的,但也能开启,需要访问knock设置的三个端口就能开启ssh端口,上网查了一下,找到了保存knock信息的文件
- 文件包含尝试读取文件,得到了需要访问的三个端口 7469 8475 9842
- 访问端口可以使用knock工具直接访问 IP+三个端口,也可以使用nc去访问。nc访问端口必须是按续访问这三个端口。发先ssh端口成功开启
用户横向移动
- 使用Hydra或者美杜莎对账号和密码进行爆破登录,寻找可以成功登录的账号密码
- 发现给出了很多可以登录的账密,只能登录查看一下有没有隐藏文件了,可以查看其他目录寻找一下哪个用户目录下有隐藏文件
- 发现
fredf
用户就可以使用sudo -l
命令,能够免密码使用root,看来关键就在这里了
权限提升
- 寻找到突破点,那就去查看一下这个目录文件,发现是一个项目文件,来到文件上层看一看,发现一个
test.py
文件
- 查看py文件脚本内容,发现可以将第一个参数文件读取,然后追加到第二个参数文件之中。这就很难不想到之前用到的
teehee
了,将内容写入到文件中,那就肯定是sudoers或者passwd了
- 这里以sudoers为例,使用命令
echo fredf ALL=(ALL:ALL) NOPASSWD: ALL> sudo
将fredf可以以root权限无密码执行任何命令写入到一个文件下。利用test文件将该文件内容追加到/etc/sudoers
文件中。sudo -l发现已经更新了。直接sudo su
就能到root权限下了
echo fredf ALL=(ALL:ALL) NOPASSWD: ALL> sudo
- 获取靶机flag
靶机总结
- 本次靶机还是很不错的,和DC-8都使用到了
sqlmap
进行SQL注入的爆破,获取账密 - 需要获取两个数据库的内容,一个登录后台,一个使用ssh连接
- 难点就在于很难想到时knock协议,了解之后才知道knock会让端口处于过滤状态,只需要访问knock设计的三个端口即可开放过滤的端口,knock配置保存在
/etc/knockd.conf
- 本次靶机的文件包含漏洞还是提示的很明显的,网页直接返回 file不存在
- 爆破ssh登录可以使用
hydra
和美杜莎进行爆破登录 sudo -l
发现是一个深层的二进制文件,可以去其上级找一找有没有该文件的源代码- 免密码使用root追加数据,首选
sudoers
和passwd