Web安全测试知识点有哪些

发布时间 - 2023-05-11 00:00:00    点击率:

什么是安全测试?

安全测试就是要提供证据表明,在面对敌意和恶意输入的时候,应用仍然能够充分的满足它的需求。

a.如何提供证据?我们通过一组失败的安全测试用例执行结果来证明web应用不满足安全需求。

b.如何看待安全测试的需求?与功能测试相比,安全测试更加依赖于需求,因为它有更多可能的输入和输出可供筛选。

真正的软件安全其实际上指的是风险管理,即我们确保软件的安全程度满足业务需要即可。

如何开展安全测试?

基于常见攻击和漏洞并结合实际添加安全测试用例,就是如何将安全测试变为日常功能测试中简单和普通的一部分的方法。

选择具有安全意义的特殊边界值,以及具有安全意义的特殊等价类,并将这些融入到我们的测试规划和测试策略过程中。

但是若在功能测试基础上进行安全测试,则需要增加大量测试用例。这意味着必须做两件事来使其便于管理:缩小关注的重点和测试自动化。

Web安全测试通常要考虑的测试点?

1、问题:没有被验证的输入
测试方法:

数据类型(字符串,整型,实数,等)
允许的字符集

最小和最大的长度
是否允许空输入
参数是否是必须的
重复是否允许
数值范围
特定的值(枚举型)
特定的模式(正则表达式)

2、问题:有问题的访问控制

测试方法:

主要用于需要验证用户身份以及权限的页面,复制该页面的url地址,关闭该页面以后,查看是否可以直接进入该复制好的地址
例:从一个页面链到另一个页面的间隙可以看到URL地址,直接输入该地址,可以看到自己没有权限的页面信息

3、错误的认证和会话管理

例:对Grid、Label、Tree view类的输入框未作验证,输入的内容会按照html语法解析出来
4、缓冲区溢出

没有加密关键数据

例:view-source:http地址可以查看源代码,在页面输入密码,页面显示的是 *****, 右键,查看源文件就可以看见刚才输入的密码

5、拒绝服务

分析:攻击者可以从一个主机产生足够多的流量来耗尽狠多应用程序,最终使程序陷入瘫痪,需要做负载均衡来对付
6、不安全的配置管理

分析:Config中的链接字符串以及用户信息,邮件,数据存储信息都需要加以保护。

程序员应该做的:配置所有的安全机制,关掉所有不使用的服务,设置角色权限帐号,使用日志和警报

分析:用户使用缓冲区溢出来破坏web应用程序的栈,通过发送特别编写的代码到web程序中,攻击者可以让web应用程序来执行任意代码

7、注入式漏洞
例:一个验证用户登陆的页面,

如果使用的sql语句为:

Select * from table A where username=’’ + username+’’ and pass word …..

Sql 输入 ‘ or 1=1 ―― 就可以不输入任何password进行攻击

8、不恰当的异常处理

分析:程序在抛出异常的时候给出了比较详细的内部错误信息,暴露了不应该显示的执行细节,网站存在潜在漏洞

9、不安全的存储

分析:帐号列表,系统不应该允许用户浏览到网站所有的帐号,如果必须要一个用户列表,推荐使用某种形式的假名(屏幕名)来指向实际的帐号。

浏览器缓存:认证和会话数据不应该作为GET的一部分来发送,应该使用POST

10、问题:跨站脚本(XSS)

分析:攻击者使用跨站脚本来发送恶意代码给没有发觉的用户,窃取他机器上的任意资料

测试方法:

HTML标签:……>

转义字符:&(&);(>); (空格) ;

脚本语言:

…Alert(‘’)

特殊字符:‘ ’ /

最小和最大的长度

是否允许空输入


# 帐号  # 应用程序  # 可以看到  # 不安全  # 就可以  # 的是  # 出了  # 基础上  # 推荐使用  # 右键 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 利用vue写todolist单页应用  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】  电商网站制作价格怎么算,网上拍卖流程以及规则?  如何获取PHP WAP自助建站系统源码?  JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)  网站建设要注意的标准 促进网站用户好感度!  Android自定义控件实现温度旋转按钮效果  在线制作视频网站免费,都有哪些好的动漫网站?  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  在Oracle关闭情况下如何修改spfile的参数  如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)  如何确保FTP站点访问权限与数据传输安全?  移动端脚本框架Hammer.js  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  千库网官网入口推荐 千库网设计创意平台入口  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  网站制作大概多少钱一个,做一个平台网站大概多少钱?  深入理解Android中的xmlns:tools属性  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  如何用PHP快速搭建高效网站?分步指南  简单实现Android验证码  Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】  EditPlus中的正则表达式 实战(1)  无锡营销型网站制作公司,无锡网选车牌流程?  如何有效防御Web建站篡改攻击?  如何用已有域名快速搭建网站?  PHP 500报错的快速解决方法  奇安信“盘古石”团队突破 iOS 26.1 提权  想要更高端的建设网站,这些原则一定要坚持!  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  如何在云主机上快速搭建网站?  如何在香港服务器上快速搭建免备案网站?  详解jQuery中的事件  Laravel如何为API编写文档_Laravel API文档生成与维护方法  bootstrap日历插件datetimepicker使用方法  如何确认建站备案号应放置的具体位置?  Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  大型企业网站制作流程,做网站需要注册公司吗?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  SQL查询语句优化的实用方法总结  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  如何在宝塔面板创建新站点?