接着上一章节安全性测试课程内容的相关知识点,持续学习关于认证与授权、Session与Cookie、DDOS拒绝服务攻击等相关知识。
一、认证
基于开发人员的编码习惯,有些程序员在开发时没有对认证和授权进行检验,这样就会给用户带来安全性隐患。
例如:用户未登录时页面不可见,但是如果我们知道这当前网页的URL的绝对地址,都有可能获取到这个页面的信息,因为本身未做安全性测试。
一般来说我们都会通过权限验证来判断也就是SessionID变量值来判断,例如:给你一个用户登录的SessionID这样就能够进行模拟登录,如果SessionID没有判断只要获取到地址就可以登录,当然也可以利用抓包工具来获取到相关的SessionID获取到。
例如:给你一个项目的登录接口,包括用户名与密码,用户进行登录,登录完成后,可以开展页面的业务功能操作,如果用户登录成功就会对权限进行验证,操作业务功能测试。
假如我现在切换一个新用户进行登录,对系统业务进行增、删、改、查操作。
新增一条数据对业务进行操作,如果用户没有权限是不允许进行操作的,这其实就用户授权的功能操作。
二、Session与Cookie
注意事项:一定要避免保存敏感信息到Cookie文件中,用户名密码等相关信息,无论是加密的字段或者明文字段等相关信息不要保存在Cookie文件中,明文的敏感信息字段直接可以在文件中看到,加密的内容浏览器并不知道,加密的内容发送给服务器可以进行还原检验到用户的合法性。
保存Cookie敏感信息的目的是为了提升用户体验,用户第一次登录后,下次访问系统可以不用登录只要Session未过期,可直接访问浏览器页面,这样确实保障了用户体验的提升,但实际在安全性又带来隐患。
Cookie作用域
打开F12抓包工具,退出登录,清除缓存Cookie信息,访问页面服务器会生成一个sessionId保存在我们的cookie文件中,path=/就是一个作用域是相对于整个根目录而言的,可以打开系统文件的主目录查看根目录相关系统,其实是一个虚拟目录。
作为域指的是在某个目录下保存的项目,在其它项目的目录下也可以访问到,当cookie信息保存在浏览器中打开cookie文件可以查看到所有项目的文件信息。
再打开另外一个项目进行登录,保存cookie信息,可以查看服务器的临时目录查看cookie文件,可以查看到cookie信息文件增加包括其它的一些cookie文件字段信息,同一个作用域下面的cookie信息写在一个文件中,这样就会存在两个系统中可以交叉读到所有的应用系统的信息。
怎样做到让不同的系统拥有不同的作用域?
不同应用系统存在不同的作用域,修改服务器的代码,让作用域独立,这样就可以避免作用域的安全隐患发生。
三、DDOS拒绝服务攻击
DDOS服务器攻击指模拟很多用户向服务器发送请求,导致服务器崩溃的现象,无法会用户提供正常的业务服务。
什么是分布式拒绝服务攻击?
攻击发送请求的用户在不同的地方,例如:一种木马方式,一种肉鸡方式,让很多电脑让我远程控制,让电脑中断来帮助我执行代码,写了一段有木马的代码,模拟很多电脑无限发送请求,所有电脑被我控制向服务器无限的发送请求,最终达到攻击系统的目的。
服务器资源如果足够多用户数量逐步增加,服务器足够强大都不会崩溃,如果单独能够防火墙很难预防安全性问题。
例如:我要破解一个系统,可以多人联盟一起攻击系统,写一个木马代码一起向网站发送请求,这样就是一种真实的攻击服务器的方式叫做分布式服务器的攻击。
TCP连接规则方式
TCP建立连接需要3次握手的过程,在3次握手的过程中,客户端向服务端发送请求,服务端响应信息给客户端,客户端继续向服务端响应,如果用户模拟一个非法ip地址进行第一次握手,第二次服务器向客户端发送ip地址时,这会ip地址变化了,服务口进行等待,连接资源被消耗,直到超时,如果用户模拟很多非常ip地址进行通信是无法建立连接,攻击的目的是为了消耗服务器的资源从而达到攻击服务器的目的。
总结:今天主要与大家分享Web安全性测试的DDOS拒绝服务攻击相关内容,主要讲解了认证与授权、Session与Cookie、DDOS拒绝服务攻击等原理实现相关内容,希望大家通过这篇文章对DDOS拒绝服务攻击有一个较深入的理解,下一期内容敬请期待。