Web安全测试详解

前言

随着互联网时代的蓬勃发展,基于Web环境下的应用系统、应用软件也得到了越来越广泛的使用。

目前,很多企业的业务发展都依赖于互联网,比如,网上银行、网络购物、网络游戏等。但,由于很多恶意攻击者想通过截获他人信息去谋取利益,因此,会对Web服务器进行攻击。攻击的方式也非常多,常见的有SQL注入、跨站脚本攻击、跨站请求伪造、缓存区溢出等。

由此,我们不得不对网络环境的安全性加以提升。软件测试工程师通过分析黑客的攻击行为等方式,对网站进行Web安全测试

同时,我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

字节大佬教你逼自己如何在15天内掌握自动化测试(接口自动化/APP自动化/Web自动化/性能测试),内含项目实战

1SQL注入

在Web安全测试中,SQL注入是最为常见的一种手段。主要是指攻击者通过巧妙的构建非法SQL查询命令,插入表单或请求字符串后提交,并根据返回的结果,来获得想要的数据。这就是SQL注入。

SQL注入的方法一般有猜测法和屏蔽法。猜测法主要是通过猜测数据库可能存在的表名和列名,根据组合的SQL语句获取数据表的信息。屏蔽法主要是利用SQL输入的不严谨进行逻辑验证,从而使得SQL验证结果始终为真,从而绕开验证的目的。

图片

当然,这2种是SQL注入最基础的、最简单的方法。在测试过程中,我们需要注意命名规则,以及对关键词的屏蔽等。另外,我们也需要在工作中,不断总结经验,更加深入的学习猜想法和屏蔽法等。

2跨站脚本攻击

跨站脚本攻击(简称XSS),是一种迫使Web站点回显可执行代码的攻击技术

当Web站点回显后,攻击者会重新提供可执行代码。一般情况下,他们会往Web页面里插入恶意Script代码,当用户浏览该页面时,嵌入其中的Script代码会被执行,从而攻击终端用户。

XSS最为常见的攻击方法为反射型XSS和存储型XSS

反射型XSS,又称非持久型跨站点脚本攻击,也是最常见的XSS攻击方式。这种方式一般需要用户自己去点击链接,才能触发攻击者注入的XSS代码。

而存储型XSS则不同。存储型XSS又称为持久型跨站点脚本攻击,也是最直接危害用户的XSS。当攻击者在服务器中存储了攻击代码后,用户只要打开对应页面,就会触发XSS代码自动执行。这种XSS比较危险,容易产生蠕虫,盗窃用户Cookie等危害。造成这种安全问题的原因,主要是开发者在编程过程中,对一些敏感符号未进行处理,

如“/、“.”、“’”、“‘”、“<”、“>”、“?”等。或对数据库字段、数据库类型以及长度的限制等未进行处理。

3跨站请求伪造

跨站请求伪造(简称CSRF),是一种对网站的恶意利用。它通过伪装普通用户的请求,来利用受信任的网站。与XSS攻击相比,CSRF攻击往往因为不太流行而导致难以防范。所以,我们认为CSRF往往比XSS更具危险性。

简单判断是否存在CSRF漏洞的方法,就是通过抓取正常请求的数据包,然后通过去掉Referer字段,再重新提交。如果二次提交还有效,说明存在CSRF漏洞。

为了防止CSRF,常用的方法就是在AJAX异步请求地址中,添加Token并进行验证,从而降低CSRF出现的可能。

4缓存区溢出

缓冲区溢出是一种非常普遍存在的漏洞,广泛存在于各种操作系统、应用软件中

利用缓冲区溢出攻击,可以导致程序出现运行失败、系统关机、重新启动等行为,或执行攻击者的指令,比如非法提升权限等。

在缓冲区溢出中,最为危险的就是堆栈溢出,它可以利用堆栈溢出,在函数返回时,将程序的地址修改为攻击者想要的任意地址,达到攻击者的目的。其最典型的例子,就是1988年利用fingerd漏洞进行攻击的蠕虫。

当然,造成缓冲区溢出的原因有很多。主要原因有对输入、输出的数据没有限制大小、长度以及格式等,还有就是对用户的特殊操作没有做异常处理导致。

所以,在测试过程中,我们需要注意输入输出的大小长度以及格式规范限制,还有需要多模拟一些异常,关注异常的处理情况。

写在最后

对Web应用软件来说,安全性包含Web服务器、数据库、操作系统以及网络的安全等,只要其中任何一个部分出现安全漏洞,都会导致整个系统的安全性问题。Web安全测试是比较难解决的问题,这个取决于测试要达到什么程度。简单说软件不可能做到100%的测试,所以也不要期望可以达到100%的安全

在实际测试过程中,测试人员主要是针对用户的权限以及数据库的安全性进行测试,还可以借助IBM的安全漏洞扫描工具APPScan来进行漏洞扫描。

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/163095.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

虹科 | 解决方案 | 机械免拆压力测试方案

对于发动机的气门卡滞或气门开闭时刻错误、活塞环磨损、喷油嘴泄漏/堵塞等故障,往往需要解体发动机或拆卸部件才能发现;而对于某些轻微的故障,即使解体了发动机后也经常难于肉眼判别 虹科Pico提供的WPS500压力测试方案,可以动态测…

7+非肿瘤+WGCNA+分型+实验,筛选关键基因进一步分型以及表达验证

今天给同学们分享一篇非肿瘤WGCNA分型实验的生信文章“Identification of molecular subtypes and immune infiltration in endometriosis: a novel bioinformatics analysis and In vitro validation”,这篇文章于2023年8月18日发表在Front Immunol期刊上&#xff…

IPV6 ND协议--源码解析【根源分析】

ND协议介绍 ND介绍请阅读上一篇文章:IPv6知识 - ND协议【一文通透】11.NDP协议分析与实践_router solicitation报文中不携带source link-layer address-CSDN博客 ND协议定义了5种ICMPv6报文类型,如下表所示: NS/NA报文主要用于地址解析RS/…

GEE:绘制土地利用类型面积分布柱状图

作者:CSDN @ _养乐多_ 本文记录了,在 Google Earth Engine (GEE)中进行随机森林分类后绘制不同类型面积分布柱状图的代码片段。 完整代码请看博客《GEE:随机森林分类教程(样本制作、特征添加、训练、精度、参数优化、贡献度、统计面积)》 柱状图效果如下所示, 文章目…

高性能计算与多模态处理的探索之旅:英伟达GH200性能优化与GPT-4V的算力加速未来

★多模态大模型;GPU算力;LLMS;LLM;LMM;GPT-4V;GH200;图像识别;目标定位;图像描述;视觉问答;视觉对话;英伟达;Nvidia&#…

leetCode 392. 判断子序列 动态规划 + 优化空间 / 双指针 等多种解法

392. 判断子序列 - 力扣(LeetCode) 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如&#xff0c…

剖析深度学习中的epoch与batch_size关系、代码

目录 前言1. 定义2. 代码 前言 为了区分深度学习中这两者的定义,详细讲解其关系以及代码 1. 定义 在 PyTorch 中,“epoch”(周期)和 “batch size”(批大小)是训练神经网络时的两个重要概念 它们用于控…

【大数据】Kafka 入门简介

Kafka 入门简介 1.什么是 Kafka2.Kafka 的基本概念3.Kafka 分布式架构4.配置单机版 Kafka4.1 下载并解压包4.2 启动 Kafka4.3 创建 Topic4.4 向 Topic 中发送消息4.5 从 Topic 中消费消息 5.实验5.1 实验一:Python 实现生产者消费者5.2 实验二:消费组实现…

光伏电站绝缘阻抗异常排查方法

安科瑞 崔丽洁 概述 01 光伏发电是依托电力电子技术,利用太阳光照将太阳能转化为电能的系统。光伏发电不需要使用化石燃料,减少了发电时产生的污染,并且减少了能源消耗。光伏发电依托政策扶持,快速在国内普及。光伏发电与传统火电发电原理不同…

模糊测试面面观 | 车联网场景模糊测试解决方案

随着国际国内汽车信息安全标准的出台、用户安全意识的不断提高以及针对智能网联汽车安全攻击的不断规模化复杂化和深入,智能网联汽车系统及车联网安全形势严峻。 然而大部分车型在信息安全防护方面水平偏低,车内相关的联网部件及控制部件防护可靠性不高&…

Python接口自动化 —— token登录(详解)

简介 为了验证用户登录情况以及减轻服务器的压力,减少频繁的查询数据库,使服务器更加健壮。有些登录不是用 cookie 来验证的,是用 token 参数来判断是否登录。token 传参有两种一种是放在请求头里,本质上是跟 cookie 是一样的&am…

实时精准 自我防护 | 开源网安RASP平台能力获客户认可!

近日,开源网安收到了一封来自华润数科的感谢信,表达了对开源网安团队在网络安全工作中给予大力支持的衷心感谢。开源网安十分注重客户的需求和信任,客户的满意和认可是开源网安最大的追求。 在助力华润数科网络安全工作开展过程中&#xff0c…

1数据结构的分类,算法效率的度量

一,数据结构的定义和分类 数据结构:数据之间的关系即数据的逻辑结构,因为要存储到计算机里,所以视为将这个数据的逻辑结构映射到存储器里。即数据因为自身的和其他的数据的关系而在计算机内存储的方式。我们就归类了一些类型。 二…

【数据结构】栈(C语言实现)

📙 作者简介 :RO-BERRY 📗 学习方向:致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 📒 日后方向 : 偏向于CPP开发以及大数据方向,欢迎各位关注,谢谢各位的支持 栈 1.栈1.1栈的概念及结构…

2023年中国商业版服务器操作系统市场发展规模分析:未来将保持稳定增长[图]

服务器操作系统一般指的是安装在大型计算机上的操作系统,比如Web服务器、应用服务器和数据库服务器等,是企业IT系统的基础架构平台,也是按应用领域划分的三类操作系统之一。同时服务器操作系统也可以安装在个人电脑上。 服务器操作系统分类 …

荧光EEM平滑教程(去除散射)

说明:本文为drEEM工具箱官网教程《Smoothing EEMs》的笔记。 瑞利散射是一种弹性散射。来自激发源的光子遇到溶液中的分子之后,反弹到各个方向。 最重要的是,瑞利散射(的发射波长)总是与激发波长完全相等。 因此&…

深入研究Java线程Dump分析:掌握发现和解决多线程问题的关键技巧

1 Thread Dump介绍 1.1 什么是Thread Dump Thread Dump是非常有用的诊断Java应用问题的工具。每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机打印的thread dump略有不同,但是大多都提供了当前活动线程的快…

关于python环境下的语音转文本,whisper或funASR

因为前阵子,有需求要将语音转为文本再进行下一步操作。感觉这个技术也不算是什么新需求,但是一搜,都是大厂的api,或者是什么什么软件,由于想要免费的,同时也要嵌入在代码中,所以这些都不能用。、…

一个三年女软件测试的成长之路

如果你恰好刚刚进入一家新公司,领导一上来就让你开展自动化测试,作为一名初出茅庐的测试新人,除了手足无措,你只能默默慨叹自己能力尚欠,眼前只会出现一个又一个无从下手的问题: 作为手工测试,…

55 零钱兑换

零钱兑换 题解1 DP另一种解法(更好记) 题解2 递归 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回…