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

目录

  • 1.本次讲座的学习总结
    • 学科背景
    • 典型的攻击方式
    • 威胁方-防护方的非对称性
    • Part I Web应用安全
    • Part II 隐私安全
  • 2.学习中遇到的问题及解决
  • 3.本次讲座的学习感悟、思考等
  • 4.“通过机器学习方法保护网络安全”最新研究现状
    • DDoS Attack Identification and Defense Using SDN Based on Machine Learning Method
    • Anomaly Based Distributed Denial of Service Attack Detection and Prevention with Machine Learning
    • Securing the Internet of Things and Wireless Sensor Networks via Machine Learning: A Survey
    • An Intelligent Software defined Network Controller for preventing Distributed Denial of Service Attack
    • Detection of Flow Based Anomaly in OpenFlow Controller: Machine Learning Approach in Software Defined Networking
  • 参考资料

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

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

1.本次讲座的学习总结

讲座主题:web安全与内容安全

学科背景

   随着信息技术的不断发展(通信(电报、电话)——计算机——网络——网络化社会),作为信息保护手段的密码学也经历了三个发展阶段:从手工阶段的斯巴达加密棒到机械阶段的恩格玛密码机,再到计算机阶段形成的近代密码。快速电子计算机和现代数学方法一方面为加密技术提供了新的概念和工具,另一方面也给破译者提供了有力武器。

典型的攻击方式

• 高级持续性威胁(Advanced Persistent Threat,APT)
APT是黑客以窃取核心资料为目的,针对客户所发动的网络攻击和侵袭行为,是一种蓄谋已久的“恶意商业间谍威胁”。这种行为往往经过长期的经营与策划,并具备高度的隐蔽性。APT的攻击手法,在于隐匿自己,针对特定对象,长期、有计划性和组织性地窃取数据,这种发生在数字空间的偷窃资料、搜集情报的行为,就是一种“网络间谍”的行为。
APT的典型攻击实例之一就是2010年发生在伊朗布什尔核电站的“震网Stuxnet蠕虫攻击”。遭遇超级工厂病毒攻击的核电站计算机系统实际上是与外界物理隔离的,理论上不会遭遇外界攻击。所以制造震网病毒的攻击者并没有广泛地去传播病毒,而是针对核电站相关工作人员的家用电脑、个人电脑等能够接触到互联网的计算机发起感染攻击,以此为第一道攻击跳板,进一步感染相关人员的移动设备,病毒以移动设备为桥梁进入“堡垒”内部,随即潜伏下来。而原本应长期潜伏在计算机控制系统中的震网(Stuxnet)病毒,最终“暴露身份”居然是因为一个低级失误——一个编程错误使其能够扩散到 “古老的”Windows(Windows 95和98)系统,而震网病毒本身并不支持这些操作系统。在这场网络战中“牺牲”的蓝色电脑屏幕引起了伊朗Natanz核试验室的怀疑。
• 第三方恶意代码注入
2015年9月12日,研究人员发现有APP在启动、退出时会通过网络向某个域名发送异常的加密流量,行为非常可疑。经过调查发现,AppStore上的TOP5000应用有76款被感染。到此时,本质是第三方代码恶意注入的XCodeGhost事件迅速升温,成为行业热点。
开发人员的Xcode安装包中,被别有用心的人植入了远程控制模块,通过修改Xcode编译参数,将这个恶意模块自动地部署到任何通过Xcode编译的苹果APP(iOS/Mac)中。受感染的APP启动、后台、恢复、结束时上报信息至黑客控制的服务器。黑客可以下发伪协议命令在受感染的iPhone中执行。黑客能够通过上报的信息区分每一台iOS设备,然后如同已经上线的肉鸡一般,随时、随地、给任何人下发伪协议指令,通过iOS openURL这个API来执行。黑客可以在受感染的iPhone中弹出内容由服务器控制的对话框窗口。
• 上帝攻击模式(GPT)
用户画像是根据用户社会属性、生活习惯和消费行为等信息而抽象出的一个标签化的用户模型。构建用户画像的核心工作即是给用户贴“标签”,而标签是通过对用户信息分析而来的高度精炼的特征标识。
20189230杨 2018-2019-2 《密码与安全新技术专题》第1周作业_第1张图片

威胁方-防护方的非对称性

– 攻防技术非对称
• 大量自动化攻击工具出现造成。
– 攻防成本非对称
• 攻防技术的非对称带来了攻防成本的非对称。
• 风险成本也极低
• 对于国家安全而言,攻防成本的非对称性具有特殊的意义。
– 攻防主体非对称
• 弱小一方与超级大国之间的实力差得到了大大弥补。个人也拥有了挑战群体的机会。

Part I Web应用安全

常见的Web漏洞——
20189230杨 2018-2019-2 《密码与安全新技术专题》第1周作业_第2张图片

SQL注入——

• 漏洞介绍
所谓的SQL Injection,即SQL注入,其本质是由于对输入检查不充分,导致SQL语句将用户提交的非法数据当作语句的一部分来执行。
• SQL注入分类
(1)按提交字符类型可分为: 数字型 字符型 搜索型
(2)按HTTP提交方式可分为: GET、POST、Cookie
(3)按注入方式可分为: 盲注 、 union注入、 报错注入(万能密码)
(4)编码问题:宽字节注入(构造[`])
• 如何判断?
(1)单引号判断
(2)数字型注入判断
(3)字符型注入判断
(4)搜索型注入判断

XSS跨站脚本攻击——

• 漏洞介绍
恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。
• XSS漏洞分类
(1)反射型XSS
(2)存储型XSS
• 持久型跨站脚本攻击场景

  1. 正常服务器信息
  2. 服务器存储恶意代码
  3. 用户浏览网页
  4. 服务器将恶意代码返回给用户
  5. 客户端浏览器执行恶意代码

    CSRF跨站请求伪造——

    • 漏洞介绍
    CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。尽管听起来像跨站脚本(XSS),但它与XSS非常不同,XSS利用站点内的信任用户,而CSRF则通过伪装成受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具危险性。
    • CSRF的常见特性
    (1)依靠用户标识危害网站
    (2)利用网站对用户标识的信任
    (3)欺骗用户的浏览器发送HTTP请求给目标站点
    (4)另外可以通过IMG标签会触发一个GET请求,可以利用它来实现CSRF攻击。
    • 示例
    一个网站用户Bob可能正在浏览聊天论坛,而同时另一个用户Alice也在此论坛中,并且后者刚刚发布了一个具有Bob银行链接的图片消息。设想一下,Alice编写了一个在Bob的银行站点上进行取款的form提交的链接,并将此链接作为图片src。如果Bob的银行在cookie中保存他的授权信息,并且此cookie没有过期,那么当Bob的浏览器尝试装载图片时将提交这个取款form和他的cookie,这样在没经Bob同意的情况下便授权了这次事务。
    CSRF是一种依赖web浏览器的、被混淆过的代理人攻击(deputy attack)。在上面银行示例中的代理人是Bob的web浏览器,它被混淆后误将Bob的授权直接交给了Alice使用。
    20189230杨 2018-2019-2 《密码与安全新技术专题》第1周作业_第3张图片

    弱口令——

    • 什么是弱口令?
    弱口令(weak password) 没有严格和准确的定义,通常认为容易被别人(他们有可能对你很了解)猜测到或被破解工具破解的口令均为弱口令。弱口令指的是仅包含简单数字和字母的口令,例如“123”、“abc”等,因为这样的口令很容易被别人破解,从而使用户的计算机面临风险,因此不推荐用户使用。

Part II 隐私安全

用户轨迹——

• Strava应用程序使用手机的GPS追踪用户何时何地进行锻炼,并通过分享进行社交。去年十一月,该网站发布了一幅数据可视化图表,图片上显示了来自世界各地的用户的活动,其中包含三万亿个经纬度点上用户们进行的十亿次活动。但一位分析师指出,这个热力图地图可以轻易泄漏军事基地的位置和人员信息。

机器学习——

• “鱼叉”(Spear Phishing,Catfishing)
网络钓鱼是今天最常见的攻击媒介,而且非常成功。这种攻击利用了个人对通信工具的熟悉,如社交媒体和电子邮件,通过附件或链接向不知情的收件人发送恶意内容。这种攻击的有效性依赖于攻击者误导最终用户点击或下载恶意有效载荷并在之后绕过内部控制的能力。目前其不断增加的破坏性和勒索软件有效载荷使得这种攻击更加严重。
AI可以通过从电子邮件中捕获元数据来检测这些威胁,而且这种做法不会影响用户的隐私。通过查看电子邮件标题以及对邮件正文数据的二次抽样,机器学习算法可以学习识别能够暴露恶意发件人的电子邮件模式。通过提取和标记这些微观行为,我们可以训练我们的模型来检测是否有人正在尝试网络钓鱼。随着时间的推移,机器学习工具可以根据发件人的可信赖性构建曲线图。
类似于网络钓鱼攻击,水坑式攻击看起来似乎是合法的网站或网络应用程序。但是,这些网站或应用程序虽然是真实的,可已经被盗用了,或者根本就是假冒的网站或应用程序,旨在引诱没有疑虑的访问者输入个人信息。这种攻击也部分依赖于攻击者误导用户以及有效攻击服务的能力。
机器学习可以通过分析诸如路径/目录遍历统计等数据来帮助机构对网络应用程序服务进行基准测试。随着时间推移不断学习的算法可以识别出攻击者或恶意网站和应用程序的常见互动。机器学习还可以监控到罕见或不寻常的重新定向模式的行为,重新定向可能指向站点主机或者来自站点主机,还可以监控引荐链接–所有这些都是典型的风险警示指标。
• 内网漫游(Lateral Movement)
内网漫游攻击方法表示攻击者在网络中的移动,这是他们在查找漏洞并应用不同的技术来利用这些漏洞。内网漫游特别能够表明风险沿着杀伤链–攻击者从侦察到数据提取的活动–上升,特别是当攻击者从低级用户的机器转移到更重要的人员(可以访问有价值的数据)时。
网络流量输入记录可以告诉您访问者与网站的互动情况。机器学习了解数据的语境,可以动态地提供正常通信数据的视图。有了对典型通信流的更好理解,算法可以完成变化点检测(也就是说,当给定通信模式的概率分布发生变化,并变得不太可能像是”正常”的通信活动的时候,它能够识别出来),以此监测潜在的威胁。
• 隐蔽信道检测(Covert Channel Detection)
使用隐蔽信道的攻击者通过不用于通信的信道传输信息。使用隐蔽信道让攻击者保持对受到威胁的资产的控制,并使用可以随时间执行攻击的战术,而且不被发现。
使用隐蔽信道的攻击通常取决于给定网络上所有域的可见性。机器学习技术可以摄取并分析有关稀有领域的统计数据。有了这些信息,安全操作团队可以更轻松地让云端攻击者现形。没有了对他们打算攻击的网络的整体了解,网络犯罪分子更难以将其攻击沿着杀伤链条向前推进。
• 注入攻击(Injection Attacks)
注入攻击让攻击者可以在程序中进行恶意输入。攻击者会将一行代码输入数据库,当访问数据库时,就会修改或更改网站上的数据。
数据库日志是可以帮助识别潜在攻击的另一个信息来源。机构可以使用机器学习算法来构建数据库用户组的统计概况。随着时间的推移,算法学习了解了这些组如何访问企业中的各个应用程序,并学习发现这些访问模式中出现的异常。
• 网页木马(Webshell)
United States Computer Emergency Readiness Team(美国计算机应急准备小组,US-CERT)对网页木马(Webshell)的定义是”可以上传到网络服务器的脚本,以便远程管理机器”。通过远程管理,攻击者可以启动数据库数据转存、文件传输和恶意软件安装等进程。
网页木马(Webshell)攻击者的目标通常是后端的电子商务平台,攻击者通过这些平台来瞄准购物者的个人信息。机器学习算法可以聚焦正常购物车行为的统计,然后帮助识别出不应该以这种频率发生的异常值或行为。
• 凭证盗窃(Credential Theft)
凭证盗窃通常使用诸如网络钓鱼或水坑式攻击等手段来实现,攻击者以此从受害者那里提取登录凭证,以便访问组织维护的敏感信息。
互联网用户–消费者–经常留下登录模式。网站和应用程序可以跟踪位置和登录时间。机器学习技术可以跟踪这些模式以及包含这些模式的数据,以了解什么样的用户行为是正常的,哪些行为则代表了可能有害的活动。

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

  • 问题1:对于SQL的注入工具了解很少
  • 问题1解决方案:SQl注入常用的三个工具——SQLMAP、Havij、Pangolin。查找资料后总结如下:
    1.SQLMAP:
    SQLMAP是一个开源的渗透测试工具,可以用来进行自动化检测,利用SQL注入漏洞,获取数据库服务器的权限。它具有功能强大的检测引擎,针对各种不同类型数据库的渗透测试的功能选项,包括获取数据库中存储的数据,访问操作系统文件甚至可以通过外带数据连接的方式执行操作系统命令。
    SQLMAP支持MySQL, Oracle,PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird,Sybase和SAP MaxDB等数据库的各种安全漏洞检测。
    SQLMAP支持五种不同的注入模式:
    (1)基于布尔的盲注,即可以根据返回页面判断条件真假的注入;
    (2)基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断;
    (3)基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中;
    (4)联合查询注入,可以使用union的情况下的注入;
    (5)堆查询注入,可以同时执行多条语句的执行时的注入。
    2.Havij:
    Havij是一款用于sql注入的工具,他支持MySQL、MSSql、Oracle、Sybase等数据库,而且可以支持盲注、代理、免杀等措施。
    20189230杨 2018-2019-2 《密码与安全新技术专题》第1周作业_第4张图片
    3.Pangolin:
    Pangolin是一款非常不错的注入工具,支持mysql、Oracle、SQLserver等。使用方法直接在URL中键入所要注入的注入点或选择注入类型、数据库类型之后开始注入即可。
  • 问题2:对弱口令的爆破方面了解很少
  • 问题2解决方案:针对弱口令的爆破可以使用Burpsuite、Hydra等,查找资料后总结如下:
    暴力破解大致可以分为两大类,一类是基于Web表单的,另一类是基于服务协议(如 telnet、FTP、SSH等)。
    基于服务协议的爆破一般比较简单,只要字典足够强大,没有爆破不出来的密码(前提是没有连接次数限制,超时)。Kail linux中自带很多强大的密码爆破工具,比如Hydra。Hydra支持的爆破的服务和协议有:telnet ftp pop3[-ntlm]imap[-ntlm] smb smbnt http[s]-{head|get} http-{get|post}-form http-proxy ciscocisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener postgres nntp socks5rexec rlogin pcnfs snmp rsh cvs svn icq sapr3 ssh2 smtp-auth[-ntlm] pcanywhereteamspeak sip vmauthd firebird ncp afp等等,可以说非常强大。
    但是同样出色的Burpsuite也是作为安全工作者来说必不可少的工具,Burpsuite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务、请求的拦截和修改,扫描web应用程序漏洞、以暴力破解Web登陆表单等。虽然Hydra也同样支持Web表单形式的爆破,但是必须找到一个登陆错误的标志。

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

   我认为学校开设此类专题课程对像我这样本科时不是计算机专业的同学非常友好,通过一节课一个老师介绍一个领域的方式,帮想了解计算机领域最新发展但是却找不到头绪的同学提纲挈领式地理清了思路。像Web安全与内容安全这一节,老师先讲了历史发展和当前研究的背景和急迫需求,然后通过一个个小模块的方法展开具体技术要求。我通过老师的讲解和写作博客、查阅资料这样的方式,形成了大致的思路框架,然后针对我比较感兴趣,想进一步了解的领域,通过知网和IEEE查阅最新文献资料,有了很多的收获。
   在我查阅利用Burpsuite密码爆破的相关资料时,发现CSDN上有非常详尽的步骤讲解资料,我深刻地意识到平常学习知识的时候通常停留在表面、停留在理论层面,应该多上手实际操作,只有通过实践,才能说真正熟练掌握了知识。

4.“通过机器学习方法保护网络安全”最新研究现状

DDoS Attack Identification and Defense Using SDN Based on Machine Learning Method

2018 15th International Symposium on Pervasive Systems, Algorithms and Networks (I-SPAN)
作者信息:
• Lingfeng Yang
• Hui Zhao
研究进展:
软件定义网络(SDN)作为一种新的网络范式,引起了人们的极大兴趣。因此,SDN的安全性非常重要。分布式拒绝服务(ddos)攻击一直是互联网的瘟疫。现在,它在一些SDN应用场景中是一个威胁,例如校园网。为了缓解校园网中的ddos攻击,本文提出了一种基于机器学习的ddos攻击识别与防御的SDN框架。该框架由流量采集模块、DDOS攻击识别模块和流量表传递模块三部分组成。交通采集模块提取交通特征,为交通识别做准备。控制器利用SDN网络体系结构灵活多变的特点,在部署DDOS攻击检测系统时,通过统计流表信息提取网络流量特征,并采用支持向量机(SVM)方法对攻击流量进行识别。然后根据流量识别结果动态调整转发策略,抵御DDOS攻击。实验采用KDD99数据集进行。实验结果表明了该方法的有效性。

Anomaly Based Distributed Denial of Service Attack Detection and Prevention with Machine Learning

2018 2nd International Symposium on Multidisciplinary Studies and Innovative Technologies (ISMSIT)
作者信息:
•Uygar Dincalp
•Mehmet Serdar Güzel
•Omer Sevine
研究进展:
本文介绍了一种能显示攻击内容和攻击基于何处的方法。由于攻击向量的变化和多样性,本文试图通过对网络流量使用聚类算法DBSCAN来实现这一点。该方法分为三个阶段。分别是分析阶段、聚类阶段和预防阶段。在分析阶段,收集传入数据包并创建数据集。在系统中指定的超过平均传入流量负载的流量阈值,并检查流量负载间隔是否超过该阈值。此外,如果超过阈值,则会记录报警时间。在聚类阶段,在超过阈值的警报情况下,等待一点,看它是否仍在检测异常,如果仍在检测,则对创建的数据集进行规范化,并对其进行聚类,以检测异常基于的位置。

Securing the Internet of Things and Wireless Sensor Networks via Machine Learning: A Survey

2018 International Conference on Computer and Applications (ICCA)
作者信息:
•Marwa Mamdouh
•Mohamed A. I. Elrukhsi l
•Ahmed Khattab
研究进展:
物联网(IOT)是基于无线传感器网络(WSN),其中设备连接到互联网,并在没有人参与的情况下相互通信。无线传感器网络和物联网的安全性是一个关键且不易解决的问题。一方面,电池供电的无线传感器网络(WSN)和物联网(IOT)设备通常价格低廉,资源有限。因此,高功耗的高级安全技术是不合适的。另一方面,这种分布式网络的高度动态性使得集中安全和密钥管理算法不适用。除了容易受到攻击的无线通信外,各个节点还容易受到物理捕获的影响。
机器学习是解决WSN和IOT中的安全威胁的一种有前途的解决方案。机器学习是一种人工智能,它使用不同的学习算法来训练设备,而不需要显式编程。机器学习的本质适合于无线传感器网络和物联网,原因如下:(1)无法为复杂的物联网和无线传感器网络环境建立数学模型。(2)一些应用程序使用需要关联的数据集。(3)机器学习可以与WSN和IOT的动态和意外行为一起工作。(4)机器学习算法不需要符合WSN和IOT性质的人工干预。然而,在无线传感器网络和物联网中,机器学习面临两个主要挑战:节点的资源和计算限制,以及学习大型数据集的需求。
本文综述了用于无线传感器网络和物联网安全的不同机器学习算法。虽然许多方法都具有很高的精度,但在分类上,支持向量机并没有神经网络复杂。在保护物联网和无线传感器网络方面仍然存在许多挑战,因为机器学习应该在高安全性和低计算复杂性之间进行折衷,以适合资源有限的物联网和无线传感器网络设备。

An Intelligent Software defined Network Controller for preventing Distributed Denial of Service Attack

2018 Second International Conference on Inventive Communication and Computational Technologies (ICICCT)
作者信息:
•Aditya Prakash
•Rojalina Priyadarshini
研究进展:
本文提出了一种基于机器学习的智能检测方法,该方法可以检测到传入数据包是否被感染。完成该任务所采用的不同机器学习算法分别是朴素贝叶斯(naive bayes)、K-最近邻(k-nearest neighbor,knn)和支持向量机(support vector machine,SVM),用于检测数据流量的异常行为。对这三种算法的性能进行了比较,发现KNN算法是比较合适的。这里的性能度量是受感染数据包的检测率。

Detection of Flow Based Anomaly in OpenFlow Controller: Machine Learning Approach in Software Defined Networking

2018 4th International Conference on Electrical Engineering and Information & Communication Technology (iCEEiCT)
作者信息:
• Samrat Kumar Dey
• Md. Mahbubur Rahman
• Md. Raihan Uddin
研究进展:
本研究采用SDN架构中的机器学习算法,探讨了一种基于流量的开放式流量控制器异常检测方法。为了提高分类器的性能,采用了信息增益、增益比、CFS子集评价、对称不确定度和卡方检验等特征选择方法对数据集进行处理。一个包含41个特性和一个简化数据集的完整数据集已经进行了试验。一个带有特征选择的数据集使用增益比特征选择评估器的随机森林分类器确保了近82%的最高精度。实验结果表明,采用特征选择方法的机器学习方法对开放式流量控制器中基于流量的异常检测具有很强的潜力。

参考资料

超详细SQLMap使用攻略及技巧分享
注入篇——Havij、Pangolin使用
安全测试——利用Burpsuite密码爆破(Intruder入侵)
DDoS Attack Identification and Defense Using SDN Based on Machine Learning Method
Anomaly Based Distributed Denial of Service Attack Detection and Prevention with Machine Learning
Securing the Internet of Things and Wireless Sensor Networks via Machine Learning: A Survey
An Intelligent Software defined Network Controller for preventing Distributed Denial of Service Attack
Detection of Flow Based Anomaly in OpenFlow Controller: Machine Learning Approach in Software Defined Networking

你可能感兴趣的:(20189230杨 2018-2019-2 《密码与安全新技术专题》第1周作业)