webshell之API免杀

ScriptEngineManager命令执行免杀

ScriptEngineManager执行js代码

利用ScriptEngineManager可以执行js命令,但是由于一般情况下,即便能运行js代码也不一定能执行系统命令。因为一般情况下js执行系统命令主要是依靠两种方式,IE的ActiveX插件和node.js,然而ScriptEngineManager并非浏览器,很多内置函数都没有,导致很难执行系统命令。

ScriptEngineManager执行python代码

利用ScriptEngineManager可以执行python命令,想执行python代码的条件是目标机器存在python2的环境,不接安装了jython依赖,经过测试发现,利用jython并不能使用os.system,os.popen等命令执行函数,但一些文件操作还是可以利用的,以此很难利用

JNI执行c/c++代码

由于生成dll可能会出现问题,浪费大家时间,这里直接给出源代码以及生成命令Demo.h

Demo.h生成:

Demo.cpp

这里的Demo.cpp直接当模板改就行了

生成Dll:(注意路径)

Demo.class

按照正常套路,应该是直接移殖到jsp上,代码如下

但发现并不能正常运行,通过分析发现原因还是在DLL上,由于在生成DLL时类的全限定名,已经写死了,导致在jsp中定义的类的全限定名与DLL中的不一致,导致无法正常运行。为了时全限定名一致,笔者使用字节码进行加载,但可惜的是,本地方法(native)并本来通过反射调用。最后得出结论,jni是无法作为webshell来执行命令的

JShell

由于Jshell是jdk9及以上版本才有的新功能,因此适用面不是特别广,但依旧值得一试。

免杀效果:

总结:

本文讲解了一下,利用一些不常用的api进行命令执行,达到免杀的效果,但是由于利用条件苛刻,在实战中不太容易用到,不过这也不是无意义的,说不定在你一筹莫展的时候会给你带来新的思路。

相关推荐
小虎牙^O^几秒前
棋盘格隐写:基于奇偶相位的双图隐藏与还原
图像处理·python·安全
962456几秒前
餐饮 SaaS 优惠券系统架构演进(九)营销策略 DSL 与规则生命周期:从运营配置、静态校验到编译执行、影响面分析与安全发布
安全·系统架构
易点云徐源1 分钟前
Microsoft Teams 桌面端黑屏与登录异常排查:账户会话和网络路径的影响
网络·microsoft
VimorphTech3 分钟前
转写结果怎么生成双语字幕?TypeScript 实现 SRT、WebVTT 与索引匹配
javascript·音视频开发
lisw054 分钟前
环境智能(ambient intelligence)概述!
网络·人工智能·计算机视觉
墨云安全8 分钟前
AI 渗透测试是怎么实现的?2026 年大模型驱动测试用例生成的工程拆解
网络·人工智能·网络安全·渗透测试·测试用例
阿文和她的Key8 分钟前
私有化 AI 基座的三层分工:环境层、管控层、网关层各自解决什么
网络·人工智能
qq_2842740512 分钟前
信号分析·傅里叶级数与频谱(单边谱·双边谱·傅里叶变换)CSDN发布稿
笔记·学习·信号处理·傅里叶分析
xian_wwq13 分钟前
【学习笔记】pgvector 入门:用 PostgreSQL 直接实现向量检索-13
笔记·学习·postgresql
迪康Defender14 分钟前
终端安全行为分析:审计日志如何转化为业务报表?落地实践与避坑指南
运维·经验分享·安全·信息可视化·自动化·安全威胁分析·运维开发