首页 > Web开发 > 详细

06服务器 Web框架安全

时间:2020-02-25 16:52:19      阅读:64      评论:0      收藏:0      [点我收藏+]

现在 Web 都是框架, 而且更新飞快.

MVC 层:

在 View 层可以解决 XSS 问题, XSS 是HTML 页面在服务器渲染时, 注入了恶意的 HTML 代码导致的.

CSRF 防御方案:

  1. 在 session 中绑定 token, 如果不能保存到服务器端的 session 中,可以替代为保存到 Cookie 中.
  2. 在 form 表单中自动添加 token 字段,比如<input type=hidden name="anti_csrf_token" value="$token" />
  3. 在 Ajax 请求中自动添加 token
  4. 在服务器端对比 POST 提交参数的 token 与 session 中绑定的 token 是否一致, 以验证 CSRF 攻击.

数据持久层与SQL注入

使用 ORM (Object Relation Mapping) 对SQL 注入有积极意义, 我们知道对抗SQL注入的最佳方式是使用“预编译绑定变量”。

DDOS

DDOS 又称为分布式拒绝服务,Distributed Denial of Service, 目前没有太好的解决方法, DDOS 是利用合理的请求早证资源过载,导致服务不可用.

比如一个停车场有100个车位,当100个车位都停满后,再有车想要停进来,就必须等已有的车先出去才行,如果车一直不出去,那么停车场门口就会排起长队,停车场负荷过载,不能正常工作了,这种情况就 “拒绝服务”

黑客们通过控制“肉鸡”,组成“僵尸网络”,对网站发起DDOS 攻击。

常见的 DDOS 攻击有 SYN flood, UDP flood, ICMP flood. (SYN flood 是利用了TCP/IP的缺陷)

技术分享图片

 

  1. 客户端向服务器发送一个SYN包,包含客户端使用的端口号和初始序列号x;
  2. 服务器端收到客户端发送来的 SYN 包后, 向客户端发送一个 SYN 和 ACK 都置位的TCP报文,包含确认号 x+1和服务器端初始序列号y
  3.  客户端收到 SYN+ACK报文后,向服务端返回一个确认号为 y+1, 序列号为 x+1的 ACK报文,一个标准的TCP连接完成

而 SYN flood 在攻击时,首先伪造大量的源IP地址,分别向服务器端发送大量的SYN包,此时服务器会返回SYN/ACK包,因为源地址是伪造的,所以伪造的IP并不会应答,服务器端没有收到伪造IP的回应,会重试3-5次并且等待一个SYN Time(一般30秒-2分钟), 如果超时,就丢弃这个连接。如果攻击者发起大量的这种半连接的请求,服务器耗费非常多的资源来处理这种半连接的请求。最后导致无法响应正常的请求,拒绝服务。

对抗 DDOS 主要有 SYN Cookie / SYN Proxy, safereset 等算法, 比如 SYN Cookie 是通过为每一个IP分配一个"Cookie", 统计每个IP的访问频率,如果短时间内收到大量的来自同一个IP地址的数据报,则认为被攻击,之后就丢弃这个IP过来的数据包。

 

06服务器 Web框架安全

原文:https://www.cnblogs.com/moveofgod/p/12362254.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!