中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-30 10:02
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 如何防止doskey.com在内存中被卸载 查看 3,022 回复 33
16 发表于 2006-02-22 14:33 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
Originally posted by martin325 at 2006-2-22 13:14:
请问7楼的高手,你的Doskey可以上传一下吗?

我的 doskey 也不是我的,就是 MS-DOS/Windows 98 自带的
17 发表于 2006-02-22 14:43 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
谢谢斑竹提供一个个取巧的办法:)
本人的启动盘是WINME下制作的,而装WINME系统的电脑也找不到了。

刚试过Win98 下的 doskey.com,版本有冲突,用不了:(

不知哪位热心朋友能否提供下载?
18 发表于 2006-02-22 16:49 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
15楼的方法,我试了一下,没用啊。

是竞猜答案不对,还是本人操作有误?
19 发表于 2006-02-23 08:12 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
请斑竹公布一下答案!
20 发表于 2006-02-23 09:42 ·  中国 上海 黄浦区 电信
金牌会员
★★★★
积分 4,639
发帖 2,239
注册 2005-01-30 00:00
21年会员
UID 35785
性别 男
状态 离线
Originally posted by martin325 at 2006-2-22 16:49:
15楼的方法,我试了一下,没用啊。

是竞猜答案不对,还是本人操作有误?

我说了,我只是大致点了一下,并没有完整的说出答案,因为这样就影响别人回答了,相信知道的人一定看得懂。而且我说的方法只适用于 MS-DOS 自带的 doskey ,对第三方开发的可能只是部分适用。
21 发表于 2006-02-23 10:32 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
在Autoexec批处理文件里写上:
doskey del=none
doskey doskey=cls
运行执行Autoexec后,就用不了del命令,doskey本身也卸载不了了。

请问在“不重新启动电脑”的情况下,如何使del命令恢复“可用”呢?
22 发表于 2006-02-23 10:33 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
说明:本人的doskey是第三方开发的。
23 发表于 2006-02-23 12:41 ·  中国 山西 临汾 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re DOSforever:

“高位”一说,纯属手误,不过歪打正着,能引起老兄的不平之鸣,倒是喜出望外。“无奖”一说,也属子虚,不信请看15楼的5只小手,20分可是我的评分上限了

不过,老兄的答案倒确实让我有意外之得,1、2、3都是我之预想,但4确是没有想到,到现在也没有揭破,倒是无意又发现了5种解法,与你的4法一起,恰凑够“十大”了

目前看来,这场切磋确实越来越有意思了,倒是有些感谢 doskey 的这些“安全问题”了,不过它的漏洞未免也太多了些。

Re martin325:

实在佩服兄能对 DOS 的安全问题如此执着,早年我对此只是稍下工夫,便觉无望而放弃了。

其实想增加 DOS 的安全性,启动时的登录问题是第一要塞,而启动后的权限分配则只是内部的一些简单防护措施了。

至于命令限制,我认为最可取的还是直接修改 command.com 了,它并不复杂,只需要使用十六进制编辑工具进行字符串的等长替换而已。

另外,你目前的方案中,仅仅禁止 del 是不够的,别忘了它还有个 Erase 的别名。

最后,关于 doskey 的破解问题,可以等我揭开 Alt- 之谜后再揭晓吗?

[ Last edited by willsort on 2006-2-23 at 12:45 ]
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
24 发表于 2006-02-23 13:00 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
谢谢提醒:)
等待答案中……
25 发表于 2006-02-24 18:13 ·  中国 山西 大同 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re martin325:

众里寻它千百度,蓦然回首,却在灯火阑珊处。

DOSforever 兄的 alt- 之解,却原来就藏在 DOSKey /? 中,枉我从 Alt-Num,Alt-Enter 中苦思寻解。好了,现在可以公布目前为止,我所知道的可以解开 doskey doskey=cls 的所有方案了。

  1. (Alt-F10)
  2. (space)doskey doskey=
  3. doskey.com doskey=
  4. call doskey doskey=
  5. for %c in (doskey) do %c doskey=
  6. if errorlevel 0 doskey doskey=
  7. doskey/reinstall
  8. command /k doskey doskey=
    exit
  9. echo doskey doskey=>dk.bat
    dk.bat
    del dk.bat
  10. ren doskey.com dk.com
    dk doskey=
    ren dk.com doskey.com


[ Last edited by willsort on 2006-2-24 at 18:14 ]
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
26 发表于 2006-02-24 20:02 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
好的,我先试试看!
关于安全问题,我在DOS启动时,在Autoexec里设置了三个choice语句,并屏蔽了F5、F8、Ctrl+C和Ctrl+Break,这样第一道关口也做了设置!

这个方法比较简单些,安全上也不是很好,但也算得上一道防线,对像我这样的小菜鸟还是有用的吧?请斑竹指出该方法的大漏洞!

另外请问还有其他更安全的方法吗?
27 发表于 2006-02-24 22:10 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
刚才测试了一下,发现只有第一项对本人使用的第三方开发的doskey程序有效!

其余9项都是无效的!
28 发表于 2006-02-25 00:45 ·  中国 山西 运城 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re martin325:

这有些奇怪,我在 MSDOS6.22 、MSDOS7.10 和 WinME启动盘下都做了测试,而 MSDOS7.10/WinME 下使用的正是 Paul Houle 的 Enhanced DOSKEY Ver 1.8 ,除了第7项因为参数开关不同而仅对 MS 的 DOSKEY 有效,其他方法均同样有效。不知你是如何测试的?

至于你的安全性测试,建议你首先制作一个加护你现有的所有安全措施的最简化启动盘IMG镜像,然后上传为附件或直接发到我的邮箱,这样我也可以顺便测试一下你的DOS环境下doskey安全性表现。

[ Last edited by willsort on 2006-2-25 at 00:54 ]
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
29 发表于 2006-02-25 09:36 ·  中国 浙江 杭州 电信
银牌会员
★★★
积分 1,582
发帖 603
注册 2006-02-20 20:26
20年会员
UID 50690
状态 离线
邮件已经发给willsort斑竹了。请查收,并请提出宝贵意见。

补充说明:
当运行时看到屏显为non-system disk or disk error
Please reboot it by enter [Ctrl+Alt+Del]
Bad command or file name
这是为了迷惑小小菜鸟的!哈哈……
30 发表于 2006-02-25 10:35 ·  中国 山西 大同 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re martin325:

已做测试,应该说它在安全性方面做得还是相当不错的。如果使用此启动盘启动,且不知道密码按键的情况下,是很难登录到DOS环境的。

当然,它仍然存在一些漏洞。其中最大的,作为一张启动盘,它仍然不能防止用户使用其它方式登录系统,并从其中查看和编辑你的启动盘中的各种文件,从而轻松了解和破除各种安全性屏障。这也是 MS-DOS 本身固有的最大的安全性漏洞,甚至也是所有微软系统的最大安全性软肋。这个问题通常来说,是很难解决的,我所能想到的方案是,制作一张经过加密压缩的DOS启动盘镜像,在BIOS引导后调用某个启动工具来读取并加载这个镜像启动系统,但是我现在还未了解到那个启动工具可以读取加密压缩镜像。

对于目前的防护措施而言,我仅提供以下几个建议:

1、config中break.sys和autoexec中的boff使用一个就足够了,至于如何取舍在于你自己;

2、启动后的重启提示似乎与系统原来的并不一致,细心的人会看出问题所在的。

另外,doskey 的安全性也已测试,1-10 除 7 外均有效。需要注意的是,1、7会直接清除所有宏命令,而2-10仅删除doskey这个宏命令,而只要删除了它,再使用 doskey -r 或 doskey del= 等清除其它宏命令就简单多了。

[ Last edited by willsort on 2006-2-25 at 13:37 ]
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
论坛跳转: