gwsbhqt
发短消息
加为好友
gwsbhqt
当前离线
UID63634 帖子29 精华0 积分61 PB43 技术6 捐助0 阅读权限10 在线时间7 小时 注册时间2013-11-21 最后登录2020-9-5
上等兵
帖子29 积分61 技术6 捐助0 注册时间2013-11-21
1楼
跳转到 »
倒序看帖
打印
字体大小: tT
发表于 2016-10-21 17:44
| 只看该作者
[文件操作] [原创工具][201610]BatchEncryption - 批处理加密程序
BatchEncryption 是一个全平台*通用的强度较高的批处理加密程序
BatchEncryption 能在全平台*运行,所加密的文件也能在全平台*运行
BatchEncryption 对批处理文件内的大小写字母,数字,字符进行变量偏移编码,并在文件头部加入BOM混淆
从而达到对批处理文件加密的效果,能有效地加密批处理文件,防止被他人查看修改
*:WinXP/WinVista/Win7/Win8/Win8.1/Win10(x86/x64)
http://bcn.bathome.net/s/tool/index.html?key=BatchEncryption
如何使用?
程序可以双击执行,可以在命令提示符下执行,或者拖拽文件到程序上执行
建议执行后键入“/?”或者 “help”获取更详细地帮助
程序是在Visual Studio 2015环境下由gwsbhqt@163.com使用C++开发的Windows控制台程序
如果程序出现BUG或者有任何疑问,或者有同学需要此程序的GUI版本,欢迎发帖回复留言,
或者直接与gwsbhqt@163.com联系
4
评分人数
leonxis:
好东西技术 + 1
77七:
感谢分享技术 + 1
lvzhu:
作者不更新了?技术 + 1
zz100001:
这样的好东西居然没人加分?技术 + 1
收藏
分享
gwsbhqt
发短消息
加为好友
gwsbhqt
当前离线
UID63634 帖子29 精华0 积分61 PB43 技术6 捐助0 阅读权限10 在线时间7 小时 注册时间2013-11-21 最后登录2020-9-5
上等兵
帖子29 积分61 技术6 捐助0 注册时间2013-11-21
2楼
发表于 2016-10-21 17:45
| 只看该作者
如何测试?
链接: https://pan.baidu.com/s/1m3wQAo0bYupQCjulJRqT8Q 提取码: p6u8
可以下载BatchEncryption测试.rar进行测试
文件说明
1简单代码@gwsbhqt
非常简单的代码,不存在特殊符号,用于测试BatchEncryption加密后是否能运行的示例
2四则复合运算@批处理吧
较为复杂的代码,存在大量的!变量,用于测试BatchEncryption是否能正确处理较为复杂的代码
3.0批处理解密组件@bluewing009
较为复杂的代码,存在大量的!和%变量,而且涉及到^等转义字符
通用解密能够很好的解决传统变量偏移加密等的加密方法,能够正确完美的解密3.1传统加密
3.1传统加密@gwsbhqt
使用了传统加密方法的样例,可以很好的被3.0批处理解密组件正确的完美解密
这是我之前在卡饭论坛发的一篇关于传统加密方法的帖子:http://bbs.kafan.cn/thread-1814718-1-1.html
4批处理危险等级分析工具@bluewing009
非常复杂的代码,存在大量的!和%变量,而且涉及到^等转义字符
用于BatchEncryption压力测试,在全平台高加密深度的情况下加密非常复杂的批处理而且还能在全平台正常运行,
则能够证明BatchEncryption通过压力测试
危险分析能够很好的分析带有威胁的命令,可用用于分析5威胁样例
5威胁样例@gwsbhqt
非常简单的威胁样例,本身并无害,只是打印全部威胁命令的帮助信息
Run.bat@gwsbhqt
测试文件,见以下测试过程
测试过程
1.测试源批处理的正确运行,可以逐个执行以上批处理,确认均能正常执行
2.将3.1传统加密.bat拖拽到3.0批处理解密组件.bat上,可以在当前目录生成解密文本,观察通用解密工具的解密效果
3.执行4批处理危险等级分析工具.bat后,将5威胁样例.bat拖拽进分析工具中,观察分析工具的分析效果
4.双击执行Run.bat,BatchEncryption将会依次为每个批处理在当前目录按加密深度为10,100的加密,
按后缀区分加密深度
5.测试加密后的批处理的正确运行,可以逐个执行以上批处理,确认均能正常执行,
注意,如果小概率出现闪退等问题,请重新执行一次Run.bat
6.将3.1传统加密.bat拖拽到3.0批处理解密组件_100.bat上,可以在当前目录生成解密文本,
观察通用解密工具是否正常工作
7.将1简单代码_10.bat拖拽到3.0批处理解密组件_100.bat上,
观察3.0批处理解密组件_100.bat对BatchEncryption加密算法的解密效果
8.执行4批处理危险等级分析工具_100.bat后,将5威胁样例.bat拖拽进分析工具中,
观察通用分析工具是否正常工作
9.执行4批处理危险等级分析工具_100.bat后,将5威胁样例拖拽_10.bat进分析工具中,
观察分析工具的分析效果
10.将所有测试文件转移平台之后再次重复1-9,以确认全平台兼容性
理论结论
BatchEncryption拥有全平台加密批处理的能力,而且能在加密深度较大的情况下表现良好,
而且加密强度较高,目前的解密工具对BatchEncryption加密算法无效
反解密能力测试
有兴趣的同学可以尝试一下echo解密**,后果自负
1
评分人数
HOPE2021:
目前的解密工具对BatchEncryption加密算法有 ...技术 + 1
TOP
gwsbhqt
发短消息
加为好友
gwsbhqt
当前离线
UID63634 帖子29 精华0 积分61 PB43 技术6 捐助0 阅读权限10 在线时间7 小时 注册时间2013-11-21 最后登录2020-9-5
上等兵
帖子29 积分61 技术6 捐助0 注册时间2013-11-21
3楼
发表于 2016-10-21 17:45
| 只看该作者
还有呢?
这里给大家送上一个经过BatchEncryption加密的小CrackMe.bat
其中是CrackMe_Encrypted.bat是目标文件,感兴趣的同学可以解密之后在字符串里寻找关键的KEY
其中CrackMe.bat是源文件,不过被WinRAR加密了,解压密码就是CrackMe_Encrypted.bat里找到的KEY
如果你能顺利打开CrackMe.rar,那么说明你找到的KEY是正确的
链接: https://pan.baidu.com/s/1hdMfA6Ta4WdnRkhAYH3cqA 提取码: fpxt
链接: https://pan.baidu.com/s/1YJK-2jZ3lmZgy_k5h4ClWA 提取码: rnfb
可以看到,BatchEncryption在调整了参数之后没有对数字进行加密,
可以观察到一串加密之前的和一串加密之后的字符串的结尾都是21
感兴趣的同学就动手尝试一下吧~
TOP
pcl_test
发短消息
加为好友
pcl_test
当前离线
UID69024 帖子3040 精华1 积分5332 PB3267 技术685 捐助0 阅读权限254 在线时间4142 小时 注册时间2014-10-19 最后登录2025-7-13
荣誉版主
帖子3040 积分5332 技术685 捐助0 注册时间2014-10-19
4楼
发表于 2016-10-22 06:39
| 只看该作者
本帖最后由 pcl_test 于 2024-5-2 17:58 编辑
以下代码保存为decrypt.bat,跟需解密的其它bat文件放一起运行/*&cls&echo off&cd /d "%~dp0"
for /f "delims=" %%a in ('dir /a-d-h/b *.bat *.cmd') do (
if /i "%%~nxa" neq "%~nx0" (
echo;"%%a"
cscript -nologo -e:jscript "%~f0" "%%a" > "[decrypt]%%~na.txt"
)
)
pause
exit
*/
var fso=new ActiveXObject('Scripting.FileSystemObject'),key='',result=[];
var ws=new ActiveXObject('Wscript.Shell');
var f=fso.OpenTextFile(WSH.Arguments(0), 1);
while(!f.AtEndOfStream){
var line=f.ReadLine();
if(!/cls|>nul|BatchEncryption Build/i.test(line)){
var tmpline=crack(line, key);
result.push(tmpline);
}
}
WSH.echo(result.join('\r\n'));
WSH.Quit();
function crack(s, k){
var kw=k;
var m1=s.match(/%[^%:]+?:~-?\d*,1%/g);
if(m1){
for(var i=0;i var m2=m1[i].match(/%([^%:]+?):/); if(m2){ if(m2[1] != "'"){ kw=ws.ExpandEnvironmentStrings(m1[i].replace(/:.+$/, '')+'%'); }else{ kw=k; } } var n=m1[i].replace(/^%.+?:~(-?\d*).+$/, '$1'); if(n=='')n=0; var s=s.replace(m1[i], n=='-1'?kw.slice(Number(n)):kw.slice(Number(n), Number(n)+1)); } } var m3=s.match(/^@set '=\^">nul&.+?&@set '=(.+?)&@set.+?&@echo "$/); if(m3){key=m3[1].replace(/\^{3}/g, '^');} return s; }复制代码 TOP wskwfkbdn 发短消息 加为好友 wskwfkbdn (见与不见)当前离线 UID52297 帖子247 精华0 积分341 PB296 技术15 捐助0 阅读权限20 在线时间323 小时 注册时间2012-9-21 最后登录2024-11-4 五级士官 帖子247 积分341 技术15 捐助0 注册时间2012-9-21 5楼 发表于 2016-10-22 07:17 | 只看该作者 所谓的key: TY88YYOMCXJZRRVUPYP7JITBZMCD3IKPB8WCRF9NJVK8KEY:3D2089CA9C877C94EEC57E229FE30005:YEKITHEI9DK062HMGK7RQKE8LM5NFJWJ6VR9BA3H9M7NOCDHMB21 红色的是解压密码 判定一个人是否为伸手党的标准是取决于他的态度和诚意。 TOP gwsbhqt 发短消息 加为好友 gwsbhqt 当前离线 UID63634 帖子29 精华0 积分61 PB43 技术6 捐助0 阅读权限10 在线时间7 小时 注册时间2013-11-21 最后登录2020-9-5 上等兵 帖子29 积分61 技术6 捐助0 注册时间2013-11-21 6楼 发表于 2016-10-22 15:24 | 只看该作者 回复 4# pcl_test 赞*32 TOP happy886rr 发短消息 加为好友 happy886rr 当前离线 UID74837 帖子961 精华1 积分2350 PB1338 技术334 捐助0 阅读权限1 在线时间284 小时 注册时间2016-3-7 最后登录2019-11-30 等待验证会员 帖子961 积分2350 技术334 捐助0 注册时间2016-3-7 7楼 发表于 2016-10-22 17:32 | 只看该作者 好棒的截取字符串,带关机功能 TOP 523066680 发短消息 加为好友 523066680 (消遣区)当前离线 UID3337 帖子3174 精华1 积分6493 PB5447 技术322 捐助70 阅读权限255 来自广州(工作地) 在线时间5294 小时 注册时间2008-8-3 最后登录2025-7-8 版主 帖子3174 积分6493 技术322 捐助70 注册时间2008-8-3 8楼 发表于 2016-10-22 17:46 | 只看该作者 本帖最后由 523066680 于 2016-10-22 17:47 编辑 要是跨界大神可以写一个加强版批处理解释器,想必是很6的 (我就是瞎嚷嚷,自己啥也不会 不过批处理真的不怎么需要加密,因为自带混淆啊。 —— 一种黑 [url=][/url] TOP gwsbhqt 发短消息 加为好友 gwsbhqt 当前离线 UID63634 帖子29 精华0 积分61 PB43 技术6 捐助0 阅读权限10 在线时间7 小时 注册时间2013-11-21 最后登录2020-9-5 上等兵 帖子29 积分61 技术6 捐助0 注册时间2013-11-21 9楼 发表于 2016-10-23 12:59 | 只看该作者 回复 7# happy886rr 这个是简单的反解密功能,如果用echo他的话会关机的 TOP wskwfkbdn 发短消息 加为好友 wskwfkbdn (见与不见)当前离线 UID52297 帖子247 精华0 积分341 PB296 技术15 捐助0 阅读权限20 在线时间323 小时 注册时间2012-9-21 最后登录2024-11-4 五级士官 帖子247 积分341 技术15 捐助0 注册时间2012-9-21 10楼 发表于 2016-10-23 13:36 | 只看该作者 回复 9# gwsbhqt 你猜我的key是怎么获取到的 判定一个人是否为伸手党的标准是取决于他的态度和诚意。 TOP CrLf 发短消息 加为好友 CrLf 当前离线 UID30406 帖子6388 精华2 积分18843 PB15777 技术982 捐助100 阅读权限255 在线时间5538 小时 注册时间2010-10-9 最后登录2025-3-26 论坛巡查 帖子6388 积分18843 技术982 捐助100 注册时间2010-10-9 11楼 发表于 2016-10-25 00:29 | 只看该作者 已加入肯德基豪华午餐 http://www.bathome.net/s/tool/?key=BatchEncryption 链接:在线第三方命令行工具下载 bat、vbs、js 原生混编 TOP gwsbhqt 发短消息 加为好友 gwsbhqt 当前离线 UID63634 帖子29 精华0 积分61 PB43 技术6 捐助0 阅读权限10 在线时间7 小时 注册时间2013-11-21 最后登录2020-9-5 上等兵 帖子29 积分61 技术6 捐助0 注册时间2013-11-21 12楼 发表于 2016-10-28 20:47 | 只看该作者 回复 10# wskwfkbdn 还请同学明示 TOP gwsbhqt 发短消息 加为好友 gwsbhqt 当前离线 UID63634 帖子29 精华0 积分61 PB43 技术6 捐助0 阅读权限10 在线时间7 小时 注册时间2013-11-21 最后登录2020-9-5 上等兵 帖子29 积分61 技术6 捐助0 注册时间2013-11-21 13楼 发表于 2016-10-28 20:47 | 只看该作者 回复 11# CrLf 感谢,受宠若惊 TOP bluewing009 发短消息 加为好友 bluewing009 (九影)当前离线 UID20139 帖子515 精华0 积分1788 PB1743 技术15 捐助0 阅读权限60 在线时间661 小时 注册时间2009-11-27 最后登录2024-5-30 少校 帖子515 积分1788 技术15 捐助0 注册时间2009-11-27 14楼 发表于 2016-11-3 16:22 | 只看该作者 无语O__O "… TOP 老刘1号 发短消息 加为好友 老刘1号 当前离线 UID75268 帖子1002 精华1 积分1793 PB1098 技术205 捐助50 阅读权限255 在线时间1828 小时 注册时间2016-4-17 最后登录2025-7-18 论坛巡查 帖子1002 积分1793 技术205 捐助50 注册时间2016-4-17 15楼 发表于 2016-11-3 19:41 | 只看该作者 LZ,有退格符的话不管格式化还是不格都会出错…… 感觉……有待改进. TOP