找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: CrLf

批处理混合加密,你能破解吗?

[复制链接]
发表于 2015-6-15 20:26:35 | 显示全部楼层


如果只是找密码的话,so easy

PS:第一个加密在Windows 2003 R2上一闪而过。

评分

参与人数 2技术 +11 收起 理由
tigerpower + 1 你就这样把楼主辛苦挖的坑给过了
CrLf + 10 说好的10分

查看全部评分

 楼主| 发表于 2015-6-15 20:51:29 | 显示全部楼层
回复 16# Demon


    到汇编层连 exe 都无秘密,更不用谈脚本了...虽然解法已经脱离了脚本加解密的范畴,但题目中并无限制,依然加分
发表于 2015-6-15 21:16:12 | 显示全部楼层
回复 14# CrLf

边泡脚 边发现 random !!!!  什么节奏
发表于 2015-6-15 21:23:01 | 显示全部楼层
回复 16# Demon


   一闪而过, 可能是 cmd 的默认配置造成的, 我一直常备了一个, 恢复默认设置,  根据系统不同, 可能要调整某些参数:
CMD 默认配置
  1. @echo off

  2. REM Windows Registry Editor Version 5.00

  3. REM [HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]
  4. REM "ScreenColors"=dword:0000000a
  5. REM "ScreenBufferSize"=dword:01400050
  6. REM "WindowSize"=dword:01400050
  7. REM "FontSize"=dword:0010000c
  8. REM "FontFamily"=dword:00000030
  9. REM "CodePage"=dword:000001b5   chcp 437
  10. REM "WindowPosition"=dword:00000000

  11. REM CodePage::::::::::::000003a8 chcp 936

  12. for %%a in (
  13.     FontSize::::::::::::0010000c
  14.     ScreenColors::::::::0000000f
  15.     WindowPosition::::::00000000
  16.     FontFamily::::::::::00000030
  17.     CodePage::::::::::::000003a8
  18.     WindowSize::::::::::01400050
  19.     ScreenBufferSize::::01400050
  20. ) do (
  21.     for /f "tokens=1,2 delims=:" %%b in ("%%a") do (
  22.         echo reg add HKCU\Console\%%SystemRoot%%_system32_cmd.exe /v %%b /t reg_dword /d 0x%%c /f
  23.         REM >nul
  24.         reg add HKCU\Console\%%SystemRoot%%_system32_cmd.exe /v %%b /t reg_dword /d 0x%%c /f
  25.     )
  26. )
  27. pause

复制代码
发表于 2015-6-15 21:58:34 | 显示全部楼层
回复 16# Demon
从各楼的解释来看好像是代码页的问题
表示XP也是一闪而过,8.1正常
发表于 2015-6-15 22:55:30 | 显示全部楼层
本帖最后由 aa77dd@163.com 于 2015-6-15 23:02 编辑
  1. cls
  2. (del "%~f0" & setlocal enabledelayedexpansion
  3. ;setlocal
  4. set /p aha#=Password:
  5. ;if !aha#!==HTtp://www.BatH0me.nEt echo;Bingo~
  6. ;pause)
  7. ;eNdLoCal&set "aha=%#:"=""%"&set aha=!aha:=""!&goto :eof
  8. set /p aha=Password:
  9. if "!aha!"=="CrLf{!random:~-2!}" echo;Bingo
  10. pause&exit)
复制代码
上面是第2波后半段代码, 前半段仍然只需处理掉 0xFF 0xFE 字节头, 即可 type 出来, 和第1波差不多, 仍然计算出一个 37 , 然后 chcp 37

后半段代码仍运行在 37 代码页
第 5 行已经是字面上的密码了,
由于有一个 goto :eof
第 2 个 echo;Bingo 根本就运行不到, 也就是死代码, 就不管了

第2波新用到的主要有
%~nnn0  %~nnnnn0  都和 %~n0 是一样的
 楼主| 发表于 2015-6-15 23:36:48 | 显示全部楼层
回复 21# aa77dd@163.com


    卧槽,已经加入了 Nul 和 Sub 字符干扰,type 和 for 应该都不正常才对,你怎么得到的源码...
发表于 2015-6-15 23:44:25 | 显示全部楼层
本帖最后由 aa77dd@163.com 于 2015-6-15 23:53 编辑

回复 22# CrLf

将后半段从 UE 里截出另存, 比如存为 c37p.txt

然后在 chcp 37 下
>d.txt cmd /u /c type c37p.txt
d.txt 即得如下: 其中在 notepad++ 里显示出 5 个 SUB (0x1A) 字符, NULL 字符事实我都没有发现
  1. cl
  2. (d%.:~-5,1%l "%~f0%.:~-17,1%%2s%.:~-5,1%tlocal en%~n0bled^
  3. el%~n0%time:~0,0%yed%.:~-5,1%xp%~n0nsion
  4. ;setloc%~n0l
  5. se%.:~-4,0%t/pah%~nnn0#=P%.:~3,1%s%cd:~2,0%swo%cd:~1,0%rd%cd:~4,0%:
  6. ;if !aha#!=%cd:~1,0%=HTtp%cd:~1,1%/^/w%.:~5,1%^w!.:~^,1!B%~nnnnn0tH!^=:0!me.n%random:~,0%^Et ec%cd:~,0%ho;Bi%cd:~-1,0%ngo%cd:~,0%
  7. ;p%.:~3,1%us%.:~-5,1%)
  8. ;eNdLo%cD:~,1%al%~2set "aha=%#:"=""%"&set aha=!aha:=""!&goto :eo
  9. se%.:~-4,0%t/pah%~nnn0=P%.:~3,1%s%cd:~2,0%swo%cd:~1,0%rd%cd:~4,0%:
  10. if %.:~-17,1%!aha!"=%cd:~1,0%="CrLf{!random:~-2!}%.:~-17,1% ec%cd:~,0%ho;Bi%cd:~-1,0%ngo%cd:~,0%
  11. p%.:~3,1%us%.:~-5,1%%2exit)
复制代码

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 好吧

查看全部评分

发表于 2015-6-15 23:50:29 | 显示全部楼层
回复 22# CrLf
回复 23# aa77dd@163.com
跪了,你们城里人太会玩了......
发表于 2015-6-16 00:36:23 | 显示全部楼层
回复 24# bailong360


    帮他们发个表情
 楼主| 发表于 2015-6-16 01:12:59 | 显示全部楼层
本帖最后由 CrLf 于 2015-6-16 01:14 编辑

回复 23# aa77dd@163.com


怪不得免疫第二波的坑
我以为你们会用 type 来处理,所以加入 Sub 使 type 失效,当然也可能会尝试 for /f 读取,所以加入 Null 使 for 失败,至于 more、find 等外部命令,呵呵
除了 nul,还为 for /f 留了个大坑,如果使用默认的 eol 设置,将忽略以 ; 开头的行,那么得到的将是一段答案是 CrLf{!random:~-2!} 的伪装代码,但就像你说的,这段代码不会被执行

评分

参与人数 1技术 +1 收起 理由
bailong360 + 1 跪服...学习了..

查看全部评分

发表于 2015-6-16 08:00:16 | 显示全部楼层
回复 26# CrLf


    在大牛面前都是浮云。

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 飙泪

查看全部评分

发表于 2015-6-16 08:20:19 | 显示全部楼层
上面是第2波后半段代码, 前半段仍然只需处理掉 0xFF 0xFE 字节头, 即可 type 出来, 和第1波差不多, 仍然计算 ...
aa77dd@163.com 发表于 2015-6-15 22:55


准确的说是第一个pause后面的代码都不会运行,因为a.bat已经被删除了。
发表于 2015-6-16 08:21:50 | 显示全部楼层
回复  aa77dd@163.com


怪不得免疫第二波的坑
我以为你们会用 type 来处理,所以加入 Sub 使 type 失 ...
CrLf 发表于 2015-6-16 01:12




论编辑器的重要性

评分

参与人数 2技术 +2 收起 理由
bailong360 + 1 这个编辑器收藏了
CrLf + 1 飙泪

查看全部评分

 楼主| 发表于 2015-6-16 14:15:35 | 显示全部楼层
回复 29# Demon


    擦擦擦擦擦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 01:45 , Processed in 0.021905 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表