投稿 | 为什么机器学习在安全、风控领域频频遇冷?

标签: bigdata | 发表时间:2017-03-30 08:00 | 作者:
出处:http://itindex.net/admin/pagedetail

机器学习
作者:toyld 岂安科技搬运代码负责人

机器学习

1959 年,美国塞缪尔 (Samuel) 设计了一个下棋程序,这个程序具有学习能力,它可以在不断的对弈中改善自己的棋艺。4年后,这个程序战胜了设计者本人。又过了 3 年,这个程序战胜了美国一个保持8年之久的常胜不败的冠军。这个程序向人们展示了机器学习的能力,提出了许多令人深思的社会问题与哲学问题。

野望

登高而望,满眼皆是机器学习的颠覆 IT 行业的燎原之火,但是事实是否真的如此?至少目前看来,在安全、风控领域,机器学习的势能还远达不到颠覆的效果。

机器学习的正途

如果我们从机器学习取得不错效果的领域去窥见的话,也许能找到一些思路:无论是语音识别、图片识别、还是 AlphaGO 的应用都有现成的大量的音频、图片、棋谱的样本去训练,而商品推荐、音乐推荐系统这些相对低频的累计用户的正反馈的方式无疑例外的都指出了机器学习的正途无疑是积累样本。

机器学习

AlphaGO

虽然近年来又有类似 GAN 对抗网络这种非监督式机器学习的兴起,但是也鲜闻有特别成功的商业应用。我们这时总结到: 机器学习重要的东西有三样:样本, 样本, 还是样本(也许我们能在本文中找到第四样)。

机器学习为什么如此之火呢?本文不试图管中窥豹,只是简单举个例子,大家可以自行感受。

项目来源>>>

训练样本

csv 格式::strength 代表密码强度;0 代表弱;1 代表一般;2 代表强。

password,strength
kzde5577,1
kino3434,1
visi7k1yr,1
megzy123,1
lamborghin1,1
AVYq1lDE4MgAZfNt,2
u6c8vhow,1
v1118714,1
universe2908,1
as326159,1
asv5o9yu,1
612035180tok,1
jytifok873,1
WUt9IZzE0OQ7PkNE,2
jerusalem393,1
g067057895,1
52558000aaa,1
idofo673,1
6975038lp,1
sbl571017,1
elyass15@ajilent-ci,2
intel1,0
klara-tershina3H,2
czuodhj972,1
faranumar91,1
cigicigi123,1
0169395484a,1
schalke04,1
prisonbreak1,1
asgaliu11,1
gaymaids1,1
trabajonet9,1
go7kew7a2po,1
fk9qi21m,1
memjan123,1
lsdlsd1,0
exitos2009,1
fahad123,1
kswa2mrv,1
yitbos77,1
juliel009,1
pHyqueDIyNQ8vmhb,2

这里只是 TF-IDF 算法找到低词频的密码字符段,然后做个简单的逻辑回归,就在样本量不大的情况下获得了 81% 准确率的密码强度检测模型。

然后我们找到了这么一篇介绍如何检测恶意 URL[1] 的机器学习文章, 相同的算法,只是不同的样本, 现在就连一个程序员都不差了。

机器学习之踵

《Outside the Closed World:On Using Machine Learning For Network Intrusion Detection》[2] 该论文比较详细的分析了机器学习为什么没有在安全监测方面取得广泛应用的原因, 有兴趣的童鞋可以移步到文末‘引用’处去细读,如果你放弃了,那么我们就直接看看下面的总结吧。

1.机器学习是寻找相似性,没有足够多的恶意访问、攻击的样本,无从训练。

2.分类错误的成本很高,且一般实际应用的良好准确率的模型都是 *黑盒* , *无法解释* 、*无法人工干预* 。

3.网络监控到实际的检测对象之间的抽象成本,即比如说一个撞库活动与底层网络信息通讯之间的对应关系有一个抽象、翻译的难度。(虽然这篇不是广告,但是有一句话我还是要讲一下,笔者参与的 Warden 业务风控系统,自己搞了一套通过配置的流量、日志解析成业务事件的组件,虽然不甚完美,但是我们还是做到了)

所以坊间甚嚣尘上的机器学习的传闻是多么美好,我们凑近一看,其实还是镜花水月,所以大部分愿意使用机器学习的公司基本都是拿机器学习的结果当做参考,最终还是要靠人的判断。

但是

上文似乎给机器学习在安全、风控领域应用的前景扣上了不容乐观的帽子,但是故事肯定不会就这么结束,因为十年前当我们断言人工智能是遥不可及、围棋是人类最后且唯一的堡垒的时候也是这么言之凿凿的。

机器学习

双刃剑已然出鞘

McAfee 的 2017 威胁预测报告中[3] 就提到了一起利用机器学习来进行诈骗引起 FBI 调查的案例,如前所说机器学习是学习样本中的相似性,这个案例中就利用推荐系统类似的原理,通过收集到的大量基于人的社交媒体的行为数据,去筛选出容易诈骗的对象。举个几个实际的例子:

如果你经常在微博、脸书上上传你开箱亚马逊的包裹、你就会被标记为一个亚马逊的忠实会员、然后偶尔发一个伪造亚马逊推广的邮件给你。

如果你的 Instagram 上发布了一张你去亚马逊的照片,这时候你很有可能处于经常联系不上的情况,这时候发一个诈骗的邮件或者消息给你的家人。

上述的例子可以套用到生活中的任何场景去,是不是有点细思极恐呢?当我们使用机器学习这个新工具还不利索的时候,实际上攻方已经用的很欢了。

实践中匍匐前进

一、基于提取文本的源数据和结构去检测恶意文件

原文出自《Malicious PDF Detection Using Metadata and Structural Features》[4] , 所述的恶意文件样本来自于>>>

提取特征之后使用随机森林得到了一个 99% 准确率,0.01% 的假误报率的分类模型。

结论:还是传统的靠积累恶意样本的正途。

二、检测基于 DGA 算法的恶意软件的趋势

原文出自 《Detecting the Rise of DGA-Based Malware》[5] ,关于 DGA 算法的简要说明是:DGA 就是恶意程序去动态生成域名去与控制端通讯的域名生成算法。

数据来源于北美的网络供应商的真实 DNS 请求。

首先用聚类的算法尝试将这些编造的域名和请求这些编造的域名的机器分组,再用将生成的模式跟已知的 DGA 算法对比,去发现新的 DGA 变种,成功找到了已知算法之外另一半的未知实现。

结论:传统路数之外的思路。

三、Tensorflow

样本谁都想要,但是你们都得给我,这也许就是 Google 为什么开源 Tensorflow 的最重要的原因吧。

结论:思路的正确使用方式。

说到思路, Google 是不缺的,之前 Google 的图片验证码服务 reCAPCHA 经常使用街景里面识别不出来的门牌号来作为验证码,可爱的用户不自觉的情况下已经不知道无偿的做了多少次分析师了。

也许有一句话叫天道有轮回比较适合接下来的剧情:

街景团队升级了机器学习的算法,世人称之为深度学习, 然后自家的图片识别完了,感觉不错,顺手测了一下之前帮忙识别的 reCAPCHA 组的验证码,结果准确率很不错: 99.8%。于是,现在 Google 的 reCAPCHA 服务已经停了。

引用

[1] http://www.kdnuggets.com/2016/10/machine-learning-detect-malicious-urls.html

[2] http://www.icir.org/robin/papers/oakland10-ml.pdf

[3] https://www.mcafee.com/us/resources/reports/rp-threats-predictions-2017.pdf?clickid=UPuyCF3l6QMNyNnWCy3kw0xtUkhwZeSmTWRaVY0&lqmcat=Affiliate:IR:null:74047:10078:10078:null&sharedid=

[4] http://cs.gmu.edu/~tr-admin/papers/GMU-CS-TR-2012-5.pdf

[5] http://www.covert.io/research-papers/security/From%20throw-away%20traffic%20to%20bots%20-%20detecting%20the%20rise%20of%20dga-based%20malware.pdf

作者:toyld 岂安科技搬运代码负责人

主导各处的挖坑工作,擅长挖坑于悄然不息,负责生命不息,挖坑不止。

End.

转载请注明来自36大数据(36dsj.com): 36大数据» 投稿 | 为什么机器学习在安全、风控领域频频遇冷?

相关 [机器学习 安全 领域] 推荐:

投稿 | 为什么机器学习在安全、风控领域频频遇冷?

- - IT瘾-bigdata
作者:toyld 岂安科技搬运代码负责人. 1959 年,美国塞缪尔 (Samuel) 设计了一个下棋程序,这个程序具有学习能力,它可以在不断的对弈中改善自己的棋艺. 4年后,这个程序战胜了设计者本人. 又过了 3 年,这个程序战胜了美国一个保持8年之久的常胜不败的冠军. 这个程序向人们展示了机器学习的能力,提出了许多令人深思的社会问题与哲学问题.

机器学习领域的几种主要学习方式

- - 我爱机器学习
根据数据类型的不同,对一个问题的建模有不同的方式. 在机器学习或者人工智能领域,人们首先会考虑算法的学习方式. 在机器学习领域,有几种主要 的学习方式. 将算法按照学习方式分类是一个不错的想法,这样可以让人们在建模和算法选择的时候考虑能根据输入数据来选择最合适的算法来获得最好的结果. 在监督式学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果,如对防垃圾邮件系统中“垃圾邮件”“非垃圾邮件”,对手写 数字识别中的“1“,”2“,”3“,”4“等.

机器学习在金融领域有哪些应用?

- - IT瘾-bigdata
由于交易量比较大,交易历史数据精确完备,以及金融领域的量化分析特点,金融领域是比较适合人工智能技术应用的领域. 现在机器学习已经成为金融生态中不可或缺的组成部分,从贷款审批到资产管理,到风险评估. 但是,很少有专业人士能够准确地知道机器学习在日常金融中的应用. 小编在Quora上提取了关于这个问题的一些针对性的回答.

10款人工智能和机器学习领域方面的开源项目

- - 灯火阑珊
GraphLab是一种新的面向机器学习的并行框架. GraphLab提供了一个完整的平台,让机构可以使用可扩展的机器学习系统建立大数据以分析产品,该公司客户包括Zillow、Adobe、Zynga、Pandora、Bosch、ExxonMobil等,它们从别的应用程序或者服务中抓取数据,通过推荐系统、欺诈监测系统、情感及社交网络分析系统等系统模式将大数据理念转换为生产环境下可以使用的预测应用程序.

这么多机器学习的应用场景,金融领域到底有何不同?

- - 机器之心
在金融领域,机器学习可能会产生神奇的效果,尽管它本身并没有什么神奇之处(嗯,也许只是一点点). 然而,机器学习项目的成功更多依赖于构建高效的基础结构、收集适当的数据集和应用正确的算法. 机器学习正在对金融服务业产生重大影响. 让我们来看看为什么金融公司会关心这项技术,以及使用人工智能和机器学习可以实现什么解决方案和如何应用这项技术.

机器学习五步走

- - 我爱机器学习
经常会有人问“我该如何在机器学习方面更进一步,我不知道我接下来要学什么了. 一般我都会给出继续钻研教科书的答案. 每当这时候我都会收到一种大惑不解的表情. 但是进步确实就是持续的练习,保持较强的求知欲,并尽你可能的完成具有挑战性的工作. 因为他是为数不多的几种可以让你真真让你获取坚实知识的媒介. 是的,你可以选择选一门课,注册MOOC,参加一些讨论班.

机器学习之路

- - 我爱机器学习
自从答应简二毛博士将自己的机器学习历程和心得分享给大家至今,转眼间半年已经过去了,感谢简博士分享和开源精神的鼓舞,这也正是本系列关于机器学习介绍博客的动力来源. 之前有些网友,师弟们问我,学习机器学习怎么入手,从看什么书开始. 如果你只愿意看一本书,那么推荐Bishop的PRML,全名Pattern Recognition and Machine Learning. 这本书是机器学习的圣经之作,尤其对于贝叶斯方法,介绍非常完善.

机器学习算法Boosting

- - 标点符
机器学习通常会被分为2大类:监督学习和非监督学习. 在监督学习中,训练数据由输入和期望的输出组成,然后对非训练数据进行预测输出,也就是找出输入x与输出y之间的函数关系F:y = F(x). 根据输出的精确特性又可以分为分类和回归. 分类和回归的区别在于输出变量的类型. 定量输出称为回归,或者说是连续变量预测.

对于立志在网络安全领域发展,应该如何系统学习安全知识?

- - 知乎每日精选
在回答这个问题之前,先废话几句. 还好问主的方向没有定位在 信息安全(网络安全仅仅是信息安全的一个子集,信息安全的很多方面并不是信息技术本身,关乎运营和行政方面之内的……). 成为伟大黑客的关键在于做自己喜爱的事,要把一件事情做好,你必须热爱它. 所以只要你能坚持对安全技术的热爱,到了这种程度,你就会做得更好.

Mahout实现的机器学习算法

- - ITeye博客
使用命令:mahout -h.   在Mahout实现的机器学习算法见下表:. EM聚类(期望最大化聚类). 并行FP Growth算法. 并行化了Watchmaker框架. 非Map-Reduce算法. 扩展了java的Collections类. Mahout最大的优点就是基于hadoop实现,把很多以前运行于单机上的算法,转化为了MapReduce模式,这样大大提升了算法可处理的数据量和处理性能.