vulnhub- JIS-CTF-VulnUpload-CTF01笔记

vulnhub- JIS-CTF-VulnUpload-CTF01笔记

此处有坑,在运行靶机环境的时候一直获取不到地址,报Failed to start Raise network interfaces,参考网友的解决办法https://blog.csdn.net/wuzhong8809/article/details/83374140解决了问题,当然前提是要登录靶机, 解决方法在下面

信息收集

nmap扫端口

dirbuster扫目录

image-20191213135056717

顺便得到flag 1

image-20191213134806017

/admin_area

image-20191213183504369

什么有用的信息都没有? 别急, 刷过的ctf题告诉我, 是障眼法——检查下源码

image-20191213184240247

php+HTML
<!-- username : admin
password : 3v1l_H@ck3r
The 2nd flag is : {7412574125871236547895214}
-->
顺便拿到了flag 2

后台有个上传点嘛,在js看到校验规则,直接改后缀绕过,上传大马无法解析,用一句话上个反弹msfshell的php木马

image-20191213185640682

提权

拿到了一个www-datashell, 要提权到root

顺便拿到了flag 3

image-20191213192050993

SUID误配提权

其实,和之前g0rmint的靶机一样,我们也在/home目录下找到了.sudo_as_admin_successful文件(下图);因此,只要我们能成功登录technawi用户,多半又是直捣黄龙

sudo误配的一种利用手法是,查看 /home目录下是否 .sudo_as_admin_successful文件,若有则可以输入当前低权账号的密码直接 sudo su 切换为 root用户,而在已经获取当前账号的系统环境的前提下,要拿到低权账号的密码

image-20191213191636635

那么,找密码吧,经过一番人肉搜寻(ls -al 一把梭),无果;猛然想起,此次渗透居然没有涉及到数据库的交互,不对劲——凭据是否在mysql的配置文件中呢?果不其然,在mysql的文件夹里

image-20191213194246679

毫无波澜地拿到root权限image-20191213195137836

附录SUID滥用提权

查找SUID文件,看有没有能够直接提权的文件

只要搜出来下面列表里的东西,基本可以提权

  • nmap

    有两种提权方式

msf中的模块为: exploit/unix/local/setuid_nmap, 需要nmap的路径

image-20191213202426072

  • vim

    打开vim,按下ESC ,即如下操作

image-20191213202807389

还有一种方法:假如能读写/etc/passwd,只需要文件中本用户所在行的第一个数字改为0保存即可(真实渗透时,原文件记得存档。。。不然,后果很危险)

  • find

  • bash

  • more

  • less

  • cp/mv

    方式一:使用cp覆盖 /etc/shadow ,

    cp具有SUID权限,可以通过替换/etc/passwd进行提权直接生成新账号、密码

  • git

  • tcpdump

  • screen

    严格来说,这属于exp提权的范围了;具有SUIDscreen v4.5.0 存在提权漏洞, 之前做HackTheBox靶场的Wall靶机时遇到过;拿这里exp编译直接打即可

虽然整理的这些姿势,这次一个没用上,不过并不影响,收藏以后备用!

EXP提权

查看内核版本

这部分没有深入测试;猜想还是用这里的提权exp吧,在别的ubuntu上编译好后运行。

反思

其实,无论是这种靶机也好,普通的ctf比赛也罢,用户的登录凭据很大可能会存到txt文件里。

那么我们就全局搜索后缀名为txt的文件

而且,还可以来一手更骚的操作:既然我们要找账号密码,那为何不直接全局搜索含有technawi的文本,命令在下面

image-20191213205441816

舒服了

reference

https://www.jianshu.com/p/6b8d654f39b0
https://www.cesafe.com/3999.html