Vulnhub实战-JIS-CTF_VulnUpload靶机👻
Vulnhub实战-JIS-CTF_VulnUpload靶机
下载地址:http://www.vulnhub.com/entry/jis-ctf-vulnupload,228/
你可以从上面地址获取靶机镜像,然后导入VM中开启就行。即刻开干!!
1.获取靶机ip,以及开启了哪些服务
我们在VM中导入靶机开启之后,就不用管了,在kali里面进行主机探测,端口扫描,服务发现
我们首先进行主机发现:
因为我的局域网内虚拟机开得比较多,如果你也有这种情况,你可以通过MAC地址找到对应的IP地址,VM里面MAC地址在设置里面查看。我们发现192.168.33.117
就是那台靶机。接下来进行端口扫描,服务探测!
nmap -sn 192.168.33.0/24
2.端口扫描,服务发现
nmap -sV -p- -O 192.168.33.117
我们可以看到开启了22,80端口,证明开启了SSH,web服务,还发现了操作系统是ubuntu,这三个信息将是下面进行渗透的关键。
3.系统漏洞分析
针对 SSH 服务,我习惯从弱口令和系统漏洞两方面进行攻击。弱口令方面,我用常见用户名和常见密码进行暴破,虽然几率不大:
我们可以用kali自带的hydra工具进行SSH的账号密码爆破,字典自备噢!
https://lecloud.lenovo.com/share/4iPvrb3BgyoW4aMwu(密码:k9zu)
你也可以用这个字典!不要问我为啥不分享百度网盘,因为我没有会员!
payload: hydra -L '/root/fuzzDicts-master/userNameDict/user.txt' -P '/root/fuzzDicts-master/passwordDict/top6000.txt' -e sr -f -V -t 30 -I 192.168.33.117 ssh
这个得等他扫一会,我们等会再来看看,大概率是扫不出来的!比较耗时间!
SSH 服务的系统漏洞查找方面,我推荐 searchsploit 工具。精确搜索 OpenSSH 7.2p2(这个是我们上面发现的版本!):
searchsploit OpenSSH 7.2p2
我们发现存在一个用户名枚举漏洞,刚好,要能找到有效用户名,将有助于暴破 SSH 口令。但是这个py文件我的机器少了一些模块,跑不起来。不过大概率应该跟上面差不多!我们也可以看看apache版本apache httpd 2.4.18存在什么漏洞,让我来瞅瞅!
先前服务探测时找到的准确版本为 apache httpd 2.4.18,那么只有一个漏洞内存泄漏的漏洞,没多大价值。
这个阶段系统漏洞只能分析到这个程度,虽然知道发行套件为 ubuntu,但不知道具体版本、系统架构,很难准确的找到可用的操作系统漏洞,所以,没必要继续在系统漏洞层面耗时,后续如果能拿到 webshell,提权时再来深入分析,现在移步 web 应用层面。
4.Web应用分析
- 访问之前找到的 web 端口自动重定向到 http://192.168.56.6/login.php:
看了下 html 源码,没啥有价值的信息;枚举用户名也不能;或许可以暴破下弱口令,刚才的 SSH 暴破还没完呢,web 登录暴破还是先放一放,看看有无其他页面。
大概 2015 年之前,扫 web 端口 – 找 web 后台 – 弱口令登后台 – 上传一句话,是常见的高成功率的攻击手法,其中,能否找到后台地址,是成功的关键。换言之,我需要发现更多 web 内容。具体而言,我希望找到更多文件、页面、子目录,最好能找到源码打包的敏感文件、后台运维的管理页面、存放业务逻辑的子目录,以拓展攻击面。通常,我习惯结合枚举和爬虫两种方式来发现 web 内容。
枚举之前,借助 firefox 插件 wappalyzer 确认后端语言为 php:
因为确定了该靶机的后端语言是用PHP写的,所以我们通过dirsearch目录扫描工具扫描一下php的目录:
python3 dirsearch.py -u 'http://192.168.33.117' -e php -i 200
我们发现扫出来了几个目录,凭我CTF的直觉,robots.txt里面可能有好东西,让我来瞅瞅!的
网页打开robots.txt,我们发现如下页面
1.第一个flag
我们打开/flag文件获得第一个flag
2.第二个flag
接着我们依次查看剩余各个目录,我们发现其他的都打不开,只有/admin_area/,/uploaded_files这两个页面能够打开,我们通过uploaded页面猜测应该存在上传点,打开/admin源码之后发现第二个flag,还有一对用户名密码。
3.第三个flag
我们通过这个用户名密码登录之后发现果然有一个上传点。心机之蛙,一直摸你肚子!果然不出所料
接下来我猜你们应该也能想到,上传一句话木马直接连蚁剑干!!!
一句话木马我相信在做的各位都会上传,这里并没有做任何限制!,然后我们进入蚁剑就是一顿看,发现有一个flag.txt和一个hint.txt,我们在hint.txt发现第三个flag,然后还有一句话,提示让我们找到用户technawi的密码去读这个flag.txt,果然这个flag.txt不能直接打开
4.第四个flag
刚刚上面看到了,我们接下来需要通过去找到technawi用户的密码,我们通过linux的命令去搜寻technawi用户有关的文件!直接在蚁剑的虚拟终端执行即可!
find / -user technawi -type f 2>/dev/null
//还是吃了linux命令不熟的亏呀,这个2>/dev/null一开始并不知道啥意思,百度一下才知道这是将标准出错都丢入到linux的黑洞文件了,看不见了,终端就不会有那么多冗余信息,详细细节请自行百度!
接下来我们挨个打开看看,发现在/etc/mysql/conf.d/credentials.txt文件内存在technawi用户的密码哦,并且还有第四个flag。
不要忘了这里还有应该.sudo_as_admin_successful文件,后面会用到噢!
5.第五个flag
拿到这个用户名密码之后我们应该干嘛呢,还记得刚开始扫描端口发现了22端口开启了SSH服务嘛,连接SSH去查看最后一个flag.txt文件,应该最后一个flag在那里面了。
ssh technawi@192.168.33.117
发现成功连接,直接去/var/www/html目录下面去读取flag.txt,成功获取第五个flag!!!
5.提权
不要忘了刚刚说到的.sudo_as_admin_successful文件,说明technawi用户能够用自己的密码登录root用户
最后成功获得5个flag!提权成功!!!★,°:.☆( ̄▽ ̄)/$:.°★ 。
Vulnhub实战-JIS-CTF_VulnUpload靶机👻的更多相关文章
- Vulnhub实战-dr4g0n b4ll靶机👻
Vulnhub实战-dr4g0n b4ll靶机 地址:http://www.vulnhub.com/entry/dr4g0n-b4ll-1,646/ 描述:这篇其实没有什么新奇的技巧,用到的提权方式就 ...
- Vulnhub实战-doubletrouble靶机👻
Vulnhub实战-doubletrouble靶机 靶机下载地址:https://www.vulnhub.com/entry/doubletrouble-1,743/ 下载页面的ova格式文件导入vm ...
- Vulnhub实战-DockHole_1靶机👻
Vulnhub实战-DockHole_1靶机 靶机地址:https://www.vulnhub.com/entry/darkhole-1,724/ 1.描述 我们下载下来这个靶机然后在vmware中打 ...
- Vulnhub实战-Dockhole_2靶机👻
Vulnhub实战-Dockhole_2靶机 靶机地址:https://www.vulnhub.com/entry/darkhole-2,740/ 1.描述 hint:让我们不要浪费时间在蛮力上面! ...
- Vulnhub实战-grotesque3靶机👻
Vulnhub实战-grotesque3靶机 靶机地址:http://www.vulnhub.com/entry/grotesque-301,723/ 1.靶机描述 2.主机探测,端口扫描 我们在vm ...
- Vulnhub实战-FALL靶机👻
Vulnhub实战-FULL靶机 下载地址:http://www.vulnhub.com/entry/digitalworldlocal-fall,726/ 1.描述 通过描述我们可以知道这个靶机枚举 ...
- Vulnhub实战-rtemis靶机👻
Vulnhub实战-rtemis靶机 下载地址:http://www.vulnhub.com/entry/r-temis-1,649/ 描述 通过描述我们知道这个靶机有两个flag 主机发现 通过nm ...
- vulnhub之SP:Harrison靶机
下载地址:‘https://www.vulnhub.com/entry/sp-harrison,302/’ 环境:靶机放在virtualbox上运行,网卡模式 攻击机:kali Linux运行在VMw ...
- Vulnhub实战靶场:ME AND MY GIRLFRIEND: 1
一.环境搭建 1.官网下载连接:https://www.vulnhub.com/entry/me-and-my-girlfriend-1,409/ 2.下载之后,使用Oracle VM Virtual ...
随机推荐
- ARP:地址解析协议
我们假设这样一个场景:你需要和你网络中的一个设备进行通信,这个设备可能是某种服务器.你用来创建这个通信的应用已经得到了这个远程主机的ip地址,也意味着系统已经有了用来构建它想要在第三层到第7层传递数据 ...
- Redis Jedis lua脚本
参考:http://redisdoc.com/script/eval.htmlhttps://blog.csdn.net/diudiu2025/article/details/86483043fina ...
- shiro(二)
public class AuthorizerTest { @Test public void testIsPermitted() { login("classpath:shiro-auth ...
- ES6扩展——对象的扩展(简洁表示法与属性名表达式)
1.简洁表达法. 当属性名与属性值相同时,可省略属性值:例如:{name : name}可以写成 {name} 属性方法中,可省略冒号与function,直接 属性名(){}即可.例如{say : f ...
- roscore启动不完全问题
运行roscore,得到如下日志,且一直卡着无法继续执行 ... logging to /home/xbit/.ros/log/79f2952c-589c-11ea-8213-d0abd5e7d222 ...
- IMO 1977 第 2 题探析
原题:在一个有限的实数数列中,任意 7 个连续项之和为负数,且任意 11 个连续项之和为正数.求这个数列最多有多少项. 解法一:记这个数列为 a1, a2, ..., ak,问题等价于求 k 的最大值 ...
- SpringBoot笔记(7)
一.单元测试 1.JUnit5简介 Spring Boot 2.2.0 版本开始引入 JUnit 5 作为单元测试默认库 作为最新版本的JUnit框架,JUnit5与之前版本的Junit框架有很大的不 ...
- CPU内部结构域寄存器
CPU内部结构域寄存器 64位和32位系统区别: 寄存器是CPU内部最基本的存储单元. CPU对外是通过总线(地址.控制.数据)来和外部设备交互的,总线的宽度是8位,同时CPU的寄存器也是8位,那 ...
- 【第八篇】- Git 查看提交历史之Spring Cloud直播商城 b2b2c电子商务技术总结
Git 查看提交历史 Git 提交历史一般常用两个命令: git log 在使用 Git 提交了若干更新之后,又或者克隆了某个项目,想回顾下提交历史,我们可以使用 git log 命令查看. 针对 ...
- Java中int和short的转化
例子[1]: 第一种情况: short a = 1; a = a + 1; // 这一步会报错 System.out.print(a); 编译器会报错,原因如下: 第二种情况: short a = 1 ...