赞
踩
一、介绍ESAPI
ESAPI (OWASP企业安全应用程序接口)是一个免费、开源的、网页应用程序安全控件库,它使程序员能够更容易写出更低风险的程序。ESAPI接口库被设计来使程序员能够更容易的在现有的程序中引入安全因素。ESAPI库也可以成为作为新程序开发的基础。
二、所需要的软件
我下载后的文件放置在 【E:\软件源文件 】中
三、使用方法
1.将下载好的文件解压。解压的文件夹在【E:\软件源文件】
2.将文件下列文件加入到
1)E:\软件源文件\esapi-2.1.0-dist\esapi-2.1.0.jar
2) E:\软件源文件\esapi-2.1.0-dist\libs
如下所示,不要告诉我你不会加入路径哦~
3. 新建源文件EsapiTest.java,代码如下所示
- package qwert; //我自己建的包
-
- import org.owasp.esapi.ESAPI;
-
- public class EsapiTest{
- public static void main(String[] args){
-
- String safe = ESAPI.encoder().encodeForHTML("<script>alert('xss')</script>");
-
- System.out.println(safe);
- }
- <span style="font-family:KaiTi_GB2312;">}
- </span>
运行代码:
分析出现的问题:无法找到目录文件。
解决方法:将【E:\软件源文件\esapi-2.1.0-dist\src\test\resources\esapi】下的ESAPI.properties和validation.properties复制到【C:\Users\wangwr】目录下新建esapi文件夹中。
设置完后,继续运行,此时不会出现无法找到目录文件的错误,而是出现下列错误。
该错误让我花了大半天的时间解决,找了很多的英文资料,最终的原因是apache.log4j文件的问题。
上述原因描述的结果是 java.lang.ClassNotFoundException: org.apache.log4j.spi.LoggerFactory,即,找不到log4j文件的原因,但在libs中确实有该jar文件。
解决方法:找了好久的资料,花了大半天的时间,最后在英文论坛上找到有人用的是log4j-1.2.17,于是用尝试的方式去在官网上下载了log4j-1.2.17。
解压后,将其中的【E:\软件源文件\log4j-1.2.17\apache-log4j-1.2.17】的log4j-1.2.17.jar文件加入到path中,然后在运行
结果就出来了。如下所示:
四、总结
经过一番折腾,简单的ESAPI实现xss终于搞定了,虽然整体来说不难,但是对于一个初学者来说,并且在已有资料很少且不详细的情况下,要完成还是折腾了好久。希望把自己的整个过程写下来,方便大家学习。
ps:如果有需要软件的话,可以给我留言~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。