JSP脚本漏洞面面观
JSP脚本漏洞面面观
发布时间:2016-12-26 来源:查字典编辑
摘要:服务器漏洞是安全问题的起源,黑客对网站的攻击也大多是从查找对方的漏洞开始的。所以只有了解自身的漏洞,网站管理人员才能采取相应的对策,阻止外来...

服务器漏洞是安全问题的起源,黑客对网站的攻击也大多是从查找对方的漏洞开始的。所以只有了解自身的漏洞,网站管理人员才能采取相应的对策,阻止外来的攻击。下面介绍一下一些服务器(包括Web服务器和JSP服务器)的常见漏洞。

Apache泄露重写的任意文件漏洞是怎么回事?

在Apache1.2以及以后的版本中存在一个mod_rewrite模块,它用来指定特殊URLS在网络服务器文件系统上所映射的绝对路径。如果传送一个包含正确表达参数的重写规则,攻击者就可以查看目标主机上的任意文件。

下面举例说明重写规则指令(其中第一行只有是包含漏洞的):

RewriteRule/test/(.*)/usr/local/data/test-stuff/$1

RewriteRule/more-icons/(.*)/icons/$1

RewriteRule/go/(.*)http://www.apacheweek.com/$1

受影响的系统:

1)Apache1.3.12

2)Apache1.3.11win32

3)Apache1.2.x

不受影响系统:Apache1.3.13

怎样解决在HTTP请求中添加特殊字符导致暴露JSP源代码文件?

UnifyeWaveServletExec是一个Java/JavaServlet引擎插件,主要用于WEB服务器,例如:MicrosoftIIS,Apache,NetscapeEnterprise服务器等等。

当一个HTTP请求中添加下列字符之一,ServletExec将返回JSP源代码文件。

.

%2E

+

%2B

%5C

%20

%00

成功的利用该漏洞将导致泄露指定的JSP文件的源代码,例如:使用下面的任意一个URL请求将输出指定的JSP文件的源代码:

1)http://target/directory/jsp/file.jsp.

2)http://target/directory/jsp/file.jsp%2E

3)http://target/directory/jsp/file.jsp+

4)http://target/directory/jsp/file.jsp%2B

5)http://target/directory/jsp/file.jsp

6)http://target/directory/jsp/file.jsp%5C

7)http://target/directory/jsp/file.jsp%20

8)http://target/directory/jsp/file.jsp%00

受影响的系统:

1)UnifyeWaveServletExec3.0c

2)SunSolaris8.0

3)MicrosoftWindows98

4)MicrosoftWindowsNT4.0

5)MicrosoftWindowsNT2000

6)Linuxkernel2.3.x

7)IBMAIX4.3.2

8)HPHP-UX11.4

解决方案:

如果没有使用任何静态页面或图像,可以配置一个默认的servlet,并将"/"映射到这个默认的servlet。这样当收到一个未映射到某个servlet的URL时,这个默认的servlet就会被调用。在这种情况下,默认的servlet可以仅仅返回"未找到文件"。如果使用了静态的页面或图像,仍然可以作这样的配置,但是需要让这个默认的servlet处理对合法的静态页面和图像的请求。

另一种可能就是将*.jsp+、*.jsp.和*.jsp等映射到一个servlet,而该servlet只是返回"未找到文件"。对于*.jsp%00和*.jsp%20这样的情况,映射应以未经编码的形式输入。例如,对于*.jsp%20的映射应输入"*.jsp"。注意%20被转换成一个空格字符。

Tomcat有哪些漏洞?

Tomcat3.1存在暴露网站路径问题

Tomcat3.1是在Apache软件环境下开发的一个支持JSP1.1和Servlets2.2的软件。它存在一个安全问题当发送一个不存在的jsp请求时会暴露网站上网页的全路径。

举例:

http://narco.guerrilla.sucks.co:8080/anything.jsp

结果显示:

Error:404

Location:/anything.jsp

JSPfile"/appsrv2/jakarta-tomcat/webapps/ROOT/anything.jsp"notfound

解决方案:升级到新版本

Tomcat暴露JSP文件内容

JavaServerPages(JSP)类型的文件是以'.jsp'扩展名在Tomcat上注册,Tomcat是文件名大小写敏感的,'.jsp'和'.JSP'是不同类型的文件扩展名。如果提交有'.JSP'的链接给Tomcat,而Tomcat找不到'.JSP'就会以默认的'.text'文件类型来响应请求。因为在NT系统中大小写文件名是非敏感的,所以被请求的文件会以文本的形式送出。

如果在UNIX服务器上会出现"filenotfound"的错误信息。

如何在windows下对Tomcat实施代码保护

Tomcat的一些版本有泄露源代码的漏洞,如果在浏览器中调用JSP页面时将该文件的后缀改成大写,这个JSP文件的源代码将完全输出到浏览器中(也许浏览器窗口中什么都没有,这时你只需查看HTML源文件就可以发现)。如此一来,网站的源代码是不是都会暴露在互联网上那?

不用担心,解决方法很简单,把各种后缀的组合全部写到Tomcat_Homeconfweb.xml里就可以了,这样Tomcat会将不同后缀名的JSP分开对待,就不会泄露代码了。

jsp

*.jsp

jsP

*.jsP

?lt;servlet-name>jSp

*.jSp

jSP

*.jSP

Jsp

*.Jsp

JsP

*.JsP

JSp

*.JSp

JSP

*.JSP

AllairJrun漏洞有哪些漏洞?

AllairJRUN非法读取WEB-INF漏洞

在Allaire的JRUN服务器2.3版本中存在一个严重的安全漏洞。它允许一个攻击者在JRun3.0服务器中查看WEB-INF目录。

如果用户在提交URL请求时在,通过附加一个"/"使该URL成为畸形的URL,这时WEB-INF下的所有子目录将会暴露出来。攻击者巧妙的利用该漏洞将能够远程获得目标主机系统中WEB-INF目录下的所有文件的读取权限。

例如使用下面这个URL将会暴露WEB-INF下的所有文件:

http://site.running.jrun:8100//WEB-INF/

受影响的系统:AllaireJRun3.0

解决方案:下载并安装补丁:

Allairepatchjr233p_ASB00_28_29

http://download.allaire.com/jrun/jr233p_ASB00_28_29.zip

Windows95/98/NT/2000andWindowsNTAlpha

Allairepatchjr233p_ASB00_28_29tar

http://download.allaire.com/jrun/jr233p_ASB00_28_29.tar.gz

UNIX/Linuxpatch-GNUgzip/tar

AllaireJRUN2.3查看任意文件漏洞

Allaire的JRUN服务器2.3上存在多重显示代码漏洞。该漏洞允许攻击者在WEB服务器上查看根目录下的任意文件的源代码。

JRun2.3使用JavaServlets解析各种各样类型的页面(例如:HTML,JSP等等)。基于rules.properties和servlets.properties的文件设置,可能利用URL前缀"/servlet/"调用任何servlet。

它可能使用Jrun的SSIFilterservlet在目标系统上检索任意的文件。下列2个例子显示出能被用来检索任意的文件的URLs:

http://jrun:8000/servlet/com.livesoftware.jrun.plugins.ssi.SSIFilter/../../test.jsp

http://jrun:8000/servlet/com.livesoftware.jrun.plugins.ssi.SSIFilter/../../../../../../../boot.ini

http://jrun:8000/servlet/com.livesoftware.jrun.plugins.ssi.SSIFilter/../../../../../../../winnt/repair/sam

http://jrun:8000/servlet/ssifilter/../../test.jsp

http://jrun:8000/servlet/ssifilter/../../../../../../../boot.ini

http://jrun:8000/servlet/ssifilter/../../../../../../../winnt/repair/sam._

注意:假设JRun在主机"jrun"上运行,端口8000。

受影响的系统:AllaireJRun2.3.x

解决方案:下载并安装补丁:

Allairepatchjr233p_ASB00_28_29

http://download.allaire.com/jrun/jr233p_ASB00_28_29.zip

Windows95/98/NT/2000andWindowsNTAlpha

Allairepatchjr233p_ASB00_28_29tar

http://download.allaire.com/jrun/jr233p_ASB00_28_29.tar.gz

UNIX/Linuxpatch-GNUgzip/tar

AllaireJRUN2.3远程执行任意命令漏洞

Allaire的JRUN服务器2.3上存在一个安全漏洞,允许远程用户把在WEB服务器上的任意文件作为JSP代码编译/执行。如果URL请求的目标文件使用了前缀"/servlet/",则JSP解释执行功能被激活。这时在用户请求的目标文件路径中使用"../",就有可能访问到WEB服务器上根目录以外的文件。在目标主机上利用该漏洞请求用户输入产生的一个文件,将严重威胁到目标主机系统的安全。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新漏洞研究学习
热门漏洞研究学习
实用技巧子分类