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

JSP
在JSP中访问Oracle数据库
在JSP中访问数据库大全
用简单的代码来实现文件上传
一个分页的类及调用的例子
以IP与Port建立与SQLSERVER的连接
在JSP中处理虚拟路径
JSP的内部对象
JSP中使用JavaMail
批量处理JDBC语句提高处理速度
购物车的源程序
JSP语法Page指令
JDBC-ODBC翻页例子
JSP数据库操数据分页显示
JSP的出错处理
JSP计数器的制作
jsp实现cookie的使用
实现论坛树型结构的具体算法
jsp搜索引擎
利用JSP建立Web站点
JSP读取文件实例

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 65 ::
收藏到网摘: 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