本帖最后由 cmd1152 于 2022-1-2 21:25 编辑
平时我们在代码发现了一些BUG,但他已经转Exe了,无法获得源代码。Batcher的方法(映像劫持)容易报毒。所以可以使用这个批处理获得代码。
使用方法:
1.运行批处理
2.打开要破解的 被加密批处理(就是.Exe) 。
3.等待程序的响应
获得代码之后如果第一行是@shift /0,就删除第一行的@shift /0,这样才是源码。
目前测试105个 Bat转Exe 程序,全部有效。
缺点就是必须运行程序,所以无法判断是不是恶意程序(恶意代码可能被执行才显示代码,那时已经来不及了...)
http://bbs.bathome.net/viewthread.php?tid=59814&extra=就是我用这个破解出来的
ps:这个就是 文件操作 ,所以我主题选择 文件操作 没毛病! | @echo off | | setlocal enabledelayedexpansion | | echo;正在破解正在运行的 加密批处理^(.Exe^) 文件... | | title 已经执行 1 次 | | if not %1.==. (start %1) | | cls | | cd /d %tmp% | | :i | | set /a cs+=1 | | title 已经执行 %cs% 次 | | for /f %%i in ('dir /a-d/s/b *.bat 2^>nul') do ( | | if not "%%i"=="" ( | | cls | | title 发现:%%i | | echo 成功:%%i | | start Notepad %%i | | if not exist "%%i" ( | | title 错误:'%%i'被清除。 | | echo 错误:'%%i'被清除。 | | ) else ( | | set file=%%i | | call :msg1 | | ) | | ) | | echo 按任意键重试 | | pause>nul | | goto :i | | ) | | cls | | echo 暂时没有发现正在运行的程序。 | | goto :i | | | | :msg1 | | set /p a=是否删除/结束这个批处理?^[Y^/N^] | | if /i "%a%"=="y" ( | | if not exist "%file%" ( | | cls | | echo 这个批处理已经被删除。 | | pause | | ) | | del /f /q "%file%" 2>nul | | if exist "%file%" ( | | cls | | echo 这个批处理没有被删除。 | | pause | | ) | | ) | | goto :iCOPY |
求评分QWQ! |