中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 01:19
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 感谢 CN-DOS 和帮助过我的人 (顺便也出个题) 查看 2,530 回复 27
16 发表于 2008-06-22 00:09 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
不是这个吧:
@ECHO OFF
TITLE 继续安装其他工具----瞿亚设计
C:
CD\TOOLS
ECHO 安装 Windows Update V7
Start/Wait wuv7.exe /Q
ECHO 安装 Windows Messenger 5.1
Start/Wait Messenger.msi /Q
ECHO 安装 Windows Live Messenger 8.5
Start/Wait WLM.msi /Q
Start/Wait wllogin.msi /Q
ECHO 安装 DOS模拟启动盘
Start/Wait dosboot.exe
ECHO 正在进行优化并删除临时文件...
C:\WINDOWS\regedit /s hotfix.reg
C:\WINDOWS\regedit /s finetune.reg
CD\
FOR /F "DELIMS==" %%a IN (C:\WINDOWS\SYSTEM32\OEMINFO.INI) DO (SET STR=%%a)
SET STR=%STR:~4%
IF %STR% GTR 11 GOTO SKIPINF
ECHO.>>C:\WINDOWS\SYSTEM32\OEMINFO.INI
SET /A STR=%STR%+1
FOR /L %%a IN (%STR%,1,11) DO (ECHO Line%%a="">>C:\WINDOWS\SYSTEM32\OEMINFO.INI)
ECHO Line12=" '''╭⌒╮⌒╮.',''',,','',,','',,',''">>C:\WINDOWS\SYSTEM32\OEMINFO.INI
ECHO Line13=" ╱◥██◣ '''''''''">>C:\WINDOWS\SYSTEM32\OEMINFO.INI
ECHO Line14="︱田︱田田| 安装于 2008-06-21 星期六 ">>C:\WINDOWS\SYSTEM32\OEMINFO.INI
ECHO Line15="╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬╬">>C:\WINDOWS\SYSTEM32\OEMINFO.INI
:SKIPINF
DEL DPsFnshr.exe
RD /S/Q TOOLS
DEL C:\WINDOWS\*.TMP /Q /F
DEL C:\WINDOWS\KB*.LOG /Q
RD C:\WINDOWS\$hf_mig$\ /S /Q
DEL "C:\Documents and Settings\All Users\「开始」菜单\设定程序访问和默认值.lnk" /Q /F
RD C:\WINDOWS\LastGood.Tmp /S /Q
DEL >nul 2>nul
del %0
批处理之家新域名:www.bathome.net
17 发表于 2008-06-22 00:12 ·  中国 江苏 苏州 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
当然不是啦。晕。
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
18 发表于 2008-06-22 00:15 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
我晕,那是不是解set str1=joke....这一段啊。
批处理之家新域名:www.bathome.net
19 发表于 2008-06-22 00:17 ·  中国 江苏 苏州 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
是的,中间那一段。

我只要你解到 call :set %str1:__P=i% 2>nul ||goto next

这句 不跳到 next 就可以了。

因为下边的脱离了盘无法解。而且假如你解到这儿,就会明白为什么不能解了。

[ Last edited by quya on 2008-6-22 at 12:44 AM ]
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
20 发表于 2008-06-22 00:42 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
你这个加密好像跟书写格式都有关,书写格式有错误就解不出来了,特别是最后一行。
批处理之家新域名:www.bathome.net
21 发表于 2008-06-22 00:45 ·  中国 江苏 苏州 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
Originally posted by zw19750516 at 2008-6-22 12:42 AM:
你这个加密好像跟书写格式都有关,书写格式有错误就解不出来了,特别是最后一行。


关系可能有,但不多,最关键的不是这个。

这段代码是Windows XP SP3 安装过程中由cmdlines.txt 调用的。

熟悉Windows XP SP3 安装过程的人,不一定熟悉批处理。而熟悉批处理的,又不一定对XP 安装过程感兴趣。

而我是一个三脚猫(土话,意思什么都了解一点,什么也不精),正好钻了个空子,搞了这么个有点怪异的加密。

[ Last edited by quya on 2008-6-22 at 12:52 AM ]
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
22 发表于 2008-06-22 02:01 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
我日解了一点点,解不下去了,原因我的注册表中没hklm项,同时你这个鬼东东还跟你的程序名相关。。。解的部分如下,相信你应该知道我已解开你的加密方法了:
原文

set str1=Joke
for /f "eol=S" %%i in (%~f0) do (set "str1=!str1:~0,-4!,%%i")
set str1=%str1:,=%
set /p %STR1:~12,3%=<%~f0
call :set %str:~11,3%%str1:~32,1% 2>nul ||goto next

解密

set str1=joke rem 障眼法
set str1=,@,T,%SYSTEMDR,,,,,%str1:~21,2%str1:~3,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,)
set str1=%str1:,=%
call :set set 2>nul ||goto next rem 我日在这里就跟你的程序名关联了。。。


[ Last edited by zw19750516 on 2008-6-22 at 02:13 AM ]
批处理之家新域名:www.bathome.net
23 发表于 2008-06-22 09:42 ·  中国 江苏 苏州 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
到你解的那一步,还没有跟任何程序名有关。应该可以解到我在19楼提到的那一步。
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
24 发表于 2008-06-22 10:37 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
Originally posted by quya at 2008-6-22 09:42:
到你解的那一步,还没有跟任何程序名有关。应该可以解到我在19楼提到的那一步。

兄弟是不是再仔细看看,到我解的这一步,程序就call :set了,在:set 里第一行命令就是set str1=%0,而且我还知道你这个鬼程序名的最后三个字符是set,你说是不是的?
批处理之家新域名:www.bathome.net
25 发表于 2008-06-22 10:48 ·  中国 江苏 苏州 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
Originally posted by zw19750516 at 2008-6-22 10:37 AM:

兄弟是不是再仔细看看,到我解的这一步,程序就call :set了,在:set 里第一行命令就是set str1=%0,而且我还知道你这个鬼程序名的最后三个字符是set,你说是不是的?


哈哈,鬼程序名无论叫什么, str1 总是等于 set

所以还可以解下去,不过下边就是很繁的了,如果想不通原理,就是无解。

你实在要知道这个文件名, 我可以告诉你整个批处理原来的名字 installs.cmd , 但与这个名字无关。

这里的代码有点乱, 一部分是因为我编程水平不行,另一部分是障眼法。

[ Last edited by quya on 2008-6-22 at 11:01 AM ]
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
26 发表于 2008-06-22 11:38 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
原理我是很清楚,但解起来确实是很麻烦的一件事,:set 部分如下:

:set
set str1=%0
for /f "usebackq delims==" %%i in (`set`) do (set str=%%i
if not !str:~-3!=="" set str1=!str1:~,-4!%%i
)

ps:我不想再解下去了,再说解出来也只是时间问题,你老兄也太会转圈了。
批处理之家新域名:www.bathome.net
27 发表于 2008-06-22 11:50 ·  中国 江苏 苏州 电信
高级用户
★★
五星老土
积分 558
发帖 172
注册 2003-02-09 00:00
23年会员
UID 881
性别 男
来自 江苏
状态 离线
Originally posted by zw19750516 at 2008-6-22 11:38 AM:
原理我是很清楚,但解起来确实是很麻烦的一件事,:set 部分如下:

:set
set str1=%0
for /f "usebackq delims==" %%i in (`set`) do (set str=%%i
if not ...


谢谢你对我这个可恶的程序关注了半天, 因为曾经你说过,加密批处理是无用的, 所以我也说过有机会给一个你解解看。

你果然上当了, 哈哈,不过接下来就是一个最大的圈, 就算你知道了原理,没一个小时是解不开的。所以你说很清楚其实是个假象。

只有过了你解到的现在这一步,才可以说破解只是时间问题。

PS. 这里边也用到了你教我的办法,防止有人投机取巧解这密。谢谢你啊。当然你的办法是实实在在的在解,没有去投机。

[ Last edited by quya on 2008-6-22 at 12:08 PM ]
我怎么找不到一个比我注册日期早的人? 难道我是传说中的超级管理员? 其实我只是个潜水冠军而已.
28 发表于 2008-06-22 16:19 ·  中国 山东 菏泽 联通
银牌会员
★★★
积分 1,246
发帖 488
注册 2003-11-11 00:00
22年会员
UID 12699
性别 男
状态 离线
发现其中“$OEM$\$1\TOOLS\OEMFILE.SYS”是不同的。

既然LZ说用的是OEMSCAN,那么oemscan估计就在这个文件里。

用记事本打开,可以发现OEMFILE.SYS是个应用程序,扩展名改成EXE,东西就出来了,一个winrar的自解压文件。

单击右键,用rar打开,发现有密码。
论坛跳转: