关键词:
/0_1/include/dialog/select_media.php?userid=%3Cscript%3Ealert(1)%3C/script%3E
/0_1/include/dialog/select_media.php?userid=admin123 /0_1/include/dialog/select_media.php?userid=root /0_1/include/dialog/select_media.php?userid=maidou0806 /0_1/include/dialog/select_media.php?userid=52maidou /0_1/include/dialog/select_media.php?userid=wjq_2014 /0_1/include/dialog/select_media.php?userid=mzc-cxy
肉眼观察可以归纳出userid字段的由字母数字和特殊字符‘-_‘组成,如果你足够强大可以看完上万的正常样本,甚至都可以总结取值范围为[0-9a-zA-Z-_]{4,}。如果有上亿的日志上百万的参数,人工如何完成?这时候机器学习可以发挥作用了。
- [a-zA-Z]泛化为A
- [0-9]泛化为N
- [\-_]泛化为C
- 其他字符泛化为T
- admin123泛化为AAAAANNN
- root泛化为AAAA
- wjq_2014泛化为AAAACNNN
1 def etl(str): 2 vers=[] 3 for i, c in enumerate(str): 4 c=c.lower() 5 if ord(c) >= ord(‘a‘) and ord(c) <= ord(‘z‘): 6 vers.append([ord(‘A‘)]) 7 elif ord(c) >= ord(‘0‘) and ord(c) <= ord(‘9‘): 8 vers.append([ord(‘N‘)]) 9 else: 10 vers.append([ord(‘C‘)]) 11 return np.array(vers)
1 with open(filename) as f: 2 for line in f: 3 #切割参数 4 result = urlparse.urlparse(line) 5 # url解码 6 query=urllib.unquote(result.query) 7 params = urlparse.parse_qsl(query, True) 8 for k, v in params:
- Python >= 2.6
- NumPy (tested to work with >=1.9.3)
- SciPy (tested to work with >=0.16.0)
- scikit-learn >= 0.16
pip install -U --user hmmlearn
model = hmm.GaussianHMM(n_components=3, covariance_type="full", n_iter=100) remodel.fit(X,X_lens)
1 with open(filename) as f: 2 for line in f: 3 # 切割参数 4 result = urlparse.urlparse(line) 5 # url解码 6 query = urllib.unquote(result.query) 7 params = urlparse.parse_qsl(query, True) 8 for k, v in params: 9 if ischeck(v) and len(v) >=N : 10 vers = etl(v) 11 pro = remodel.score(vers) 12 if pro <= T: 13 print "PRO:%d V:%s LINE:%s " % (pro,v,line)
学点算法搞安全之apriori
前言 在企业安全建设专题中偶尔有次提到算法的应用,不少同学想深入了解这块,所以我专门开了一个子专题用于介绍安全领域经常用到的机器学习模型,从入门级别的SVM、贝叶斯等到HMM、神经网络和深度学习(其实深度学... 查看详情
学点算法搞安全之apriori
前言 在企业安全建设专题中偶尔有次提到算法的应用,不少同学想深入了解这块,所以我专门开了一个子专题用于介绍安全领域经常用到的机器学习模型,从入门级别的SVM、贝叶斯等到HMM、神经网络和深度学习(其实深度学... 查看详情
hmm的维特比算法简单示例
...牛的关于HMM的技术博客,读完之后,写了一个关于维特比算法的简单示例,用scala和java语言混合编写的。现在上传之。packagecom.txq.hmmimportjava.utilimportscala.collection._/***HMM维特比算法,根据显示状态链条估计隐式链条*@paramstates隐式s... 查看详情
大道至简机器学习算法之隐马尔科夫模型(hiddenmarkovmodel,hmm)详解---预测问题:维特比算法(viterbialgorithm)详解
...本概念和几个要素(2)HMM计算问题:前后向算法(3)HMM学习问题:Baum-Welch算法❤️本文隶属专栏:大道至简之机器学习系列❤️更多精彩文章持续发布,敬请关注本人主页~目录写在前面一、从青... 查看详情
大道至简机器学习算法之隐马尔科夫模型(hiddenmarkovmodel,hmm)详解---学习问题:baum-welch算法推导
☕️本文往期系列文章:【大道至简】机器学习算法之隐马尔科夫模型(HiddenMarkovModel,HMM)详解(1)---开篇:基本概念和几个要素_尚拙谨言的博客-CSDN博客【大道至简】机器学习算法之隐马尔科夫模型(HiddenMarkovModel,... 查看详情
一文搞懂hmm(隐马尔可夫模型)
本文转自于:http://www.cnblogs.com/skyme/p/4651331.html隐马尔可夫模型(HiddenMarkovModel,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进... 查看详情
一文搞懂对称加密:加密算法工作模式填充方式代码实现(代码片段)
...emos上篇介绍了《单向散列加密》,它是一种消息摘要算法。该算法在信息安全领域,有很多重要的应用场景,比如:用户密码 查看详情
一文彻底搞懂bp算法:原理推导+数据演示+项目实战(上篇)
参考技术A反向传播算法(BackpropagationAlgorithm,简称BP算法)是深度学习的重要思想基础,对于初学者来说也是必须要掌握的基础知识!本文希望以一个清晰的脉络和详细的说明,来让读者彻底明白BP算法的原理和计算过程。全文... 查看详情
每天学点python之collections(代码片段)
每天学点Python之collections内容摘抄自:<python大法好>的每天学点Python之collectionscollections模块在内置数据类型(dict、list、set、tuple)的基础上,提供了几个额外的数据类型:ChainMap、Counter、deque、defaultdict、namedtuple和OrderedDict... 查看详情
隐马尔科夫模型hmm鲍姆-韦尔奇算法求解hmm参数
...(一)HMM模型 隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率 隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数(TODO) 隐马尔科夫模型HMM(四)维特比算法解码隐藏状态序列(TODO) ... 查看详情
隐马尔科夫模型hmm前向后向算法评估观察序列概率
...(一)HMM模型 隐马尔科夫模型HMM(二)前向后向算法评估观察序列概率 隐马尔科夫模型HMM(三)鲍姆-韦尔奇算法求解HMM参数(TODO) 隐马尔科夫模型HMM(四)维特比算法解码隐藏状态序列(TODO) ... 查看详情
hmm和veterbi算法
...未深入,做个记录。参考: 隐马尔可夫(HMM)、前/后向算法、Viterbi算法再次总结 谁能通俗的讲解下viterbi算法? 数学之美第二版的第26章本文结构: 1.hmm三要素 2.维特比算法 3.简明例子hmm三要素:1.初始... 查看详情
hmm算法-解码问题
...解码问题,也是挺贴切的~求解这个问题,有一个经典的算法,叫做Viterbi算法。Viterbi是个了不起的人物,数学之美第26就是讲Viterbi和他的Viterbi算法。Viterbi算法针对篱笆网络有 查看详情
机器学习hmm模型算法实例(代码片段)
目录1前向算法求HMM观测序列的概率1.1流程梳理1.2算法总结1.3HMM前向算法求解实例1.4用后向算法求HMM观测序列的概率1.4.1流程梳理1.4.2后向算法流程1.5小结2维特比算法解码隐藏状态序列2.1HMM最可能隐藏状态序列求解概述2.2维特比算... 查看详情
标注-隐马尔可夫模型hmm的探究
...念1.1定义1.2观测序列生成过程1.3HMM的三个问题2概率计算算法2.1直接计算算法2.2前向算法forwardalgorithm2.3后向算法2.4一些概率与期望值的计算3学习算法3.1监督学习3.2非监督学习——Baum-Welch算法3.3Baum-Welch模型参数估计公式4预测算法... 查看详情
机器学习-命名实体识别之hiddenmarkovmodelling(代码片段)
...ion的领域。NamedEntityRecognition(NER)的应用中,最常用的一种算法模型是隐式马可夫模型(HiddenMarkovModelling)-HMM。本节内容主要是通过介绍HMM的原理,以及应用HMM来做一个NER的实例演示。 HMM原理解析在解释HMM的原理之前,先引... 查看详情
概率图模型之em算法
一、EM算法概述EM算法(ExpectationMaximizationAlgorithm,期望极大算法)是一种迭代算法,用于求解含有隐变量的概率模型参数的极大似然估计(MLE)或极大后验概率估计(MAP)。EM算法是一种比较通用的参数估计算法,被广泛用于朴... 查看详情
每天学点python之布尔类型(代码片段)
每天学点Python之布尔类型Python中的布尔类型有两个常量True和False表示。布尔值转化Python中的布尔值是可以转化为数值的,True表示1,而False表示0,可以对其进行数值运算,但不建议这么做,会引起代码的混乱。... 查看详情