您的位置:首页 > 理论基础 > 计算机网络

Erlang版TCP服务器对抗攻击解决方案

2013-06-07 13:36 274 查看
互联网上的TCP服务器面对的环境情况比企业私有的服务器要复杂很多。常见的针对tcp服务器的攻击有以下几种:

1. 伪造协议,导致服务器crash. 比如说某条命令的字段长度,协议最大规定是1024,伪造个4096的。

2. 伪造大的报文,比如说一个包有1024M这么大。

3. 消耗服务器资源。开大量的连接, 以龟速发送报文,比如说每分钟一个字节。

4. DDOS攻击,从不同的IP发起大量的连接, 大流量淹没服务器。

5. 攻击Erlang集群的授权体系,all or nothing。

6. 报文发送顺序逻辑错误,导致服务器crash. 比如说逻辑上应该先发A,再发B, 攻击者调了顺序。

7. 不停的连接断开,消耗服务器对资源的申请和释放,这个通常很耗。

8. 篡改协议中关键时间事件,造成时间混乱。

9. 利用协议中需要大量计算和资源的事件攻击。

10. 利用协议的安全漏洞或者实现系统的漏洞,比如说erlang的atom个数的限制,对系统造成威胁。

11. Hash Collision DoS 等攻击。

12. term_to_binary数据深度太大,底层VM实现用的是c的递归,很容易导致stack overflow。

13. Mnesia数据库各role对等, 很容易在其中一个节点发起数据破坏操作。

14. 大量的请求涌入,导致大量消息产生,消息队列爆了。

15. 利用inets底层实现的漏洞,构造些畸形数据导致inet drv工作异常。

16. 攻击系统的RPC通道,节点间的RPC通道只有一条容易饱和。

17. 攻击系统的NIF实现漏洞,导致VM crash。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  gen_tcp