目录
使用arp-scan进行IP地址探测
发现目标主机ip地址为172.30.1.130
使用工具nmap
-v 显示详细信息(支持多个v显示更详细)
-p- 扫描所有端口
-T4 进行野蛮的扫描(速度快,常用的选项)
-sV 显示端口服务的版本
-sC 使用nmap自带的脚本引擎扫描
我们通过Nmap扫描发现目标主机有两个域名资产
我们的第一个思路就可以通过目标主机的Web进行
HTTP探测
通过访问HTTP和HTTPS并没有发现有用信息,联想到通过扫描发现的两个域名
DNS1:earth.local
DNS2:terratest.earth.local
进行域名解析(hosts文件)
域名写入/etc/hosts
通过域名访问
http://earth.local/ http://terratest.earth.local/ 发现一个信息发送界面作用未知三串疑似密文的数字
目录枚举的工具有很多,我们使用kali自带的dirb进行后台扫描
使用dirb扫描https://earth.local/站点
我们发现了一个admin响应码301的目录 我们通过访问看到这是一个管理员的登录窗口。还发现了一个cgi-bin的目录403我们被拒绝访问。
使用dirb扫描https://terratest.earth.local/ 站点
看到第一个还是cgi-bin的目录,还是403访问不了
第二个index.html的目录,这是网站的首页文件
第三个robots.txt 这个文本文件是告诉网站搜索引擎哪些内容不应被搜索引擎爬取
这是种约定俗成的规则,不能被爬取的内容一定是很重要,越是不让我们访问,我们就应该越访问
我们使用curl查看页面信息这样比较方便
-k 不对证书做检查
我们发现了一个/testingnotes.*文件,我们猜测这应该是一个以txt后缀的文本文件
我们直接使用curl看一下这个文件
我们从文件内容可以看到这是XOR的加密方式,得知了一个testdata.txt的文本文件用于测试加密,管理员的用户名terra。
我们得知了一个testdata.txt的文本文件用于测试加密,我们直接使用curl查看一下这个文本文件的内容。
得到了加密方式XOR,用来加密的内容也有了
我们可以看到这是一个16进制的数组
我们使用CyberChef来解密一下
这样我们就得到了管理员的密码。
https://earth.local/admin
用户名 terra
密码 earthclimatechangebad4humans
我尝试登录试试
看到一个命令行,我们试着输入一下,可以正常输出
探测命令注入的流程:
1. 是否调用系统命令
2. 命令或命令的参数是否可控【确认可控字段】
3. 能否拼接注入命令
4. 能否通过代理(如Burp suite)拦截修改命令
利用命令执行漏洞获取系统的SHELL-GetSHELL
- 确认目标系统是否有nc工具:which nc
Kali打开4444端口侦听,等待目标主机连接
|
程序用户发现不能执行IP地址,所以进行编码转换绕过
|
|
|
|
我们已经获得了目标主机的SHELL
|
|
|
|
查找系统中由SUID权限的文件
我们看到一个reset_root的文件,这应该是一个重置root密码的文件
我们对这个文件做检查
对该文件做分析,我们使用kali中的工具
使用nc把该文件传给kali
使用kali做侦听
通过重定向传输该文件
校验数据完整性—hash(哈希)算法
md5sum—计算文件的MD5值(128位)
md5sum /usr/bin/reset_root(靶机)
md5sum reset_root(kali) 确保一致
利用ltrace跟踪调用情况
发现没有这三个目录
那我们就去创建这三个目录
使用touch创建这三个目录
创建之后我们运行这个文件
运行之后我们可以看到密码已经重置为Earth
我们已经登录成功了,拿到root权限了
查看当前目录下的旗
我们看到了地球,这表明已经夺旗成功了
1、使用arp-scan只能用在局域网环境探测存活主机IP地址。
2、在开始没有思路时可以对目标主机的web下手。
3、目录枚举时要选对合适的字典,才能更精准的把控目标的信息。
4、加密密码是16进制我们要把它先转换。
5、获得管理员密码和账号登录可以先id确认一下是否有回显。
6、再确认目标主机是否有nc,因为我们要使用kali的工具进行分析。
7、使用目标主机连接kali,发现IP地址不能被输入,我们可以使用base64加密,欺骗目标主机,或者可以把id地址转换成十进制绕过达到欺骗目标主机的目的。
8、由于目标主机限制太多,不能肆意发挥,所以我们把需要分析的文件,发动我们的kali中,kali工具较多,方便我们进行文件分析。
9、文件传输后我们使用md5sum—计算文件的MD5值(128位)校验一下数据的完整性。
10、ltrace工具:跟踪进程调用库函数的情况运行文件查看在哪一步出错,精准把控。