当前位置: 首页 > 图文教程 > 网络编程 > JSP > Sun Java Web Server 能让攻击者远程执行任意命令

JSP
JSP由浅入深(8)
JSP由浅入深(5-2)
JSP由浅入深(5-1)
[学习笔记]**编写"纯HTML"jsp应用--学会使用JSTL**
小议<scriptsrc=aaa.js></script>
[学习笔记]**编写"纯HTML"jsp应用--学会使用
HTML和javascript结合的例子
讲一讲setproperty(name="*")的用法或介绍相关资料
关于Servlet、Jsp中的多国语言显示(续)<太长了>
JSP语法(8)——<jsp:forward>
JSP语法(9)——<jsp:getProperty>
JSP语法(10)——<jsp:include>
JSP语法(12)——<jsp:useBean>
JSP语法(11)——<jsp:plugin>
关于认证的一些介绍
JSP语法(13)——<jsp:useBean>
java反射技术(一)
JAVA反射技术(二)
jsp连接mysql数据库大全
JSP入门教程(2)

JSP 中的 Sun Java Web Server 能让攻击者远程执行任意命令


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 58 ::
收藏到网摘: n/a

涉及程序:
Solaris and Windows NT

描述:
Sun Java Web Server 能让攻击者远程执行任意命令

详细:
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服务器权限执行命令。


以下代码仅仅用来测试和研究这个漏洞,如果您将其用于不正当的途径请后果自负


使用下面的JSP 代码将打印出"Hello World":
% String s="Hello World"; %>
<%=s %>
在留言版中提交:
http://jws.site:9090/examples/applications/bboard/bboard_frames.html
然后通过 http://jws.site:9090/board.html 确认已经提交。
在下面编译并执行代码:
http://jws.site:9090/servlet/com.sun.server.http.pagecompile


解决方案:
下载并安装补丁:
http://java.sun.com/products/java-server/jws113patch3.html
http://java.sun.com/products/java-server/jws20patch3.html


附加信息:
Saumil Shah ([email protected])
Shreeraj Shah ([email protected])
Stuart McClure ([email protected])
Foundstone, Inc. (http://www.foundstone.com)

相关站点:
http://www.foundstone.com