首页 > 其他分享 >web基础漏洞-xss手工测试与自动测试

web基础漏洞-xss手工测试与自动测试

时间:2023-10-20 18:14:24浏览次数:36  
标签:web 手工 字符 自动测试 参数 测试 xss payload

手工测试,一般是指结合浏览器和burp的重放进行。

1、反射型xss手工测试

1.1 测试是否返回

如果测试参数在响应的体部中并未返回,那么基本可以判断不存在反射型xss。

问题1:测试参数在响应中固有

  • 如果测试参数除了包含返回之外,还存在固有。这样的话,直接根据测试参数是否在响应体部中包含就没有意义。
  • 解决办法是:样本请求一次,然后设置测试参数为适当值,再进行测试。比较后者参数值在两次请求的响应体部中的个数,如果在后者中的个数大于前者,说明存在返回。

问题2:跳转其它页面

  • 由于测试参数包含敏感字符或者关键字,服务端转向到其它页面。
  • 解决办法:会有一定影响,但一般不用过于担心,异常页面只要包含测试参数,那么也可以存在xss

1.2 测试敏感字符

xss的利用大多数情况下都需要基于敏感字符,而对敏感字符进行编码是xss的主要防护方式之一。

所以在构造更正式的脚本payload之前,一般会简单的对常见的几个敏感字符进行测试。'"<>/

1.3 测试关键词和其它

除了敏感字符过滤,服务端还可能过滤常见的html/js关键词,比如alert,window,eval等。

以及对参数字符长度的检查、设置响应头部等。

1.4 测试脚本payload

2、存储型xss手工测试

其测试过程和反射型xss手工测试基本一致,区别在于基于一个请求携带payload发送后,需要基于另一个请求以获取payload进行分析。

3、dom型xss手工测试

相对反射型和存储型的嵌入式解析,dom型的场景更加复杂,并没有太好的测试方法。

一般是在响应中搜索js关键词,比如document.write(,eval(。另一方面是聚焦攻击者可控制的参数,梳理数据流向。

4、反射型xss自动测试

 

标签:web,手工,字符,自动测试,参数,测试,xss,payload
From: https://www.cnblogs.com/wd404/p/17777700.html

相关文章

  • web基础漏洞-xss
    1、介绍xss,crosssitescript跨站脚本攻击,是指攻击者构造payload,使其在用户的浏览器上解析为脚本执行,从而造成危害。脚本一般是指js,但广义上vbscript和actionscript(flash)等其它脚本可以造成xss。xss一般发生在浏览器,但广义上任何支持脚本解析的应用都有可能造成xss。危害是......
  • HTML5+CSS3+移动web 前端开发入门笔记(一)
    千古前端图文教程千古前端图文教程git的使用Git是一个分布式版本控制系统,它的作用主要包括以下几个方面:版本管理:Git可以跟踪文件的修改历史,记录每次提交的内容、时间和作者等信息。通过Git,开发人员可以轻松地查看和比较不同版本之间的差异,回滚到历史版本或者创建新的分支。多人协作......
  • 【PowerShell】Invoke-WebRequest和Invoke-RestMethod
    ##PublicfreeRestfulAPIURL ##https://documenter.getpostman.com/view/8854915/Szf7znEe#intro#Example01#--------------------------------------------------------------$url="https://cat-fact.herokuapp.com/facts/"$r=Invoke-WebReques......
  • Web前端使用 $.ajax 和 XMLHttpRequest 请求的区别
    1、首先是我使用XMLHttpRequest进行后台请求,我在请求前。会把按钮置为灰色。 $('button[type="generateProductBop"]').css("background-color","#d4d4d4");在最后的finally才把按钮,重新置换回来原来的颜色$('button[type="generateProductBop"]').css(......
  • Javaweb(十一)
    1、实现登录操作时提示的错误信息可封装在request域中,如下所示:然后再JSP中访问域中的数据:<divid="errorMsg">${login_msg}${register_msg}</div>获取cookie中的值:2、Filter概念:Filter表示过滤器,是JavaWeb三大组件(Servlet、Filter、Listener)之一。过滤器可以把对资源的......
  • Java资源文件获取方法详解:从 Classpath 到 Web 应用程序
    在Java开发中,访问和读取资源文件是一个常见的需求。这些资源可以是配置文件、图像、音频、视频、文本文件等。在Java中,获取资源文件有多种方式,包括直接通过类路径(Classpath)访问,或者通过Web应用程序的上下文路径(ContextPath)访问。以下我们将详细探讨这些方法。通过类路径(Classpath)......
  • Javaweb前端-cnblog
    HTML+CSS+JS+Vue+Element目录HTML+CSS+JS+Vue+Element一、基本概念二、Web服务器三、HTMLCSS3.1官方文档四、JavaScript五、Vue六、Ajax七、前端工程化八、Element一、基本概念静态web:html,css缺点:无法动态更新;无法和数据库交互伪动态:轮播图、点击特效(JavaScript)......
  • Javaweb后端-cnblog
    Javaweb后端目录Javaweb后端MavenHTTP请求响应请求(补充)xml文件分层解耦三层架构IOC/DI入门IoC控制反转DI依赖注入MySQL事务索引分页查询MyBatis快速入门数据库连接池Lombok增删改查删除新增查询条件查询xml映射文件动态sql案例部门管理分页查询文件上传阿里云OSS配置文件参数......
  • 第九章、web前端架构师
    目录十八、编辑器组件图层面板功能开发1、前言十八、编辑器组件图层面板功能开发1、前言*引言-......
  • Web应用实现读取写入剪贴板功能几种方式
     Clipboard接口实现了ClipboardAPI,如果用户授予了相应的权限,其就能提供系统剪贴板的读写访问能力。在Web应用程序中,ClipboardAPI可用于实现剪切、复制和粘贴功能。参考: https://developer.mozilla.org/zh-CN/docs/Web/API/ClipboardClipboardAPI包括两个主要的接......