用隐式马尔科夫模型分类URI和检测XSS的流程

目录


隐式马尔科夫模型的定义

隐式马尔科夫模型,简称HMM(Hidden Markov Model), 是一种基于概率的统计分析模型,用来描述一个系统隐性状态的转移和隐性状态的表现概率。

区别

隐马尔可夫模型(HMM)和贝叶斯分类器(以朴素贝叶斯为代表)虽然都基于贝叶斯定理,但它们的设计目的、数据假设和应用场景有本质区别。

最主要的区别在于 数据的结构和依赖关系

隐马尔科夫模型:像在分析一个有顺序的句子。它认为每个单词(观测)背后有一个隐藏的词性(状态),并且当前的词性会受到上一个词性的影响。它要同时推断这个隐藏的状态序列。

朴素贝叶斯:像在分析一袋独立的单词(词袋模型)。它看每个词出现的概率来判断这袋词属于哪个类别(如垃圾邮件/正常邮件)。

下面不谈原理,只能谈点流程。


URL为什么要分类?

在HTTP流量分析的时候,一些城市、分支机构、时间的URL需要分类出来过滤掉。

留下一些类似功能接口的URL。


XSS攻击荷载的特征

复制代码
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
<src>
<script>
<alert>
http://
<img>
onerror

流程介绍

预测人心情的案例,它假设有一个我们看不见的状态链(比如情绪),这个状态链是按照马尔可夫性(当前状态只依赖于前一个状态)变化的,并且每个状态会产生一个观测值(比如行为)。我们通过观测值来推测状态链,或者评估观测序列的概率等。

你可以看见朋友小明的动作(看得见),要去猜他背后的心情(看不见),而且心情会每天变化。

下面梳理一些设定的规则:

小明的动作:吃饭、玩游戏、睡觉

小明的心情:开心、难过

规则①:心情会变化(转移概率)

如果今天开心

  • 明天继续开心:70%
  • 明天变成难过:30%

如果今天难过

  • 明天继续难过:60%
  • 明天变成开心:40%

规则②:心情决定动作(发射概率)
开心时:

吃饭:20%

玩游戏:70%

睡觉:10%

难过时:

吃饭:50%

玩游戏:10%

睡觉:40%

规则③:第一天心情(初始概率)

开心:60%

难过:40%

观察到小明三天的动作:玩游戏 → 睡觉 → 吃饭

计算:

第1步:猜第一天心情

小明第一天在玩游戏:

如果是开心:60%×70% = 42%

如果是难过:40%×10% = 4%

→ 所以第一天最可能是开心!

第2步:猜第二天心情

小明第二天在睡觉:

情况A:第一天开心→第二天开心:

42% × 70% × 10% = 2.94%

情况B:第一天开心→第二天难过:

42% × 30% × 40% = 5.04%

情况C:第一天难过→第二天开心:

4% × 40% × 10% = 0.16%

情况D:第一天难过→第二天难过:

4% × 60% × 40% = 0.96%

最大的是5.04% → 所以第二天是难过,而且是从第一天开心变来的。

第3步:猜第三天心情

小明第三天在吃饭:

(只跟踪最大概率的路径:开心→难过→?)

从第二天难过开始:

变开心:5.04% × 40% × 20% = 0.4032%

变难过:5.04% × 60% × 50% = 1.512%

最大的是1.512% → 所以第三天继续难过。


Reference

用隐式马尔科夫模型检测XSS攻击Payload
https://mp.weixin.qq.com/s/iSrV95K75EwDAGVJGdFRTQ

【整理】图解隐马尔可夫模型(HMM)
https://developer.aliyun.com/article/441100

相关推荐
guo_xiao_xiao_13 小时前
YOLO人物肖像发型分类目标检测数据集
yolo·目标检测·分类
过期的秋刀鱼!1 天前
使用都热编码的分类特征
人工智能·算法·决策树·机器学习·分类·数据挖掘
阿图灵2 天前
基于 LSTM 的中文电商评论情感分类:从数据处理到 91% 准确率实战
人工智能·深度学习·分类·nlp·lstm·情感分类
白狐_7983 天前
408数据结构第5章:树与二叉树③——公式分类速查
数据结构·分类·数据挖掘
云水一下3 天前
零基础玩转bWAPP靶场(四十五):XSS - Reflected (JSON)
web安全·json·xss·bwapp·reflected
TAICHIFEI3 天前
光片显微镜海量3D图像重建/拼接软件全分类
3d·分类·数据挖掘
一碗白开水一4 天前
入门实践工程九:基于 BERT 的中文情感分类微调~附:安装依赖库及工程源码
人工智能·深度学习·机器学习·自然语言处理·分类·bert
小趴蔡ha4 天前
09 K 近邻算法入门:从距离理解分类
算法·分类·近邻算法
一碗白开水一4 天前
入门实践工程一:基于 sklearn 的鸢尾花分类(传统机器学习入门)|附:环境依赖及工程源码
机器学习·分类·sklearn
一碗白开水一5 天前
入门实践工程四:基于 PyTorch 的手写数字识别(MNIST 图像分类)|附:环境依赖环境及工程源码
人工智能·pytorch·分类