查看原文
其他

AntSword v2.1.2 更新

Medicean 学蚁致用 2022-09-13

写在前面


更新狂魔lei了,由于这次更新没怎么详细测试,所以先在前面立个 Flag。最近更新的比较快,大部分代码都是在晚上12点以后写的,所以难免会有 Bug,如果你发现了 Bug 欢迎提到 GitHub。


哦,再啰嗦一句,因为精力有限,很多新功能都没在文档里面写,都是在更新日志里体现的,所以养成个好习惯,每次抽空看一下更新日志,兴许你就打开了新世界的大门。


速览更新重点:

1) 默认设置里新增了对添加Shell时一些默认参数的设置

2) 编码设置里引入了「自定义解码器」的管理

3) 编码器/解码器都有了扩展参数 ext, 可借此参数实现:返回包用RSA公钥加密; 发包/返回包用 AES、DES ... 加密 (可指定秘钥为 SESSION_ID,也可是别的什么,明天专门讲讲AES的编码器怎么写)


核心模块

  • 修复multipart 发包方式 download 发包为空的问题 (asunescape 功能引起), 更新后需要关闭程序重启后生效

  • 编码器 ext 参数新增元素 opts, 值为当前 shell 的配置


有了这个,你就可以根据 shell 的配置信息来动态的进行加密了, 比如用 Cookie 里面的 SessionID 来作为秘钥

与之相关的一个 Demo, PHP AES-256-CFB (zeroPadding) 编码器
https://github.com/AntSwordProject/AwesomeEncoder/blob/master/php/encoder/aes_256_cfb_zero_padding.js

另一个 Demo, PHP AES-128-ECB (zeroPadding) 编码器
https://github.com/AntSwordProject/AwesomeEncoder/blob/master/php/encoder/aes_128_ecb_zero_padding.js

  • 解码器新增 ext 参数, 用于获取 shell 配置和rsa私钥


有了这个,解码器可以进行一些更为灵活的用法了. 比如用 Cookie 中的 SessionID 来作为秘钥, 对返回的内容进行解密

与之相关的一个 Demo, PHP AES-256-CFB (Zero Padding) 解码器
https://github.com/AntSwordProject/AwesomeEncoder/blob/master/php/decoder/aes_256_cfb_zero_padding.js

另一个 Demo, PHP AES-128-ECB (pkcs7Padding) 解码器
https://github.com/AntSwordProject/AwesomeEncoder/blob/master/php/decoder/aes_128_ecb_pkcs7_padding.js

PS:

可以用 AES-256-CFB 编码器, 对请求包进行加密, 返回包加密使用 AES-128-ECB 解码器

也可以用 AES-128-ECB 编码器, 对请求包进行加密, 返回包加密使用 AES-256-CFB 解码器

当然, 你可以根据自己的喜好, 用自己喜欢的 AES 加密方式, 这些怎么组合, 都看你。你要不喜欢用 AES, 你想用什么就用什么。

  • 支持加载用户自定义解码器

    同编码器一样, 现在可以加载用户自己自定义的解码器了, 以PHP为例, 加载位置为 antData/encoders/php/decoder/

数据管理

  • 「添加数据」时自动载入「默认设置」中「数据管理」全局配置内容 (配置方式见后文)


其它

  • 「默认设置」新增「数据管理」设置, 可配置「是否忽略HTTPS证书」、「默认请求超时时长」、「默认 HTTP Header」和「默认 HTTP Body」


划重点:该配置项仅在「添加数据」时生效,不影响已有配置的 Shell。在添加数据界面修改相应的值, 仅对当前 Shell 配置产生影响,不会影响到默认配置

  • 新增第三方库 marked 0.6.2 用于 markdown 渲染

  • 更新提示窗口新增 ReleaseNote 显示(缩放显示,图片看不清可直接前往 github 查看详细更新日志), 新增 「更新日志」按钮(点击后直接打开 github release 页)

就是想逼着你看 ChangeLog

  • 「编码管理」新增「获取更多」按钮, 打开浏览器访问 AwesomeEncoder(自定义编码器分享), 如果你有比较好的 Encoder, 欢迎向这个仓库提PR

  • 「编码管理」新增解码器管理, 可创建自定义解码器

  • 新增第三方库 crypto-js 3.1.9-1 , 可以更方便的进行各种加解密处理了


nodejs 自带 crypto 库, 也可使用 crypto-js 这个库来进行加密处理, 这个第三方库使用起来相对更简单一些, 但同时限制也会多一些, 自行取舍


写在后面


    或许,应该专门开篇文章讲讲编码器解码器了两个东西了?

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存