在技术角度上,DDoS攻击可以针对网络通讯协议的各层,手段大致有:TCP类的SYN Flood、ACK Flood,UDP类的Fraggle、Trinoo,DNS Query Flood,ICMP Flood,Slowloris类等等 。一般会根据攻击目标的情况,针对性的把技术手法混合,以达到最低的成本最难防御的目的,并且可以进行合理的节奏控制,以及隐藏保护攻击资源 。
下面介绍一下TCP协议中的SYN攻击 。
二、SYN攻击
在三次握手过程中,服务器发送 SYN-ACK 之后,收到客户端的 ACK 之前的 TCP 连接称为半连接(half-open connect) 。此时服务器处于 SYN_RCVD 状态 。当收到 ACK 后,服务器才能转入 ESTABLISHED 状态.
SYN攻击指的是,攻击客户端在短时间内伪造大量不存在的IP地址,向服务器不断地发送SYN包,服务器回复确认包,并等待客户的确认 。由于源地址是不存在的,服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN请求被丢弃,导致目标系统运行缓慢,严重者会引起网络堵塞甚至系统瘫痪 。
三、如何预防DDOS
阿里巴巴的安全团队在实战中发现,DDoS 防御产品的核心是检测技术和清洗技术 。检测技术就是检测网站是否正在遭受 DDoS 攻击,而清洗技术就是清洗掉异常流量 。而检测技术的核心在于对业务深刻的理解,才能快速精确判断出是否真的发生了 DDoS 攻击 。清洗技术对检测来讲,不同的业务场景下要求的粒度不一样 。
CSRF一、什么是CSRF
CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF 。
你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求 。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账......造成的问题包括:个人隐私泄露以及财产安全 。
二、CSRF的原理
下图简单阐述了CSRF攻击的思路
从上图可以看出,要完成一次CSRF攻击,受害者必须依次完成两个步骤:
- 登录受信任网站A,并在本地生成Cookie 。
- 在不登出A的情况下,访问危险网站B 。
- 你不能保证你登录了一个网站后,不再打开一个tab页面并访问另外的网站 。
- 你不能保证你关闭浏览器了后,你本地的Cookie立刻过期,你上次的会话已经结束 。(事实上,关闭浏览器不能结束一个会话,但大多数人都会错误的认为关闭浏览器就等于退出登录/结束会话了......)
- 上图中所谓的攻击网站,可能是一个存在其他漏洞的可信任的经常被人访问的网站 。
三、模拟CSRF攻击
登录A网站
用户名和密码都是admin 。
http://localhost:8081/login.html:
文章插图
你有权限删除1号帖子
http://localhost:8081/deletePost.html:
登录有CSRF攻击A网站的B网站
http://localhost:8082/deletePost.html:
文章插图
明显看到B网站是8082端口,A网站是8081端口,但是B网站的删除2号帖子功能依然实现 。
四、如何预防CSRF攻击
简单来说,CSRF 就是网站 A 对用户建立信任关系后,在网站 B 上利用这种信任关系,跨站点向网站 A 发起一些伪造的用户操作请求,以达到攻击的目的 。
而之所以可以完成攻击是因为B向A发起攻击的时候会把A网站的cookie带给A网站,也就是说cookie已经不安全了 。
通过Synchronizer Tokens
Synchronizer Tokens: 在表单里隐藏一个随机变化的 csrf_token csrf_token 提交到后台进行验证,如果验证通过则可以继续执行操作 。这种情况有效的主要原因是网站 B 拿不到网站 A 表单里的 csrf_token
这种方式的使用条件是php和JSP等 。因为cookie已经不安全了,因此把csrf_token值存储在session中,然后每次表单提交时都从session取出来放到form表单的隐藏域中,这样B网站不可以得到这个存储到session中的值 。
下面是JSP的:
<input type="hidden" name="random_form" value=https://www.isolves.com/it/aq/fwq/2019-10-11/>
但是我现在的情况是html,不是JSP,并不能动态的从session中取出csrf_token值 。只能采用加密的方式了 。
推荐阅读
- 网站受到DooS攻击的表现
- 如何搭建合适的Web框架?
- 网站管理员和Web开发人员必读的.htaccess入门指南
- 购买茶叶时的八种常见心理
- 门磁开关的原理及常见故障
- 梦见野猪追我是什么预兆 梦见野猪追我攻击我是什么意思
- 秋季装修常见问题解决方案
- 梦见狮子攻击自己预兆 梦见狮子攻击自己没受伤
- 梦见乌鸦攻击自己 梦见乌鸦成群满天飞
- HTML5标签也可以DDoS攻击的新方法揭秘