Sun Java Web Server可以远程执行任意命令
发布日期:2000-08-23
更新日期:2000-08-23
受影响系统:
Sun Java Web Server 2.0
Sun Java Web Server 1.1.3
- Sun Solaris
- Sun Solaris 8.0
- Sun Solaris 7.0
- Sun Solaris 2.x
- Microsoft Windows NT 4.0
描述:
Sun的Java Web服务器存在多个安全问题,允许攻击者远程以web服务器权限执行命令。
它的Web管理模块监听9090端口,通过http处理管理命令。
"com.sun.server.http.pagecompile.jsp92.JspServlet" servlet用来编译并执行JSP文件的,
通过增加"/servlet/"前缀,远程用户可以使用这个servlet来编译并执行管理目录下的任意JSP
文件。
这个服务器缺省带了一个留言版的演示程序,它允许用户通过
http://jws.site:9090/examples/applications/bboard/bboard_frames.html
提交文章并将提交的内容储存在board.html中。
攻击者可以将某些JSP语句通过留言版输入,然后调
用"com.sun.server.http.pagecompile.jsp92.JspServlet"去编译执行board.html文件:
http://jws.site:9090/servlet/com.sun.server.http.pagecompile.jsp92.JspServlet/board.html
这将导致攻击者远程以web服务器权限执行命令。
<*来源: Saumil Shah (
saumil.shah@foundstone.com)
Shreeraj Shah (
shreeraj.shah@foundstone.com)
Stuart McClure (
stuart.mcclure@foundstone.com)
Foundstone, Inc. (
http://www.foundstone.com)
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
将这段代码:
<% String s="Hello World"; %>
<%=s %>
在留言版中提交:
http://jws.site:9090/examples/applications/bboard/bboard_frames.html
然后通过 http://jws.site:9090/board.html 确认已经提交。
使用下列链接就可以打印出"Hello world"内容了:
http://jws.site:9090/servlet/com.sun.server.http.pagecompile.jsp92.JspServlet/board.html
建议:
临时解决方法:
删除演示勇的留言版程序
厂商补丁:
Sun已经提供了相应的补丁程序:
Java Web Server Version Patch ID
------------------------ -----------
1.1.3 Patch 3
2.0 Patch 3
http://java.sun.com/products/java-server/jws113patch3.html
http://java.sun.com/products/java-server/jws20patch3.html
浏览次数:8350
严重程度:0(网友投票)