AntiSamy为owasp针对xss提供的处理库,可以配置xml策略来决定过滤的内容,比如标签、属性、css等,自定义策略给开发人员使用成本比较高,AntiSamy也提供了几个内置的策略,其安全级别也不同,过滤的内容也不一样,下边是针对自带的策略的测试。

测试代码:

package com.didichuxing.hive.client;

import org.owasp.validator.html.AntiSamy;import org.owasp.validator.html.CleanResults;import org.owasp.validator.html.Policy;

public class RichTextXssTest {

    public static void main(String[] args) {

                AntiSamy as = new AntiSamy();                try{                    //Policy policy = Policy.getInstance("antisamy-slashdot.xml");                    Policy policy = Policy.getInstance("antisamy-ebay.xml");

                    CleanResults cr = as.scan("<img src=http://www.qq.com/a.jpg />", policy);                    System.out.print(cr.getCleanHTML() + "1\r\n");

                    cr = as.scan("<sCript src=http://www.qq.com/a.js />", policy);                    System.out.print(cr.getCleanHTML() + "2\r\n");

                    cr = as.scan("<img src=http://www.qq.com/a.jpg οnclick=alert(1) />", policy);                    System.out.print(cr.getCleanHTML() + "3\r\n");

                    cr = as.scan("onfinish=javascript:a=alert;a(1)%3E%3C!—", policy);                    System.out.print(cr.getCleanHTML() + "4\r\n");

                    cr = as.scan("<img src=\"javascript:alert('XSS')\">", policy);                    System.out.print(cr.getCleanHTML() + "5\r\n");

                    cr = as.scan("<IMG src=JaVaScRiPt:alert('XSS')>", policy);                    System.out.print(cr.getCleanHTML() + "6\r\n");

                    cr = as.scan("<IMG src=&#x6A&#x61&#x76&#x61&#x73&#x63&#x72&#x69&#x70&#x74&#x3A&#x61&#x6C&#x65&#x72&#x74&#x28&#x27&#x58&#x53&#x53&#x27&#x29>", policy);                    System.out.print(cr.getCleanHTML() + "7\r\n");

                    cr = as.scan("<STYLE TYPE=\"text/javascript\">alert('XSS');</STYLE>", policy);                    System.out.print(cr.getCleanHTML() + "8\r\n");

                    cr = as.scan("<A href=http://www.gohttp://www.google.com/ogle.com/>link</A>", policy);                    System.out.print(cr.getCleanHTML() + "9\r\n");

                    cr = as.scan("<META HTTP-EQUIV=\"refresh\" CONTENT=\"0;url=javascript:alert('XSS');\">", policy);                    System.out.print(cr.getCleanHTML() + "10\r\n");

                }                catch(Exception ex) {                    ex.printStackTrace();                } ;            }

}一共测试了10个payload,测试结果如下:
antisamy-ebay.xml 策略的测试结果

antisamy-slashdot.xml 策略的测试结果:

antisamy-myspace.xml策略的测试结果:

antisamy-tinymce.xml策略的测试结果:

antisamy-anythinggoes.xml策略的测试结果

默认策略antisamy.xml 策略的测试结果:



转载于:https://www.cnblogs.com/SEC-fsq/p/8880190.html

AntiSamy测试相关推荐

  1. antisamy java_antisamy的使用方法

    标 题: antisamy的使用方法 作 者: 狂逆着风 链 接: http://blog.sina.com.cn/s/blog_47d78bed0100wnrs.html antisamy是owas ...

  2. AntiSamy:防 XSS 攻击的一种解决方案使用教程

    AntiSamy:防 XSS 攻击的一种解决方案使用教程 1. XSS 介绍 2. AntiSamy 介绍 3. AntiSamy 使用 3.1 导入依赖 3.2 选择策略文件 3.3 SpringB ...

  3. antisamy java_XSS 简单理解之:AntiSamy

    AntiSamy介绍 OWASP是一个开源的.非盈利的全球性安全组织,致力于应用软件的安全研究.我们的使命是使应用软件更加安全,使企业和组织能够对应用安全风险作出更清晰的决策.目前OWASP全球拥有1 ...

  4. 使用AntiSamy拦截xss攻击

    什么是Xss攻击 XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中.比如这些代码包括HTML代码和客户端脚本.攻击者利用XSS漏洞旁路掉访 ...

  5. 使用AntiSamy防范XSS跨站脚本攻击

    0x00 什么是XSS? XSS(Cross Site Scripting),即跨站脚本攻击,是一种常见于web application中的计算机安全漏洞.XSS通过在用户端注入恶意的可运行脚本,若服 ...

  6. XSS防范--AntiSamy介绍

    AntiSamy介绍 OWASP是一个开源的.非盈利的全球性安全组织,致力于应用软件的安全研究.我们的使命是使应用软件更加安全,使企业和组织能够对应用安全风险作出更清晰的决策.目前OWASP全球拥有1 ...

  7. locust入门:单机使用locust运行压力测试

    locust的官方文档在这里: http://docs.locust.io/en/stable/ 前置:locust的测试脚本使用为python(若未安装python环境,可以搜索安装python) ...

  8. HA: InfinityStones靶机渗透测试

    文章目录 靶机信息 一.信息收集 1.主机发现 2.端口扫描 3.目录扫描 二.漏洞挖掘 1.访问 192.168.1.108 2.访问 /img 目录 3.访问 https 服务(443)端口 4. ...

  9. HA: Forensics靶机渗透测试

    文章目录 靶机说明: 一.信息收集 1.主机发现 2.端口扫描 二.漏洞挖掘 1.访问靶机 web 服务 2.使用 dirb 进行目录扫描 3.使用 exiftool 提取数据 4.使用 dirb 扫 ...

最新文章

  1. oracle 按照周 分组
  2. jenkins插件findbugs+pmd+checkstyle结合sonar与maven(java环境代码质量和代码规范管理)...
  3. 她琴棋书画全能,还进入清华计算机系实验室,被赞智商太超群、能力过强悍...
  4. ajax——XMLHttpRequest
  5. 创建型设计模式 之 单例模式
  6. 红帽集群套件RHCS
  7. 牛客题霸 NC12 重建二叉树
  8. 目标检测--Selective Search for Object Recognition(IJCV, 2013)
  9. 叮咚,系统检测到 npm 有更新,原理揭秘!
  10. Java 12 将于3月19日发布,8 个最终 JEP 一览
  11. 手机号判断正则php2019,2019手机号码JS正则表达式验证实例代码
  12. Qt:QListWidget的item上实现右键菜单
  13. 死磕 java同步系列之AQS起篇
  14. 文字处理技术:形状绕排的难点
  15. 如何实现单行/多行文本溢出的省略样式?
  16. 对HackTheBox里面的Bastion测试
  17. 数据分析之实战项目——电商用户行为分析
  18. 二本毕业生如何从苦逼到强大的求职记(鲍金勇)
  19. Tesla M40 训练机组装与散热改造
  20. 刷机案例-----谷歌pixel系列机型刷写系统的一些问题解析

热门文章

  1. 空间谱专题08:相位模糊
  2. 我大学期间看的好书推荐
  3. SPI参数化分配寄存器
  4. Application.mk用法详解
  5. sap 分割评估_SAP那些事-实战篇-73-受托加工的几种方案探讨
  6. 生产管理erp系统源码_仁和ERP企业管理系统提高生产管理流程
  7. 【TensorFlow-windows】keras接口——利用tensorflow的方法加载数据
  8. Recall(召回率) Precision(准确率) F-Measure E值 sensitivity(灵敏性) specificity(特异性)漏诊率 误诊率 ROC AUC
  9. Class Imbalance Problem
  10. Pots (BFS ➕ 输出路径)