IT追梦者

Programming
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Hash Collision DoS

Posted on 2012-04-16 22:07  星龙冰  阅读(133)  评论(0编辑  收藏  举报

    Java存在Hash Collision DoS的安全漏洞。因此如果系统依赖外部提交数据来构造HashMap,可能会存在Hash Collision DoS的问题。

几个比较常见的场景:

1.表单提交的数据保存在一个HashMap中;

2.以Json作为数据交换格式,将Json反序列化为Map对象;

比如:下面"Aa".hashCode()和"BB".hashCode()的值是相等的,放在一个hash桶里面,当构造出大量这种数据时HashMap查找此key对象的value退化为一个链表。