常见的六种web攻击

常见的六种web攻击

一、XSS

XSS(跨脚本攻击):指通过存在安全漏洞的Web网站注册用户的浏览器内运行非法的HTML标签或JavaScript进行的一种攻击,即恶意攻击者往 Web 页面里插入恶意可执行网页脚本代码,当用户浏览该页之时,嵌入其中 Web 里面的脚本代码会被执行,从而可以达到攻击者盗取用户信息或其他侵犯用户安全隐私的目的。

XSS分为两种类型:

  • 非持久型XSS:攻击者发送带有恶意脚本代码参数的URL给被攻击者,当URL被点开后,恶意代码参数就会被HTML解析、执行

    • 防护方式:
    • web页面渲染的所有类容或渲染的数据必须来自服务器端;
    • 尽量不要从URL、document.referer等DOM API中获取数据直接渲染;
    • 尽量不要使用JavaScript的可执行字符串的方法;
    • 对涉及DOM渲染的方法传入的字符串做escape转义;
    • 前端渲染时候,对任何字段都需要做escape转义编码;
  • 持久型XSS:在form表单中填写恶意代码,通过XSS漏洞提交至服务器,当前端页面获得后端从数据库中读出的注入代码时,恰好将其渲染执行。

    • 防护手段
    • CSP 本质上就是建立白名单,开发者明确告诉浏览器哪些外部资源可以加载和执行。我们只需要配置规则,如何拦截是由浏览器自己实现的,减少 XSS 攻击。
    • 对用户输入的一切数据都进行转义(用户输入的数据永远不可信任)

二、CSRF

CSRF(跨网站请求伪造):利用用户已登录的身份,在用户毫不知情的情况下,以用户的名义完成非法操作,例如:当用户登入转账界面,突然弹出第三方链接窗口,用户点击该链接后,攻击者会利用用户登录状态的cookie等信息进行非法操作(攻击者利用这些信息伪造请求报文)

  • 防护规则

    • GET请求不进行数据修改;
    • 不让第三方网站访问到用户的Cookie;
    • 阻止第三方网站请求接口;
    • 请求时附带验证信息,如验证码或Token

三、点击劫持

点击劫持:是一种视觉欺骗的攻击手段。攻击者将需要攻击的网站通过 iframe 嵌套的方式嵌入自己的网页中,并将 iframe 设置为透明,在页面中透出一个按钮诱导用户点击,例如:用户登录A网站后,被攻击者引诱点击了第三方网站链接,第三方网站中使用Iframe嵌套了A网站的部分信息,并将其隐藏,然后透出一个按钮并诱惑用户点击,这时点击的按钮实际上是A网站上的某个按钮,从而诱骗到点击量。

  • 防护手段
    • X-FRAME-OPTIONS
    • JavaScript 防御

四、URL跳转漏洞攻击

URL跳转漏洞攻击:借助未验证的URL跳转,将应用程序引导到不安全的第三方区域,从而导致的安全问题,即黑客构建恶意链接(链接需要进行伪装,尽可能迷惑),发在QQ群或者是浏览量多的贴吧/论坛中。

  • 防护手段
    • Referer限制,确定传递URL参数进入的来源,我们可以通过该方式实现安全限制,保证该URL的有效性,避免恶意用户自己生成跳转链接;
    • 加入有效性验证Token,保证所有生成的链接都是来自于我们可信域的,通过在生成的链接里加入用户不可控的Token对生成的链接进行校验,可以避免用户生成自己的恶意链接从而被利用,但是如果功能本身要求比较开放,可能导致有一定的限制。

五、SQL注入攻击

SQL注入攻击:攻击者在用户提交页面(如,在用户登录界面),输入特定的字符串,提交数据后这些字符串与服务器的SQL语句组合成特定SQL语句,进而达到非法获取信息等目的;

  • 防护手段
    • 严格限制Web应用的数据库的操作权限;
    • 后端代码检查输入的数据是否符合预期;
    • 对进入数据库的特殊字符进行转义或编码转换;
    • 所有的查询语句建议使用数据库提供的参数化查询接口/函数;

六、OS注入攻击

OS注入攻击:原理与SQL注入类似,只不过SQL注入是针对数据库的,而OS命令注入是针对操作系统的,即OS命令注入攻击指通过Web应用,执行非法的操作系统命令达到攻击的目的。只要在能调用Shell函数的地方就有存在被攻击的风险。倘若调用Shell时存在疏漏,就可以执行插入的非法命令,向Shell发送命令,让Windows或Linux操作系统的命令行启动程序。也就是说,通过命令注入攻击可执行操作系统上安装着的各种程序。

  • 防护手段
    • 后端对前端提交内容进行规则限制(比如正则表达式)。
    • 在调用系统命令前对所有传入参数进行命令行参数转义过滤。
    • 不要直接拼接命令语句,借助一些工具做拼接、转义预处理,

注:本文章只是进行简单的提取,便于快速理解和复习,详细内容请查看https://www.cnblogs.com/fundebug/p/details-about-6-web-security.html

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值