中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-09 02:24
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 一个加壳的批处理竟无法破解(已结) 查看 3,450 回复 31
16 发表于 2008-06-30 01:25 ·  中国 广东 广州 电信
高级用户
★★★
潜水修练批处理
积分 788
发帖 366
注册 2006-12-31 02:43
19年会员
UID 75048
性别 男
状态 离线
运行一下这个东西:

@echo off
echo %0
pause
正在潜水修练的批处理小白
17 发表于 2008-06-30 08:34 ·  中国 江苏 苏州 常熟市 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
Originally posted by dikex at 2008-6-29 11:32 PM:
运行某批处理时,执行下面的命名即可找出对应的批处理文件在哪里了
wmic process where name="cmd.exe" get commandline

shift 能把%0 参数改变,可能用于防止某些利用%0 取得当前批处理路径的方法


恰恰相反,我的看法是:

加@shift不是为了防止破解者获得执行文件路径, 而是它自身需要获得执行文件的原来路径和源文件名。否则程序可能会运行出错。

这也是为什么临时生成的批处理文件都有这句的原因。
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
18 发表于 2008-06-30 12:20 ·  中国 广东 揭阳 联通
初级用户
积分 65
发帖 29
注册 2007-10-14 14:35
18年会员
UID 99717
性别 男
状态 离线
Originally posted by quya at 2008-6-30 08:34 AM:


恰恰相反,我的看法是:

加@shift不是为了防止破解者获得执行文件路径, 而是它自身需要获得执行文件的原来路径和源文件名。否则程序可能会运行出错。

这也是为什么临时生成的批处理文件都有这句的原因。



呵呵,其实我同意quya的这个观点,其实如果这个加壳的exe是在硬盘上,他是不会释放到临时文件夹的,而是会释放到和他同目录的文件夹中,如果这个是放在不可写的iso内的话,才会释放到临时文件夹。有些批处理加了壳之后,无法运行了,我想@shift应该是为了读取,呆会测试下就知道了,去掉后看看能不能读取
19 发表于 2008-06-30 12:23 ·  中国 广东 揭阳 联通
初级用户
积分 65
发帖 29
注册 2007-10-14 14:35
18年会员
UID 99717
性别 男
状态 离线
quya,能不能麻烦回答下15楼的第一个问题呢?谢谢
20 发表于 2008-06-30 21:23 ·  中国 广东 揭阳 联通
初级用户
积分 65
发帖 29
注册 2007-10-14 14:35
18年会员
UID 99717
性别 男
状态 离线
顶下,让quya看到o(∩_∩)o...
21 发表于 2008-06-30 21:35 ·  中国 江苏 苏州 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
Originally posted by jonsonqf at 2008-6-30 09:23 PM:
顶下,让quya看到o(∩_∩)o...


我看到了, 但我无法回答你的问题, 对不起。

这个应该是BAT转EXE的转换程序搞的花样, 这个程序的作者比其他的高明, 至少能蒙我们一下子。

我也想知道哪儿能找到此程序,至少也能蒙其他人一下。
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
22 发表于 2008-06-30 22:08 ·  中国 广东 揭阳 联通
初级用户
积分 65
发帖 29
注册 2007-10-14 14:35
18年会员
UID 99717
性别 男
状态 离线
Originally posted by quya at 2008-6-30 09:35 PM:


我看到了, 但我无法回答你的问题, 对不起。

这个应该是BAT转EXE的转换程序搞的花样, 这个程序的作者比其他的高明, 至少能蒙我们一下子。

我也想知道哪儿能找到此程序,至少也能蒙其他人一下。



哈哈,没关系,确实这个程序比较好蒙人,那就希望有其他朋友用过的分享这个加密程序了
23 发表于 2008-06-30 22:13 ·  中国 北京 海淀区 联通
银牌会员
★★★
积分 1,287
发帖 634
注册 2007-05-02 15:06
19年会员
UID 87277
性别 男
来自 cmd.exe
状态 离线
bat2exe.
OllyDump对付它无敌.
24 发表于 2008-06-30 22:17 ·  中国 江西 南昌 电信
中级用户
★★
积分 206
发帖 100
注册 2007-07-09 20:51
19年会员
UID 93566
性别 男
状态 离线
用第三方的任务管理器也没用?
25 发表于 2008-07-01 13:57 ·  中国 福建 三明 电信
中级用户
★★
积分 458
发帖 211
注册 2006-07-26 19:42
20年会员
UID 59307
状态 离线
这个加壳的释放的P名字也很有特点,
在我的机子上Win系统下看不到,显示系统文件加显示隐藏文件也看不到。
只能cmd下dir

环境:NTFS文件系统,XP SP2

setup.exe释放*.cmd到同目录下
文件名是[ CMD9C56.CMD]不含中括号,开头有个Unicode字符。
┌───────┐
├→学习→实践→┤
└───────┘
26 发表于 2008-07-01 17:34 ·  中国 北京 联通
银牌会员
★★★
积分 1,287
发帖 634
注册 2007-05-02 15:06
19年会员
UID 87277
性别 男
来自 cmd.exe
状态 离线
不会利用文件名做删除标记.然后骗过Explore?
27 发表于 2008-07-01 19:34 ·  中国 福建 三明 电信
中级用户
★★
积分 458
发帖 211
注册 2006-07-26 19:42
20年会员
UID 59307
状态 离线
Originally posted by knoppix7 at 2008-7-1 17:34:
不会利用文件名做删除标记.然后骗过Explore?


还真不会,我搜索下先。
┌───────┐
├→学习→实践→┤
└───────┘
28 发表于 2008-07-01 19:49 ·  中国 北京 电信
高级用户
★★
流落街头
积分 570
发帖 272
注册 2005-10-17 10:51
20年会员
UID 43609
性别 男
来自 北京
状态 离线
在临时文件夹中找到了 bat 文件,内容如下:

......


根据楼主的要求,批处理内容已经删除。

[ Last edited by 19951001 on 2008-7-5 at 05:01 PM ]
29 发表于 2008-07-01 21:15 ·  中国 北京 联通
银牌会员
★★★
积分 1,287
发帖 634
注册 2007-05-02 15:06
19年会员
UID 87277
性别 男
来自 cmd.exe
状态 离线
实在Sorry..
touchnet吞掉了一个会..

会不会
非常抱歉-0-
30 发表于 2008-07-02 23:30 ·  中国 四川 泸州 联通
高级用户
★★★
积分 609
发帖 374
注册 2006-08-02 22:38
20年会员
UID 59720
状态 离线
只要先运行SETUP.exe,再搜索生成的*.bat或*.cmd,就会找到释放的文件路径.并没有在临时文件夹中这个加壳工具有个特点,就是释放的文件会深度隐藏.无法看到实体.所以无法打开, 不过,想个办法,用命令可把他的原文搞到手. (方法很多,只要有文件路径)哈哈藏得再深,也要你显出原码

@shift
@echo off
color 2e
set prog=winpe 硬盘安装工具
set l1=           ╭─────────────╮
set l2=      ╭────┤ winpe 硬盘安装工具 ├────╮
set l3=      │    ╰─────────────╯  │
set l4=      │============================================ │
set l5=      │ 盛世雄风技术论坛 │
set l6=      ╰───────────────────────╯

title %prog%
for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z) do if exist %%i:\recycler\nul set lastdr=%%i:
for %%i in (z y x w v u t s r q p o n m l k j i h g f e d c) do if exist %%i:\boot.ini set rp=%%i:
if "%rp%"=="" goto nosys
if exist %rp%\ldrxpe goto :existpe
if exist %rp%\wxpe\ goto :existpe
find /i "c:\wxpe\ssxf.org" %rp%\boot.ini >nul
if %errorlevel%==0 goto :existpe
goto start

:existpe
cls
echo %l1%
echo %l2%
echo %l3%
echo       │ 检测到您机器中已经安装了 winpe,您要卸载吗? │
echo       │ 卸载 winpe,并重新安装    │
echo       │ 卸载 winpe,并退出安装   │
echo       │ 退出安装                 │
echo %l4%
echo %l5%
echo %l6%
echo.
set choice=
set /p choice=        请选择要进行的操作 (1/2/q) ,然后按回车:
if %choice%choice==choice goto :existpe
if not '%choice%'=='' set choice=%choice:~0,1%
if /i '%choice%'=='1' set choi=1&&goto :uninstall
if /i '%choice%'=='2' goto :uninstall
if /i '%choice%'=='q' exit
goto :existpe

:uninstall
if exist %rp%\ldrxpe attrib -s -h -r %rp%\ldrxpe && del /q /f %rp%\ldrxpe >nul
if exist %rp%\wxpe attrib -s -h -r %rp%\wxpe && rd %rp%\wxpe /s /q>nul
if exist %lastdr%\wxpe attrib -s -h -r %lastdr%\wxpe && rd %lastdr%\wxpe /s /q>nul
attrib %rp%\boot.ini -s -h -r
if exist %rp%\boot.bak (
attrib %rp%\boot.bak -s -h -r
type %rp%\boot.bak|find /i /v "c:\wxpe\ssxf.org">%rp%\boot.ini
) else (
copy %rp%\boot.ini %rp%\boot.bak /y>nul
type %rp%\boot.bak|find /i /v "c:\wxpe\ssxf.org">%rp%\boot.ini
)
copy %rp%\boot.ini %rp%\boot.bak /y>nul
if exist %rp%\boot.bak attrib -s -h -r %rp%\boot.bak&&del %rp%\boot.bak>nul
attrib %rp%\boot.ini +s +h +r
if %choi%choi==1choi (echo.&&echo         卸载完成,请按任意键准备安装 。。。&&pause>nul&&goto start)
echo.&&echo         卸载完成,请按任意键退出 。。。
pause>nul
exit

:start
cls
echo.
echo %l1%
echo %l2%
echo %l3%
echo       │ 安装winpe到硬盘 │
echo       │ 退出安装                 │
echo %l4%
echo %l5%
echo %l6%
set choice=
set /p choice=        请选择要进行的操作 (1/q) ,然后按回车:
if %choice%choice==choice goto start
if not '%choice%'=='' set choice=%choice:~0,1%
if /i '%choice%'=='1' goto install
if /i '%choice%'=='q' exit
goto start

:install
set boot=%rp%\boot.ini
echo.
echo         正在复制文件,请稍候 。。。
md %rp%\wxpe\
md %lastdr%\wxpe\
copy setupldr.bin %rp%\ldrxpe /y >nul
copy ssxf.org %rp%\wxpe\ /y >nul
copy ssxf %rp%\wxpe\ /y >nul
copy winpe.is_ %rp%\wxpe\ /y >nul
if exist winpe.ini copy winpe.ini %lastdr%\wxpe\ /y >nul
if exist op.wim copy op.wim %lastdr%\wxpe\ /y >nul
attrib -s -h -r %rp%\boot.ini
if exist %rp%\boot.bak attrib -s -h -r %rp%\boot.bak
copy %rp%\boot.ini %rp%\boot.bak >nul
type %rp%\boot.bak|find /i /v "c:\wxpe\ssxf.org">%rp%\boot.ini
echo c:\wxpe\ssxf.org="winpe 应急维护系统">>%rp%\boot.ini
type %rp%\boot.ini>%rp%\bot.bak
type %rp%\bot.bak|find "boot loader" /i>%rp%\boot.ini
echo timeout=5 >>%rp%\boot.ini
type %rp%\bot.bak|find "boot loader" /i /v|find "timeout" /i /v>>%rp%\boot.ini
attrib +s +h +r %rp%\boot.ini
@del %rp%\bot.bak >>nul
attrib +s +h +r %rp%\boot.ini
attrib +s +h +r %rp%\boot.bak
attrib +s +h +r %rp%\ldrxpe
attrib +s +h +r %rp%\wxpe
attrib +s +h +r %rp%\wxpe\*.*
attrib +s +h +r %lastdr%\wxpe
attrib +s +h +r %lastdr%\wxpe\*.*
goto :success

:nosys
echo %l1%
echo %l2%
echo %l3%
echo       │ 好像您的机器中没有安装操作系统哦 │
echo       │ 请确认后再执行本安装程序。    │
echo %l4%
echo %l5%
echo %l6%
echo.
echo         请按任意键退出 。。。
pause >nul
exit

:success
echo.
echo         恭喜!!
echo.
echo         已经成功将镜像 winpe 安装到您的 %rp% 盘。
echo.
echo         请按任意键退出 。。。
pause >nul
exit

------------------------
谁知道这个加壳工具是什么名字? 我感觉还算是目前较好的.(虽然被破了....)

[ Last edited by ZJHJ on 2008-7-4 at 12:43 PM ]
论坛跳转: