WebGoat实验之Denial of Service(拒绝服务)- 2016.01.09

来源:互联网 发布:mac地址会不会重复 编辑:程序博客网 时间:2024/04/28 16:05

          Denial of Service(拒绝服务),这恐怕是网络上最头疼的一个问题了吧,既要保证正常用户的访问不能受到限制,又要保证服务的正常执行,可是试问正常用户和异常用户的访问判断谈何容易。

        分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力。通常,攻击者使用一个偷窃帐号将DDoS主控程序安装在一个计算机上,在一个设定的时间主控程序将与大量代理程序通讯,代理程序已经被安装在网络上的许多计算机上。代理程序收到指令时就发动攻击。利用客户/服务器技术,主控程序能在几秒钟内激活成百上千次代理程序的运行,从而导致服务器拒绝服务,影响正常用户的访问。

Denial Of Service From Multiple Logins (由多个登录引起的拒绝服务)

        这个实验的大致内容时这样的:这个网站允许用户多次登录,网站的数据库连接池允许两个连接,我们需要获得一个有效的用户列表,并创建 3 个登录。那么这个问题就变成了找用户名和密码或者绕开认证机制进行登录的问题,根据我们前面所做的实验,寻找用户名和密码可以在源代码中根据代码质量的原理进行查找,也可以猜测,还可以进行 sql 注入(这个在之前的知识中没有涉及过)。我们首先查看了网页的源代码,并没有找到合理的账户名和密码,没有账户名和密码我们怎么绕开认证机制。只好先做一下尝试,即测试攻击,如图 1 所示,我们尝试 admin 登录,但是并没有成功,不过我们根据返回的信息得到了重要的提示,如图 2 。即,这个实验需要我们构造 sql 注入,经过对图 2 中 sql 语句的分析,我们构造代码如下 1‘ or ’1‘=’1 ,分别将这条语句输入到用户名和密码当中,然后提交,我们就会看到如图 3 所示的结果,这个时候我们就得到了所有用户的列表,那么我们任意选择一个用户进行三次登录就可以通过本实验了。


图 1


图 2


图 3

1 0