中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 一个加壳的批处理竟无法破解(已结)
« [1] [2] [3] »
作者:
标题: 一个加壳的批处理竟无法破解(已结) 上一主题 | 下一主题
dikex
高级用户

潜水修练批处理



积分 788
发帖 366
注册 2006-12-31
状态 离线
『第 16 楼』:  

运行一下这个东西:
@echo off
echo %0
pause




正在潜水修练的批处理小白
2008-6-30 01:25
查看资料  发短消息 网志   编辑帖子  回复  引用回复
quya
高级用户

五星老土


积分 558
发帖 172
注册 2003-2-9
来自 江苏
状态 离线
『第 17 楼』:  



  Quote:
Originally posted by dikex at 2008-6-29 11:32 PM:
运行某批处理时,执行下面的命名即可找出对应的批处理文件在哪里了
wmic process where name="cmd.exe" get commandline

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

恰恰相反,我的看法是:

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

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



我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
2008-6-30 08:34
查看资料  发短消息 网志   编辑帖子  回复  引用回复
jonsonqf
初级用户





积分 65
发帖 29
注册 2007-10-14
状态 离线
『第 18 楼』:  



  Quote:
Originally posted by quya at 2008-6-30 08:34 AM:


恰恰相反,我的看法是:

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

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

呵呵,其实我同意quya的这个观点,其实如果这个加壳的exe是在硬盘上,他是不会释放到临时文件夹的,而是会释放到和他同目录的文件夹中,如果这个是放在不可写的iso内的话,才会释放到临时文件夹。有些批处理加了壳之后,无法运行了,我想@shift应该是为了读取,呆会测试下就知道了,去掉后看看能不能读取

2008-6-30 12:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jonsonqf
初级用户





积分 65
发帖 29
注册 2007-10-14
状态 离线
『第 19 楼』:  

quya,能不能麻烦回答下15楼的第一个问题呢?谢谢

2008-6-30 12:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jonsonqf
初级用户





积分 65
发帖 29
注册 2007-10-14
状态 离线
『第 20 楼』:  

顶下,让quya看到o(∩_∩)o...

2008-6-30 21:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
quya
高级用户

五星老土


积分 558
发帖 172
注册 2003-2-9
来自 江苏
状态 离线
『第 21 楼』:  



  Quote:
Originally posted by jonsonqf at 2008-6-30 09:23 PM:
顶下,让quya看到o(∩_∩)o...

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

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

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



我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
2008-6-30 21:35
查看资料  发短消息 网志   编辑帖子  回复  引用回复
jonsonqf
初级用户





积分 65
发帖 29
注册 2007-10-14
状态 离线
『第 22 楼』:  



  Quote:
Originally posted by quya at 2008-6-30 09:35 PM:


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

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

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

哈哈,没关系,确实这个程序比较好蒙人,那就希望有其他朋友用过的分享这个加密程序了

2008-6-30 22:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
knoppix7
银牌会员





积分 1287
发帖 634
注册 2007-5-2
来自 cmd.exe
状态 离线
『第 23 楼』:  

bat2exe.
OllyDump对付它无敌.

2008-6-30 22:13
查看资料  发短消息 网志   编辑帖子  回复  引用回复
313885174
中级用户





积分 206
发帖 100
注册 2007-7-9
状态 离线
『第 24 楼』:  

用第三方的任务管理器也没用?

2008-6-30 22:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wxcute
中级用户





积分 458
发帖 211
注册 2006-7-26
状态 离线
『第 25 楼』:  

这个加壳的释放的P名字也很有特点,
在我的机子上Win系统下看不到,显示系统文件加显示隐藏文件也看不到。
只能cmd下dir

环境:NTFS文件系统,XP SP2

setup.exe释放*.cmd到同目录下
文件名是[ CMD9C56.CMD]不含中括号,开头有个Unicode字符。



┌───────┐
├→学习→实践→┤
└───────┘
2008-7-1 13:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
knoppix7
银牌会员





积分 1287
发帖 634
注册 2007-5-2
来自 cmd.exe
状态 离线
『第 26 楼』:  

不会利用文件名做删除标记.然后骗过Explore?

2008-7-1 17:34
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wxcute
中级用户





积分 458
发帖 211
注册 2006-7-26
状态 离线
『第 27 楼』:  



  Quote:
Originally posted by knoppix7 at 2008-7-1 17:34:
不会利用文件名做删除标记.然后骗过Explore?

还真不会,我搜索下先。



┌───────┐
├→学习→实践→┤
└───────┘
2008-7-1 19:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
19951001
高级用户

流落街头



积分 570
发帖 272
注册 2005-10-17
来自 北京
状态 离线
『第 28 楼』:  

在临时文件夹中找到了 bat 文件,内容如下:

......


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

[ Last edited by 19951001 on 2008-7-5 at 05:01 PM ]

2008-7-1 19:49
查看资料  发短消息 网志   编辑帖子  回复  引用回复
knoppix7
银牌会员





积分 1287
发帖 634
注册 2007-5-2
来自 cmd.exe
状态 离线
『第 29 楼』:  

实在Sorry..
touchnet吞掉了一个会..

会不会
非常抱歉-0-

2008-7-1 21:15
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ZJHJ
高级用户





积分 609
发帖 374
注册 2006-8-2
状态 离线
『第 30 楼』:  

只要先运行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       │ [1] 卸载 winpe,并重新安装                │
echo       │ [2] 卸载 winpe,并退出安装                 │
echo       │ [q] 退出安装                 │
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       │ [1] 安装winpe到硬盘                          │
echo       │ [q] 退出安装                 │
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 ]

2008-7-2 23:30
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: