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

OSCP靶场训练冒险之kioprix4:shell逃逸以及利用数据库提权

声明!
学习资源来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页[B站泷羽sec](https://space.bilibili.com/350329294)


有想要了解oscp认证证书的可以私信我哦,泷羽sec新年特惠!!!


kioprix4靶机wp

环境:

攻击机:kali ip地址:192.168.66.141

靶机:kioprix4 ip地址:192.168.66.134

安装好靶机后,使用nmap扫描网段获得靶机ip:

2b4fbbe25bb64f78a573832bfc4e98a4.png

使用nmap -sS -sV -p 22,80,139,445 192.168.66.134查看目标ip的端口详细信息

be7f4323c0834e42aeba80e954202951.png

使用dirb扫描该ip下的文件夹

a094b46ac7b141338d992148129d865b.png

在扫描时我们可以访问该目标网站可以看到该网站是一个登录框

1ab3868dd699493f9b165e55195c27da.png

尝试使用弱口令登录,失败

e92cc3970e2f498b89b10148aef8de49.png

对其尝试使用sql注入,在密码栏处注入,报错了说明其存在sql注入漏洞

25d1a064ec0e4ac3a7d60be5f938ea51.png

回到文件夹扫描,发现其存在一个疑似用户名的php文件

11ac7de47fd64100a546656b1ffd07cb.png

使用这个用户名加上sql注入登录试试

dc0ff4b4c9be4756bb822310536ed31e.png

还是报错,上网查了一下说可能是语法的问题,换个注入语法尝试一下

(之前使用的是1‘ and -- +)

eea9236e670d40639195893e7ffaece8.png

换成1’ or 1=1 -- +,成功登录,获取到用户名密码

a8c8c1fdeff74a918ecd70874115095e.png

利用获取到的用户名密码进行ssh登录

9ddb5d5156f446fbb5a74252bf03531a.png

但是该用户的权限极低,很多基本命令都执行不了

bb28aebd6e8541c9b7f13978a7d63cdc.png

但是可以看到上面有个提示,用?或者help命令获取提示

e361013d908d46fe896b6f68be01fa73.png

只有这些命令,可以考虑以下使用shell逃逸提权

e73a4d765fbf469c8a04f6563855ee12.png

补充:首先来介绍一下什么是受限制的shell。简单理解,受限制的shell是说限制了一个shell的部分命令,像cd、ls、echo,或者是限制了一些环境变量,诸如SHELL、PATH、USER。有些情况下,受限制的shell也会限制包含/的命令,或者限制一些输出符,像>、>>等。常见的受限制shell有:rbash、rksh、rsh

9ca90166761d4e18b85cca7365fbea6d.png

(在网上查的,参考:渗透技巧——如何逃逸Linux的受限制shell执行任意命令_网易订阅)

可以尝试使用echo os.system(‘/bin/bash’)命令执行shell逃逸

a0311edf562648569cecb1a2c48c7edd.png

切换了以后,再使用cd就不会被踢出了

a798dffe04a240e2ae165a6590cd9c12.png

使用ps -ef命令查看服务器进程信息,发现root用户开启了一个mysql进程

06b33e560149457bae66f11d83a745d5.png

然后使用find / -perm -u=s -type f 2>/dev/null命令查看有关suid提权的命令

8a2cad6346114f1da33e0a301918f953.png

没有啥可用信息,但从之前网页收集到信息可以看到该网站是php站点,可以寻找一些php文件看看有没有可以利用的数据

eb8fd225d4a94459a305ea1e01493b82.png

cat试一下,发现了mysql的账号和密码

50128f1035474aa29dbb71c04ccf8869.png

登录数据库:

666d8e9b90a54b65834d2712ab3e57c1.png

在网上查了一下,数据库有个提权方式交UDF提权,可以去看看这篇文章:

linux环境下的MySQL UDF提权_mysql udf提权 linux-CSDN博客

查看udf表

5442dee22b9a4fb3981f909b3224f569.png

利用sys_exec将john添加到管理员组

03abf59cd18c45f3b2aaf28781b63522.png

退出数据库,使用sudo su命令,输入之前获取到的密码。提权成功

44dfb1a8429f45bb9ff26035c64e49b7.png

本次的靶场思路是利用sql注入获取到连接ssh的账号和密码,进去之后利用shell逃逸在受限制的shell上执行命令,然后根据网站结构寻找到登录数据库的账号和密码,利用数据库的UDF提权方式以及sys_exec函数将可登录的账户添加到root组中。

 

http://www.lryc.cn/news/510741.html

相关文章:

  • NIPS2014 | GAN: 生成对抗网络
  • Postman接口测试01|接口测试基础概念、http协议、RESTful风格、接口文档
  • Linux系统编程——详解页表
  • SpringBoot + HttpSession 自定义生成sessionId
  • 循环对称复高斯分布(Circularly Symmetric Complex Gaussian Distribution)
  • xinput1_3.dll放在哪里?当xinput1_3.dll丢失时的应对策略:详细解决方法汇总
  • 基于STM32的智能家居环境监控系统设计
  • Vscode + gdbserver远程调试开发板指南:
  • 大表:适用于结构化数据的分布式存储系统
  • 深入解析MVCC中Undo Log版本底层存储读取逻辑
  • 游戏引擎学习第64天
  • Effective C++ 条款33:避免遮掩继承而来的名称
  • UEFI Spec 学习笔记---4 - EFI System Table(1)
  • 【微信小程序】3|首页搜索框 | 我的咖啡店-综合实训
  • 独一无二,万字详谈——Linux之文件管理
  • React:前端开发领域的璀璨之星
  • C/C++ 数据结构与算法【哈夫曼树】 哈夫曼树详细解析【日常学习,考研必备】带图+详细代码
  • 基于NodeMCU的物联网窗帘控制系统设计
  • 喜报 | 擎创科技入围上海市优秀信创解决方案
  • windows10下使用沙盒多开uiautoanimation可行性验证
  • 电脑报错wsdprintproxy.dll丢失?修复wsdprintproxy.dll文件缺失的实用方法
  • Kubernetes 的资源管理方式
  • layui动态拼接生成下拉框验证必填项失效问题
  • VUE3+VITE简单的跨域代理配置
  • Xdebug
  • IDEA | SpringBoot 项目中使用 Apifox 上传接口
  • 列表分页返回对象
  • 微软edge浏览器 v131.0.2903.99便携版
  • Prometheus 专栏 —— Prometheus入门介绍
  • 元宇宙在教育行业主要有哪些应用场景?