资讯专栏INFORMATION COLUMN

web 安全领域的一些常见攻防

LiuRhoRamen / 619人阅读

摘要:根据年的报告看一下都有哪些常见攻击。来自安全测试之有这么个网页,查询的结果和查询的关键字都会显示到网页上。安全是个大领域,暂时先到这里,以后有时间再总结写别的。安全测试之拒绝服务攻击知乎讨论浅谈攻击方式

搞web离不开security这个话题,之前关注的也不多只是听说一些名词什么的。是时候好好看看这些安全问题了。根据Cenzic 2012年的报告看一下都有哪些常见攻击。

37%    Cross-site scripting
16%    SQL injection
5%    Path disclosure
5%    Denial-of-service attack
4%    Arbitrary code execution
4%    Memory corruption
4%    Cross-site request forgery
3%    Data breach (information disclosure)
3%    Arbitrary file inclusion
2%    Local file inclusion
1%    Remote file inclusion
1%    Buffer overflow
15%    Other, including code injection (PHP/JavaScript), etc.

排好队先看几个我接触过的。

cross site script (XSS) 什么是XSS

XSS指攻击者在网页中嵌入客户端脚本(例如JavaScript), 用户浏览网页就会触发恶意脚本执行。 比如获取用户的Cookie,导航到恶意网站,携带木马等。如何把恶意代码嵌入到用户要访问的网页中,攻击者挖空心思各出奇招了。一般会有这两类方式:

Reflected (non-persistent)
反射攻击,就是恶意代码藏在本地,表现方式可能是一个恶意链接,你点击后给server GET/POST这个request,server如果没有恰当的处理这个请求,恶意代码返回给用户浏览器并执行。举个例子就比较明白了。来自Web安全测试之XSS

有这么个网页,查询的结果和查询的关键字都会显示到网页上。


  
    
        Results  for  <%Reequest.QueryString("term")%>
        ...
    

Tom 先建立一个网站http://badguy.com, 用来接收“偷”来的信息。然后Tom 构造一个恶意的url(如下), 通过某种方式(邮件,QQ)发给Monica

http://victim.com/search.asp?term=

Monica点击了这个URL, 嵌入在URL中的恶意Javascript代码就会在Monica的浏览器中执行. 那么Monica在victim.com网站的cookie, 就会被发送到badguy网站中。这样Monica在victim.com 的信息就被Tom盗了.

XSS防治之道

文本输入做中对js关键字做编码,让回给用户浏览器的js不可执行

浏览器的同源策略,浏览器只允许访问cookie的IP+port必须同最初创建cookie的ip+port相同

web app或者浏览器提供“禁用script”的选项

SQL injection 什么是SQL 注入

SQL注入攻击是黑客对数据库进行攻击的常用手段之一。相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。

某个网站的登录验证的SQL查询代码为:

strSQL = "SELECT * FROM users WHERE (name = "" + userName + "") and (pw = ""+ passWord +"");"

恶意填入

userName = "1" OR "1"="1"; 与passWord = "1" OR "1"="1";

将导致原本的SQL字符串被填为

strSQL = "SELECT * FROM users WHERE (name = "1" OR "1"="1") and (pw = "1" OR "1"="1");"

也就是实际上运行的SQL命令会变成下面这样的

strSQL = "SELECT * FROM users;"

因此达到无账号密码,亦可登录网站。所以SQL注入攻击被俗称为黑客的填空游戏。

SQL injection 防治之道

从安全技术手段上来说,可以通过数据库防火墙实现对SQL注入攻击的防范,因为SQL注入攻击往往是通过应用程序来进攻,可以使用虚拟补丁技术实现对注入攻击的SQL特征识别,实现实时攻击阻断。

Denial-of-service

顾名思义,拒绝服务攻击就是想尽办法让你的服务器无法正常提供服务。方法太多了,但是仔细研究攻击的模式,可以分为以下四种情况:

  a.消耗包括网络带宽、存储空间、CPU 时间等资源;

  b.破坏或者更改配置信息;

  C.物理破坏或者改变网络部件;

  d.利用服务程序中的处理错误使服务失效
如果攻击者使用分布在各地的PC来发起攻击,这就是DDOS了,distributed DOS。有关如何防治DDOS,没有太好的办法,转一个知乎上的讨论,知乎讨论DDOS

Cross-site request forgery

跨站请求伪造也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。跟跨網站指令碼(XSS)相比,XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户网页浏览器的信任。你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。浅谈CSRF攻击方式 有个不错的例子描述,一目了然。

防御 CSRF 攻击策略

验证 HTTP Referer 字段
HTTP头里有Referer字段,这个字段用以标识请求来源地址。在处理敏感信息时,通常來说Referer字段应和请求的地址位于同一域名下。比如银行页面上的转账链接http://www.examplebank.com/withdraw?account=AccoutName&amount=1000&for=PayeeName,Referer字段地址通常应该位于www.examplebank.com之下,也就是这个链接必须是这个网站域名下面的网页提供的。而如果是CSRF攻击的请求一般是其他恶意网站的网页,浏览器填Referer字段时会填恶意网站的地址,不会位于www.examplebank.com之下,这时候server端可以识别出恶意访问。

在请求地址中添加 token 并验证
只要server端可以识别出发来的请求不是来自server自己提供的网页上的链接,server就能识别这不是我允许的请求,肯能是CSRF伪装的请求。如果标识这些敏感请求呢?server可以在这个链接旁边附带一个随机码(csrf token),如果你是正常访问自然可以带上来正确的csrf token,否则就是其他恶意访问了。

安全是个大领域,暂时先到这里,以后有时间再总结写别的。

Web_application_security
Web Application Security
Web安全测试之XSS
拒绝服务攻击
知乎讨论DDOS
浅谈CSRF攻击方式

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/11166.html

相关文章

  • 安全攻防战 - 收藏集 - 掘金

    摘要:咱妈说别乱点链接之浅谈攻击阅读掘金作者马达编辑迷鹿马达,精通开发开发,擅长接口设计以及平台化建设,独自主导过多个产品。一题目购物应用分环境要求安全学习资料汇总掘金安全学习资料汇总安全学习网站收集 咱妈说别乱点链接之浅谈 CSRF 攻击 - 阅读 - 掘金作者 | 马达编辑 | 迷鹿 马达, 精通PHP开发、Web开发,擅长api接口设计以及平台化建设,独自主导过多个Web产品。目前就职...

    chanthuang 评论0 收藏0
  • 《网络黑白》一书所抄袭文章列表

    摘要:网络黑白一书所抄袭的文章列表这本书实在是垃圾,一是因为它的互联网上的文章拼凑而成的,二是因为拼凑水平太差,连表述都一模一样,还抄得前言不搭后语,三是因为内容全都是大量的科普,不涉及技术也没有干货。 《网络黑白》一书所抄袭的文章列表 这本书实在是垃圾,一是因为它的互联网上的文章拼凑而成的,二是因为拼凑水平太差,连表述都一模一样,还抄得前言不搭后语,三是因为内容全都是大量的科普,不涉及技术...

    zlyBear 评论0 收藏0
  • 常见六大Web 安全攻防解析

    摘要:想阅读更多优质原创文章请猛戳博客一,跨站脚本攻击,因为缩写和重叠,所以只能叫。跨站脚本攻击是指通过存在安全漏洞的网站注册用户的浏览器内运行非法的标签或进行的一种攻击。跨站脚本攻击有可能造成以下影响利用虚假输入表单骗取用户个人信息。 前言 在互联网时代,数据安全与个人隐私受到了前所未有的挑战,各种新奇的攻击技术层出不穷。如何才能更好地保护我们的数据?本文主要侧重于分析几种常见的攻击的类型...

    lidashuang 评论0 收藏0
  • 2018先知白帽大会 | 议题解读

    摘要:摘要今年的先知白帽大会,与会者将能够亲身感受到非常多有趣的技术议题,如在国际赛事中屡夺佳绩的团队,其队长将亲临现场,分享穿针引线般的漏洞利用艺术。从数据视角探索安全威胁阿里云安全工程师议题解读本议题讨论了数据为安全人员思维方式带来的变化。 摘要: 今年的先知白帽大会,与会者将能够亲身感受到非常多有趣的技术议题,如HITCON在国际赛事中屡夺佳绩的CTF团队,其队长Orange将亲临现场...

    Hydrogen 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<