为了我们后续实际使用方便,直接新建一个webshell
连接类型,按照我们的需要,后续直接修改对应的类型即可
1. 首先我们复制原版jsp
下的类,新建一个自定义的webshell
类型,以diy_jsp
为例:
修改webshell各类功能在传输过程中的加密方法,你用到的所有功能都需要修改,意味着所有的类都需要修改下,具体修改DIY类型下所有的Encrypt()
方法
(觉得麻烦的话,完全可以自定义一个Encrypt方法
,后续所有的功能直接调用你新增的方法即可)
视频流
的开头为例:(想添加什么头,自己定义即可)前: UklGRmYKAQBBVkkgTElTVMAAAABoZHJsYXZpaDgAAAA1ggAAoDwAAAAAAAAQCAAAoQAAAAAAAAABAAAABw8AALgBAAB8AQ 新增bytep[]长度:72
后: /9k= 新增 byte[] 长度:2
Params.java
的逻辑,使我们新创建的类型能够在实现功能时,调用到对应的类,直接复制原版的函数,新建一个,修改下路径/方法名即可3. 修改原有的加解密方法,我们只封装一个文件头测试,实际可以自定义加解密方法,以及webshell的实现流程
新增一个解密方法,大致逻辑不变,只修改我们在本地接class字节码的有效范围,原版直接解密获取到字节码,修改版我们需要去掉新增文件头的那部分数据,只取有效的哪部分即可:
4. 最后一步,修改UI下的方法,以及Utils下的插件调用功能
运行Main方法,发现已经成功添加新类型,我们后续的传输就按照自定义的方式去进行了,
实战发挥脑洞,修改加解密方法,修改参数获取方法,修改传输过程中方式等等....