• 20189224 2018-2019-2 《密码与安全新技术专题》第一周作业


    20189224 2018-2019-2 《密码与安全新技术专题》第一周作业

    课程:《密码与安全新技术专题》

    班级: 1892
    姓名: 史馨怡
    学号:20189224
    上课教师:张健毅
    上课日期:2019年2月26日
    必修/选修: 选修

    1.本次讲座的学习总结

    Web应用安全

    常见的web漏洞有:SQL注入,跨站脚本攻击漏洞,CSFR(跨站请求伪造),Web信息泄露,权限问题,逻辑漏洞,第三方程序漏洞,Web服务器解析漏洞,弱口令,SSRF。

    SQL注入:

    由于程序中对用户输入检查不严格,用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据。其本质是由于对输入检查不充分,导致SQL语句将用户提交的非法数据当作语句的一部分来执行。
    按提交字符类型可分为:数字型、字符型、搜索型;按HTTP提交方式可分为: GET、 POST、 Cookie;按注入方式可分为:盲注、union注入、报错注入;编码问题:宽字节注入

    XSS跨站脚本攻击:

    恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页时,嵌入Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。
    XSS的漏洞分为反射型和存储型。通过XSS执行的javascript,可以窃取用户正在浏览的cookies信息;篡改浏览的页面,注入误导信息;捕获所有操作,并发送给黑客;重定向到黑客的钓鱼站点;利用浏览器的漏洞控制用户的机器。

    CSFR跨站请求伪造:

    攻击者盗用用户的身份,以用户的名义发送恶意请求

    Web服务器的解析漏洞:

    (1)IIS 6.0解析漏洞
    ①目录解析
    /test.asp/test.jpg
    ②文件解析
    /test.asp;1.jpg
    IIS6.0 默认的可执行文件除了asp还包含这三种
    ①/test.asa
    ②/test.cer
    ③/test.cdx
    (2)Apache解析漏洞
    Apache 是从右到左开始判断解析,如果为不
    可识别解析,就再往左判断。
    /test.php.xxx
    /test.php.rar
    (3)Nginx解析漏洞
    影响版本:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <=
    0.8.37
    /test.jpg/1.php
    /test.jpg%00.php

    第三方漏洞:

    ①FCKeditor 编辑器上传漏洞,任意创建文件漏洞
    ②eWebEeditor编辑器,上传漏洞,遍历目录漏洞
    ③ThinkPHP任意代码执行漏洞
    ④Struts2远程命令执行漏洞
    ⑤Web中间件(Tomcat、 Weblogic、 Jboss)

    弱口令:

    通常认为容易被别人(他们有可能对你很了解)猜测到或被破解工具破解的口令均
    为弱口令。

    机器学习在Web安全相关应用:

    (1)鱼叉” (Spear Phishing,Catfishing)
    AI可以通过从电子邮件中捕获元数据来检测网络钓鱼,而且不会影响用户的隐私。通过查看电子邮件标题以及对邮件正文数据的二次抽样,机器学习算法可以学习识别能够暴露恶意发件人的电子邮件模式。通过提取和标记这些微观行为,我们可以训练我们的模型来检测是否有人正在尝试网络钓鱼。随着时间的推移,机器学习工具可以根据发件人的可信赖性构建曲线图。
    (2)水坑式攻击(Watering Holes)
    机器学习可以通过分析诸如路径/目录遍历统计等数据来帮助机构对网络应用程序服务进行基准测试。随着时间推移不断学习的算法可以识别出攻击者或恶意网站和应用程序的常见互动。机器学习还可以监控到罕见或不寻常的重新定向模式的行为,重新定向可能指向站点主机或者来自站点主机,还可以监控引荐链接–所有这些都是典型的风险警示指标。
    (3)内网漫游(Lateral Movement)
    内网漫游攻击方法表示攻击者在网络中的移动,这是他们在查找漏洞并应用不同的技术来利用这些漏洞。网络流量输入记录可以告诉您访问者与网站的互动情况。机器学习了解数据的语境,可以动态地提供正常通信数据的视图。有了对典型通信流的更好理解,算法可以完成变化点检测(也就是说,当给定通信模式的概率分布发生变化,并变得不太可能像是”正常”的通信活动的时候,它能够识别出来。
    (4)隐蔽信道检测(Covert Channel Detection)
    使用隐蔽信道的攻击者通过不用于通信的信道传输信息。使用隐蔽信道让攻击者保持对受到威胁的资产的控制,并使用可以随时间执行攻击的战术,而且不被发现。使用隐蔽信道的攻击通常取决于给定网络上所有域的可见性。机器学习技术可以摄取并分析有关稀有领域的统计数据。
    (5)注入攻击(Injection Attacks)
    数据库日志是可以帮助识别潜在攻击的另一个信息来源。机构可以使用机器学习算法来构建数据库用户组的统计概况。随着时间的推移,算法学习了解了这些组如何访问企业中的各个应用程序,并学习发现这些访问模式中出现的异常。
    (6)网页木马(Webshell)网页木马(Webshell)攻击者的目标通常是后端的电子商务平台,攻击者通过这些平台来瞄准购物者的个人信息。机器学习算法可以聚焦正常购物车行为
    的统计,然后帮助识别出不应该以这种频率发生的异常值或行为。
    (7)凭证盗窃(Credential Theft)
    互联网用户–消费者–经常留下登录模式。网站和应用程序可以跟踪位置和登录时间。机器学习技术可以跟踪这些模式以及包含这些模式的数据,以了解什么样的用户行为是正常的,哪些行为则代表了可能有害的活动。

    钓鱼网站URL特征

    URL总体长度与主机字段长度; URL主机字段域名级数与路径中的目录数; URL主机字段与路径的混淆特征;主机特征 URL指向的空间是否是虚拟主机;URL重定向服务;短域名服务;URL中是否具有被入侵特征;文字特征 敏感词

    2.学习中遇到的问题及解决

    • 问题1:PHP中SQL注入的防范措施有哪些

    • 问题1解决方案:通过查阅资料得知,在PHP中,可以通过简单的三种方法来防御SQL注入:①对用户的输入进行过滤处理后,在进行操作,如:addslashes()方法或者开启magic_quotes_gpc方法②针对获取的数值型数据,进行二次转换,如intval(),floatval()③所有需进行数据库查询的变量都使用单引号(')包围,如下:$sql = "SELECT * FROM users WHERE username='".$username."

    • 问题2:机器学习有哪些特点是适用于web安全领域的?

    • 问题2相关思考:机器学习不仅仅是算法的设计和应用,它依赖于可用于训练的数据规模,在互联网普及如斯的今天,流量数据的收集成本越来越低的,可以用于分析和建模的场景越来越多,这是大背景。另一方面,机器学习可以实现自动化,能够降低在重复、简单的决策工作中浪费宝贵的人力成本。尤其在当今大数据的时代背景下,海量数据的安全分析自动化的需求越来越强烈。此外是安全攻防是一个长期动态的过程,传统基于规则和黑名单的安全防御机制难免出现滞后的情况,通过人工智能的应用,在某些场景反而很容易发现和阻断从未遇到的攻击行为。

    3.本次讲座的学习感悟、思考

    随着互联网+,大数据时代的到来,信息安全在我们生活中的扮演的角色越来越重要。网络空间中存在着大量的网络流量、日志信息、系统信号等数据,深入挖掘这些数据的特征及关联关系,能够为网络空间各级应用提供安全防护措施。将机器学习应用到网络安全已成为近年来安全领域的研究热点。针对安全领域的5个研究方向(网络空间安全基础、密码学及其应用、系统安全、网络安全、应用安全),机器学习在系统安全、网络安全、应用安全三个方向有大量的研究成果,而在网络安全基础和密码学及其应用方面的研究较少涉及。其中,系统安全以芯片、系统硬件物理环境及系统软件为研究方向;网络安全主要以网络基础设施、网络安全监测为研究重点;应用层面则关注应用软件安全、社会网络安全。

    4.机器学习在网络安全应用最新研究现状

    目前基于机器学习的网络空间安全研究在系统安全、网络安全及应用安全领域中已有不少解决方案和方法,在包括硬件木马检测、网络入侵检测、社交网络帐号检测等领域均取得了不错的检测效果。但是无论是模型的泛化能力,还是检测准确度、实时性等问题,目前的技术解决方案均不能完全满足网络空间安全的应用需求,并存在一些目前难以解决的问题以及可进一步研究的方向,采用机器学习技术解决网络空间安全问题仍是极具挑战性的工作。同时机器学习技术本身存在一定的研究难点,在解决网络空间安全问题中面临巨大挑战:

    (1)基于机器学习的安全解决方案的可解释性与溯源性

      大多数机器学习的算法都是黑盒模型,其学习算法可能是公开和透明的,但它产生的模型却是不可解释的。例如对恶意代码分类的结论无法获知其原由,尤其当算法出现错判时,很难判别是因为模型参数不正确还是神经网络中某个神经元出现了问题。此外,在网络空间安全问题中,常常要求对安全的源头进行追溯,机器学习技术的解决方案具有无法溯源的根本问题。因此,在未来的研究中,如何能够使机器学习的解决方案具备可解释性、鲁棒性,同时如何能够对网络空间安全问题进行溯源是一个亟待解决的问题。
    

    (2)基于机器学习技术的攻击的防御难度

      目前机器学习技术被广:泛的应用在系统硬件检测、用户身份认证、恶意域名检测、垃圾邮件检测、恶意软件检测等安全检测研究领域。与此同时,攻击者也开始研究如何利用机器学习技术进行有效的网络攻击。例如有学者提出一种基于梯度的方法构造攻击性的数据,将少量攻击性数据放入训练样本中,用于SVM的训练,会导致SVM在检测样本上的错误率明显提升。使用机器学习构建的攻击工具会轻易的躲避现有的基于机器学习的防御设施。采用机器学习技术作为攻击技术,增加了检测及防御的难度,目前的研究中对该类攻击的解决方案较少。在未来的研究中,针对网络空间安全数据的不断增加以及攻击种类多样化的现状,如何能够提高实时监测效率以及解决基于机器学习技术的攻击有待研究者进一步深入研究。
    

    (3)机器学习自身的安全问题

      机器学习构建的模型自身也并非是一定安全的。例如,大量研究采用机器学习构建训练模型,但其输入数据中包含大量的隐私数据,如果攻击者对该模型进行分析,极易得到用户的敏感数据。此外,最近的一些研究中对机器学习构建的模型的输入样本进行攻击,从而使机器学习模型无法取得良好的检测效果。例如增强学习算法DQN,TRPO以及A3C等都能够轻易的被对抗样本所操控,将对抗样本作为输入,即使其中仅包含人类难以察觉的轻微的扰动,也会导致极大的系统性能下降。对抗样本作为机器学习模型的输入,使得系统难以防御它们。 
    

    参考资料

    • 张蕾, 崔勇, 刘静, et al. 机器学习在网络空间安全研究中的应用[J]. 计算机学报, 2018.
    • Green M. The threat in the cloud. IEEE Security & Privacy,2013,11(1):86-89
    • Sommer R, Paxson V. Outside the Closed World: On Using Machine Learning for Network Intrusion Detection[C]// IEEE Symposium on Security & Privacy. 2010.
    • Qiang L, Pan L, Zhao W, et al. A Survey on Security Threats and Defensive Techniques of Machine Learning: A Data Driven View[J]. IEEE Access, 2018, 6(99):12103-12117.
    • Klein J, Bhulai S, Hoogendoorn M, et al. Detecting Network Intrusion beyond 1999: Applying Machine Learning Techniques to a Partially Labeled Cybersecurity Dataset[C]// 2018 IEEE/WIC/ACM International Conference on Web Intelligence (WI). 2018.
    • Chatterjee B, Das D, Maity S, et al. RF-PUF: Enhancing IoT Security through Authentication of Wireless Nodes using In-situ Machine Learning[J]. IEEE Internet of Things Journal, 2018, PP(99):1-1.
  • 相关阅读:
    ZYNQ学习系列之GPIO
    ZYNQ7000系列学习
    新的开始
    mysql-笔记 精度
    mysql-笔记 聚合函数
    QTP自动化测试-连接数据库
    mysql create/insert
    QTP自动化测试-使用数据库-配置ODBC
    QTP自动化测试-在object repository manager中定位不到控件
    QTP自动化测试-调用函数
  • 原文地址:https://www.cnblogs.com/20189224sxy/p/10509804.html
Copyright © 2020-2023  润新知