一、什么是DoS?
DoS是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。拒绝服务存在于各种网络服务上,这个网络服务可以是c、c++实现的,也可以是go、java、php、python等等语言实现。
二、Java DoS的现状
在各种开源和闭源的java系统产品中,我们经常能看到有关DoS的缺陷公告,其中大部分都是耗尽CPU类型或者业务卸载类型的DoS。耗尽CPU类型的DoS大体上主要包括“正则回溯耗尽CPU、代码大量重复执行耗尽CPU、死循环代码耗尽CPU”等。而业务卸载DoS这一类型的DoS则和系统业务强耦合,一般情况下并不具备通用性。下面用几个简单例子对其进行简单描述。