Board logo

标题: 报告两个MSDOS7.1的疑似漏洞 [打印本页]

作者: willsort     时间: 2005-7-16 14:22    标题: 报告两个MSDOS7.1的疑似漏洞

测试平台:MS-DOS7.1 @ Virtual PC 5.2(418)
其他说明:采用MS-DOS7.1光盘完整版选择性安装,启动配置除加入VPC的附     件包外未作其他改动。

  1、第一个问题出现的比较早,使用VPC自带的fshare实现文件共享,但在创建的共享盘中,可以创建、修改、浏览文件,但是无法删除文件。

下面是测试代码:
------------------- test1.bat ------------------
@echo off      
echo 1>test.txt
echo 2>test.txt
del test.txt   
type test.txt   
------------------- test1.bat ------------------

下面是测试结果:
File not found
2

  在同一虚拟机中MSDOS6.22和Win98 command中的结果正确,也即未找到文件test.txt。

  2、第二个问题最近才发现,就是如果当前路径下存在test文件,那么测试test目录存在的语句(if exist test\nul)返回真值并执行其后的语句。

下面是测试代码:
------------------- test2.bat ------------------
@echo off      
echo 1>test
if exist test\nul echo test dir exist
echo 1>test.txt
if exsit test.txt\nul echo test.txt dir exist
------------------- test2.bat ------------------

下面是测试结果:
test dir exist     
test.txt dir exist

  在同一虚拟机中MSDOS6.22和Win98 command中的结果正确,也即无任何输出。
作者: Wengier     时间: 2005-7-22 02:03
我刚才试了一下,关于第一个问题我在MS-DOS 7.1下测试时没发现,我想可能是以前旧版本的DOSLFN驱动程序存在的问题,而我测试时所用的新版本的DOSLFN则已不存在此问题。关于第二个问题,则确实是DOSLFN的小BUG,只有在加载了DOSLFN的情况下才出现。因此以上两个问题均非MS-DOS 7.1的问题,而都与DOSLFN有关。
作者: willsort     时间: 2005-7-25 11:23
Re Wengier:

  我再测试了一下,确实都是DOSLFN的问题,我的DOSLFN版本0.32o,不知现在的新版是多少,是否已经解决了上述的问题。另外,第一个问题,只出现在VPC中的fshare创建的共享盘下。