Web安全性测试系列(二)DDOS拒绝服务攻击原理详解

简介: Web安全性测试系列(二)DDOS拒绝服务攻击原理详解

接着上一章节安全性测试课程内容的相关知识点,持续学习关于认证与授权、Session与Cookie、DDOS拒绝服务攻击等相关知识。

640.jpg

一、认证

基于开发人员的编码习惯,有些程序员在开发时没有对认证和授权进行检验,这样就会给用户带来安全性隐患。

例如:用户未登录时页面不可见,但是如果我们知道这当前网页的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拒绝服务攻击有一个较深入的理解,下一期内容敬请期待。

相关文章
|
2月前
|
SQL 安全 测试技术
Web应用程序安全测试
Web应用程序安全测试
|
2月前
|
Web App开发 编解码 前端开发
面试题22:如何测试Web浏览器的兼容性?
面试题22:如何测试Web浏览器的兼容性?
|
3月前
|
存储 缓存 监控
Web 应用程序性能测试核心步骤
Web 应用程序性能测试核心步骤
|
6天前
|
XML Web App开发 测试技术
python的Web自动化测试
【4月更文挑战第16天】Python在Web自动化测试中广泛应用,借助Selenium(支持多浏览器交互)、BeautifulSoup(解析HTML/XML)、Requests(发送HTTP请求)和Unittest(测试框架)等工具。测试步骤包括环境搭建、编写测试用例、初始化浏览器、访问页面、操作元素、验证结果、关闭浏览器及运行报告。注意浏览器兼容性、动态内容处理和错误处理。这些组合能提升测试效率和质量。
11 6
|
1月前
|
前端开发 JavaScript 安全
深入探索 Qt6 web模块 WebEngineCore:从基础原理到高级应用与技巧
深入探索 Qt6 web模块 WebEngineCore:从基础原理到高级应用与技巧
79 0
|
1月前
|
安全 测试技术 API
请描述在 Python WEB 开发中常用的测试方法。
请描述在 Python WEB 开发中常用的测试方法。
18 0
|
1月前
|
Web App开发 前端开发 测试技术
Web应用程序测试工具Selenium用法详解
Web应用程序测试工具Selenium用法详解
37 0
|
1月前
|
Web App开发 存储 搜索推荐
谈谈 Web 应用里界面图标 Icon 的显示原理
谈谈 Web 应用里界面图标 Icon 的显示原理
26 0
|
2月前
|
Web App开发 测试技术 数据安全/隐私保护
Web自动化测试工具Selenium
Web自动化测试工具Selenium
|
2月前
|
人工智能 前端开发 Java
软件测试/人工智能|熟练使用web控件定位技巧,提升测试工作效率!
软件测试/人工智能|熟练使用web控件定位技巧,提升测试工作效率!
197 1