Web安全 | 青训营笔记

95 阅读3分钟

这是我参与「第四届青训营 」笔记创作活动的的第六天

今天主要记录一下web安全方面的知识。

从攻击者的角度看web安全

  • 跨站脚本攻击-XSS

XSS (Cross-Site Scripting),跨站脚本攻击。跨站脚本攻击是指通过存在安全漏洞的Web网站注册用户的浏览器内运行非法的HTML标签或JavaScript进行的一种攻击。

跨站脚本攻击有可能造成以下影响:

  • 利用虚假输入表单骗取用户个人信息。
  • 利用脚本窃取用户的Cookie值,被害者在不知情的情况下,帮助攻击者发送恶意请求。
  • 显示伪造的文章或图片。

XSS 的原理是恶意攻击者往 Web 页面里插入恶意可执行网页脚本代码,当用户浏览该页之时,嵌入其中 Web 里面的脚本代码会被执行,从而可以达到攻击者盗取用户信息或其他侵犯用户安全隐私的目的,作为开发者,永远不要相信用户的提交信息!

比如:通过注入脚本获取用户的登录cookie,诱导用户点击或填写表单等。

存储型 XSS 攻击

又叫持久型 XSS 漏洞,一般存在于 Form 表单提交等交互功能。黑客利用的 XSS 漏洞,将恶意脚本存储在数据库中,存储下xss攻击危害最大,因为这是对全部用户可见的。

举个例子,对于输入表单,就得防范持久型 XSS 攻击,因为我可以在该表单中输入任意内容,包括脚本代码,如果未进行处理,脚本会存到数据库中,这是很可怕的。

持久型 XSS 有以下几个特点:

  • 持久性,植入在数据库中
  • 盗取用户敏感私密信息
  • 危害面广

反射型 XSS 攻击

非持久型 XSS 漏洞,一般是通过给别人发送带有恶意脚本代码参数的 URL,当 URL 地址被打开时,特有的恶意代码参数被 HTML 解析、执行。

非持久型 XSS 漏洞攻击有以下几点特征:

  • 即时性,不经过服务器存储,直接通过 HTTP 的 GET 和 POST 请求就能完成一次攻击,拿到用户隐私数据。
  • 攻击者需要诱骗点击,必须要通过用户点击链接才能发起
  • 反馈率低,所以较难发现和响应修复
  • 盗取用户敏感保密信息

基于DOM的 XSS 攻击

该类型的攻击不需要服务器的参与,恶意攻击的发起和执行都发生在浏览器端。

image.png

基于mutation的 XSS 攻击

  • 利用了浏览器渲染DOM的特性
  • 不同浏览器,渲染机制不同

CSRF (跨站伪造请求)

CSRF(Cross Site Request Forgery),即跨站请求伪造,是一种常见的Web攻击,利用用户的权限,在用户不知情的情况下,构造指定的HTTP请求,窃取或修改敏感信息。最常见的是构造get请求

比如:

image.png

image.png

SQL注入

一次SQL注入的过程包括以下几个过程:

  • 获取用户请求参数
  • 拼接到代码当中
  • SQL语句按照我们构造参数的语义执行成功

image.png

攻击者攻击:

image.png

DDOS 攻击

DDOS 攻击,它在短时间内发起大量请求,耗尽服务器的资源,无法响应正常的访问,造成网站实质下线。

image.png

中间人模式

这是基于传输层的攻击方法,

image.png