信息收集
开启靶机,以及kali主机
由于设置的靶机与kali主机网络连接方式均为NAT网络,只需要查看kali主机所属ip段,然后使用nmap扫描靶机获取ip地址以及对应的服务开启的情况。
nmap扫描后,获取到靶机的ip地址以及对应的服务。发现靶机开启了ftp、ssh、http、upnp服务,猜测upnp服务可能时一个关键点。
寻找靶机漏洞
首先查看下,80端口对应的http服务。
未发现可以直接使用的漏洞,(此处的页面展示信息格式感觉十分熟悉,后面才想起了这不是crunch字典生成工具的格式嘛)我使用dib以及dirsearch工具扫描网站的目录,啥也没有,G。
发现存在一个5000端口,先看下。
发现5000端口的服务属于http服务。
先用目录扫描工具扫一波,依旧啥也没有,G。(难受)
下面只有两个方向了,一个是ssh,一个是ftp服务,如果使用ssh,如果使用ssh,需要两个字典,一个是用户名,一个是password字典,这工作量太大了吧。。。靶机作者应该不会这么搞孩子吧(实际应用中,这确实很大概率是一个突破口,弱口令)。另一个方向就是ftp,ftp一样需要两个字典。难啊。
先大概对这两个服务进行下探测,看下是否服务存在版本漏洞。
使用msf寻找漏洞,发现没有对应版本的漏洞。靶机ftp版本为3.0
ssh依旧G。
下一步咋办呢,很烦,但想了下是否有什么东西忘了呢,ftp匿名登录。
啧啧,山重水复疑无路,柳暗花明又一村啊。找到突破口,ftp开启了匿名登录,并且共享文件夹下有一个url文件,先下载下来看下是什么。
url文件是一个可执行文件。既然是可执行文件,那就先执行下。
执行完后,上面提示“有时事情并不明显,发现元素36”感觉可能得逆向看下。
发现一串字符/sh4d0w$s,感觉像是web目录。
ssti漏洞利用
经过测试这是5000端口对应的目录地址。
看到这,我感觉这大概率是ssti漏洞了,但关键的一点是参数是什么?
那下一步就是ffuz大法,别忘了80端口页面显示 6 6 1337leet,这应该是生成的字典种子。
ffuz大法开启,使用ffuf工具。
找到了参数1333tt。上面ffuf工具的用法 $符号需要进行转义,因此前面加了转义符\。 -fs是用过滤回复的,将Response大小为8的过滤掉。
确定了这就是ssti漏洞,下一步上工具tplmap。
看到上面的ok,激动啊。
先反弹个shell吧。
获取普通用户权限
使用sudo -l 发现有可利用RCE代码执行漏洞。打开jail.php文件发现文件中有exec()函数,可以使用反弹shell获取kori用户权限。但发现禁止使用nc,system甚至bash。
查看下socat工具,发现可以使用。
获取高级用户权限
发现可以指定irida用户无密码执行。先将irida.apk复制到kori文件夹下,因为在kori文件夹下我们权限较高。
授予其它用户可以读写kori文件夹的权限。
直接复制到/kori目录下,发现文件所属依旧是irida。
发现将irida.apk复制到/kori目录下的test.apk中需要kori密码。
先在kori目录下创建一个irida.apk,然乎再进行复制即可。
将irida.apk下载下来使用python,使用python开启网络端口直接下载下来
python -m SimpleHTTPServer 8888
使用AndroidKiller工具进行反编译
编译完后,可以在代码页面右键查看查看源码功能进行查看。
此处可以看到eye.of.the.tiger.()是irida用户的密码,但登录错误,找到下载靶机的介绍出发现,可以删除一个.符号。那么密码就是eye.of.the.tiger()
获取root权限
登录成功,同样使用sudo -l查看用户信息,发现存在root无密码执行文件。
此处参数需要二进制。
随便填写一个字符串进行二进制后输出到oras.py文件的执行参数上,发现错误提示参数解码后会被python自带的exec函数进行执行。
经过测试,可以利用,下一步直接反弹shell会话即可。
获取到flag,结束。
总体来说,这个难度对我来讲还是相当可以的(本人菜鸡)。
参考资料
反弹shell原理和常见反弹shell方式:https://zhuanlan.zhihu.com/p/446210083
tplmap下载地址:https://github.com/epinna/tplmap
AndroidKiller下载地址:https://www.onlinedown.net/soft/1229634.htm
Vulnhub 靶场 ORASI: 1:https://www.cnblogs.com/sainet/p/16316274.html
orasi靶机下载地址:https://www.vulnhub.com/entry/orasi-1,660/