WIN XP 45个技巧
Win XP实用技巧45条
有关注册表修改的,请先备份注册表!
1、 影音文件在xp中无法删除
很多情况下是因为预览功能搞的鬼。开始 运行中输入并执行“REGSVR32 /U SHMEDIA.DLL”,取消息预 览。恢复时运行“REGSVR32 SHMEDIA.DLL”。其实就是去掉预览功能。
2、注册表解锁
REGEDIT4
[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesSystem]
"DisableRegistryTools"=dword:00000000
3、 在XP下重装IE:
运行注册表编辑器,找到[HKEY_LOCAL_MACHINESOFTWAREMicrosoftActive SetupInstalled Components],把键值从1改成0,重启后xp将自动开始安装IE6。
4、永久不开启3721
Win9x/Me
编辑文件 X:Windowshosts,添加一行代码:
download.3721.com 255.255.255.255
WINNT/2000
编辑文件 X:WINNTsystem32driversetchosts,添加一行代码:
255.255.255.255 download.3721.com
WinXP
编辑文件 X:Windowssystem32driversetchosts,添加一行代码:
255.255.255.255 download.3721.com
对于 CNNIC 的中文域名也可以用,域名改成 cdn2.cnnic.cn
5、任务栏里的显示桌面丢失了怎么办?
简单的方法::
记事本新建输入:
[Shell]
Command=2
IconFile=explorer.exe,3
[Taskbar]
Command=ToggleDesktop
保存为 显示桌面.scf
拖到快速启动
6、WIN98中用快捷方式实现一键关机
每次关闭计算机,都需要执行“开始/关闭计算机”命令,给本来就很简单的关机操作带来了很 多麻烦,下面介绍一种实现一键关机的方法。首先需要在桌面的空白处单击鼠标右键,并且新建立一个“ 快捷方式”,在弹出的创建快捷方式对话窗口中,在“命令行”中输入“C:windowsRUNDLL32.EXE user,ExitWindows”,然后单击“下一步”按钮,给该快捷方式命名为“一键关机”,这时系统的桌面上就会 出现刚才建立的快捷方式了,打开该快捷方式的属性窗口,进入“快捷方式”页,并且给该快捷方式自定义 一个快捷功能键,如F11,完成以后,就可以按F11键执行关机命令。
7、 将MP3中音质不好的部分去除
修正MP3歌曲可以通过mp3Trim软件来实现。
运行程序之后载入需要修正的MP3歌曲,首先要知道需要截取的是哪一部分,在“从头部”处输 入截取部分的开始时间,单击右边的小喇叭按钮,同时在“从尾部”处输入时间(这个时间是从文件末尾往 前推的时间,所以此时间需用音乐总的时间减去刚才记下的时间来得到),单击右边的小喇叭按钮,紧接 着选择保存便大功告成了。
除了从时间选择截取片段,mp3Trim支持从帧来选择截取片段,其操作方法与时间截取大同小 异,而且其他诸如音量控制、淡入淡出效果等功能也很有特色。
8、 双击窗口左上角的图标可以关闭窗口
如果同时有多个窗口打开,想要关闭的话,可以按住shift不放然后点击窗口右上角的关闭图 标。
9、 输入法问题:
1)、解决安装officexp输入法图标问题:
只要把 x:windowssystem(x为安装windows的盘符)文件夹下的ctfmon.exe在dos下删除或改名即可。(用该法操作 后第一次启动电脑时,如发现输入法图标不再系统托盘中,可在控制面板的输入法图标中把它找回来)。
2)、找回office2003的输入窗口:
在注册表中[HKEY_CURRENT_USER/Control Panel/Input Method/]下的Show Status值变为0,将其改为1。并重新登陆即可解决问题。
10、 用记事本减肥win2k
进入c:winntinfsysoc.inf在编辑菜单中选替换,在查找中输入“hide,”点击全部替换,在添 加删除中可出现一些常见的选项,你可根据自己的需要进行选择。
sfc /purgecache
在运行里输入这个命令回车,可以清理很多缓存和一些备份文件,通常都能去掉300-400M的 文件,对系统没有任何伤害,xp通用。
11、 用ghost压缩
随便找一个gho镜像文件,用ghost explorer把文件中的内容删除。用ghost explorer打开空 gho文件,并在ghost explorer的窗口里点右键粘贴或是直接把文件拖进窗口就行了(ghost explorer的压缩速度比winrar还要快,而添加、删除等都可以方便实现,用起来就象资源管理器一样)。
12、win2000/XP在遇到系统严重问题无法启动
可以利用故防恢复控制台,把c:windowsrepair文件夹中保存的初始化注册表文件(system 、software、sam、security、default),复制进system32config(先将其同容备份后删除)中来换救系统 。
13、手动下载xp升级补丁
许多朋友在装好sp1后通过windows update网上升级后还会发现有许多升级补丁,但是,如果 通过windows update网上升级速度奇慢,有什么办法可以加速下载呢?通过实践,我发现一个小窍门。
步骤:
1):通过开始菜单里的windows update进行上网升级。
2):选择“扫描以寻找更新”查找升级补丁。
3):“复查并安装更新”开始查看更新补丁说明。
4):点击“立即安装”跳出windows update--网页对话框开始下载补丁
5):选择取消,退出升级
6):打开c:windowsWindows Update.log
看见了吧!你所要得补丁下载地址都在这里!现在所要做的就是复制下载链接地址用网际快车 (FlashGet)这类的下载软件进行下载。
14、 利用fc和>来分析注册表
例如,我们可以在安装软件前份一次注册表(如:c:first.reg),安装后再导出注册表文件 (c:second.red)然后再在MS-DOS方式(纯DOS方式也行)下执行下列命令:
c:>fc first,reg second.reg>fc.txt (回车)
c:>fc first,reg second.reg>fc.txt (回车)
再打开fc,txt文件,即可查看该软件对注册表添加了哪些子项了。
注:重定向输入的文件类型一般为.txt形式也可以,如.wps 、.doc等,前提是必须安装相应 的文件打开程序。
15、 轻松破解foxmail账户口令
在foxmail中为了账户的安全,我们一般会为账户设置一个口令,如果忘了也不要紧。打开 mail目录下以你的帐户命令的文件夹,删除accounf.stg。口令解除了。
不用删除,改个后缀名即可。系统会自动创建一个新的accounf.stg文件,出来后删除此文件 ,再改回原accounf.stg文件后缀,就能神不知鬼不觉看别人的邮件了。不过最好不要用于非法用途。
16、 局域网隐身法:
在局域网中常通过网上邻居查看局域网中其他用户的在线情况,如果你不希望别的用户知道 你是否在线,这时可以在win2000/xp下运行cmd然后再运行net config server /hidden:yes 回车后就隐身啦。如果要取消只要把yes 改成no。
17、 用winrar合并MP3:
把几首要合并的mp3文件选中,右键单击——添加到档案文件,压缩方式选择存储。然后把压缩 好的文件后缀改成mp3。再放一下听听是不是两首歌已经合成一首啦。
18、 禁用设备驱动更新向导
这个设置可以允许你在设备管理器中禁用通过windows Update升级设备的驱动程序。
要进行这个设置,可以按以下步骤进行操作:在任务栏上点击开始按钮,然后在开始菜单中点击 运行,输入regedit并点击确定,打开注册表编辑器。
要进行这个设置,可以按以下步骤进行操作:在任务栏上点击开始按钮,然后在开始菜单中点击 运行,输入regedit并点击确定,打开注册表编辑器。
展开HKEY_CURRENT_USERSoftwarePoliciesMicrosoftWindows NTDriver Signing
创建一个名为“NoDevMgrUpdate”的DWORD 键,然后设置键值为“1”。你修改的设置会在你重启 动电脑后生效。
19、改变驱动签名验证选项
这个设置可以让你决定在安装未经过签名或者测试的驱动程序时系统采取怎样的操作。要进 行这个设置,可以按照以下步骤进行操作:在任务栏上点击开始按钮,然后在开始菜单中点击运行,输入 regedit并点击确定,打开注册表编辑器。展开HKEY_CURRENT_USERSoftwarePoliciesMicrosoftWindows NTDriver Signing 创建一个名为“BehaviorOnFailedVerify”的DWORD 键,设置键值为“0”。你修改的设置会在你重启动电脑后生效。
20、卸载传真和图片 查看器
如果不想用XP自带的传真和图片查看器,你可以运行这个命令卸载它:
regsvr32 /u shimgvw.dll
21、 禁止officexp输入条
先在添加/删除程序里把《中文可选输入方法》禁用,然后在区域设置详细信息将除“英语( 美国)”之外的其它输入法删除,最后运行:
regsvr32 /u msimtf.dll
regsvr32 /u msctf.dll
22、 豪杰超级解霸V8
只要将安装目录中的VCvtShell.dll改名就可以去掉资源管理器中的按钮。
23、系统是2K或xp,如果你的系统分区是fat32格式,如果非法关机,下次启动的时候系统 会运行磁盘扫描程序,但是启动的时候总是会有10秒钟的等待时间,如何去掉呢?
CHKNTFS /t:0
上面的0是等待秒数。
24、2k系统老是提示“无法装载动态链接库***.dll,系统找不到指定文件”。
把该文件copy到原路径也没用,这时你可以试试dos下的这个命令来修复系统文件:
sfc /scanonce
如果需要的话会提示插入2k光盘,然后重启就应该可以。
25、 MyIE2里怎么改google搜索
MYIE2>设置中心>快捷搜索>*是默认搜索,最新"简体"中文搜索是 http://www.google.com/search?q=% ... 2&lr=lang_zh-CN。
26、 不用重新启动都可以应用修改后的注册表
26、 不用重新启动都可以应用修改后的注册表
修改注册表后,保存对注册表的修改。然后同时按下“Ctrl+Alt+Del”组合键,在弹出的 Windows任务列表,加亮“Explore”,单击“结束任务”,显示关机屏幕,单击“否”,稍候,弹出错误信息, 单击“结束任务”,Windows浏览器即会和新的注册表一起重新装载。
27、QQ自己加自己的方法:
在黑名单中加自己,然后再把自己拖到我的好友中就可以了,然后再运行注册向导。
28、启动Winamp,并播放一首MP3,然后按住[SHIFT]不放,再单击面板上的“停止”按钮,你会发 现音乐没有立即停止,而是逐渐降低音量直至完全消失,就象电台DJ做的一样。
28、启动Winamp,并播放一首MP3,然后按住[SHIFT]不放,再单击面板上的“停止”按钮,你会发 现音乐没有立即停止,而是逐渐降低音量直至完全消失,就象电台DJ做的一样。
29、原来硬盘图标也可以这么漂亮啊!
首先你得在网上下载几个你喜欢的图标(后缀名为.ico),分别放入每个驱动器的根目录下面 ,命名为如1.ico,然后新建一记事本,输入:
[autorun]
icon=1.ico
然后保存为autorun.inf就可以了,重启系统就能看到效果了!另外最好把这两个文件的属性 设置为"隐藏",主要是因为如果不这样做的话,你打开每个驱动器都可以看见这么两个文件,太丑了,而 且也使我们把硬盘图标变漂亮的秘密给暴露了!
而且这一招还可以应用到光盘上,在你刻录的光盘上也加入一个autorun.inf文件和一个图标 ,那么你的光盘也会有这样的一个图标!
另外,把autorun.inf的内容改成:
[autorun]
open=xxx.exe
插入光盘时便会自动运行xxx.exe这个文件,这一招也很实用!
30、 RealOne Player是一个非常优秀的音视频播放软件,美中不足的是启动时间比较长,那我们何不想点办法来 加快RealOne Player的启动速度呢?
1).无声地启动
执行“开始→搜索→文件或文件夹”命令,分别查找“netid.smi”和“getmedia.ini”文件,找到后 将它们更名,比如更名为“netid-old.smi”和“getmedia-old.ini”,此后当你再次启动RealOne Player时,就不会再有欢迎音乐,软件也不会再尝试连接软件主页了。
2).省略软件简介
在“Tools→Album info”中选中“Hide”项,则以后RealOne Player就不再显示产品简介了。
3).关闭媒体浏览器
RealOne Player提供了一个媒体浏览器,关闭它的方法是:在RealOne Player窗口右上角“关闭”按钮的下面,“地球”按钮的右面,找到一个三角箭头,单击这个箭头打开其下拉 菜单,取消“show media browser”项前的勾即可
再次启动RealOne Player,感觉速度是不是快了许多?
31、让中文文件名按笔画排序
在Windows的资源管理器中,不管文件(或文件夹)名是英文还是中文,当我们用“详细信息” 方式查看时,在文件列表标题“名称”上单击,文件名默认的排序方式都是按字母的顺序排列的。如果你有 大量的中文文件名,那么让中文文件名按笔画排序会更符合我们的使用习惯。方法是:
在Windows XP中双击“控制面板→区域和语言选项”,切换到“区域选项”选项卡,单击“自定义”按钮打开“自定义区域选 项”对话框,单击“排序”选项卡,在排序方法下拉列表中选择“笔画”。重新启动计算机后,打开资源管理 器,单击文件列表标题“名称”,会发现中文文件名已经按笔画多少排序了!
注意:该设置只影响中文名称文件,不管以“发音”还是以“笔画”排序,用英文命名的文件, 其排序方式总是按名称排序。
32、 巧破网页禁用鼠标右键。
巧破网页禁用鼠标右键
第一种情况,出现版权信息类的。破解方法如下:
在页面目标上按下鼠标右键,弹出限制窗口,这时不要松开右键,将鼠标指针移到窗口的“确 定”按钮上,同时按下左键。现在松开鼠标左键,限制窗口被关闭了,再将鼠标移到目标上松开鼠标右键 ,哈哈,弹出了鼠标右键菜单,限制取消了!
第二种情况,出现“添加到收藏夹”的。破解方法如下:
在目标上点鼠标右键,出现添加到收藏夹的窗口,这时不要松开右键,也不要移动鼠标,而 是使用键盘的TAB键,移动焦点到取消按钮上,按下空格键,这时窗口就消失了,松开右键后,我们熟悉 的右键菜单又出现了。
第三种情况,超链接无法用鼠标右键弹出“在新窗口中打开”菜单的。这时用上面的两种方法 无法破解,看看我这一招:在超链接上点鼠标右键,弹出窗口,这时不要松开右键,按键盘上的空格键, 窗口消失了,这时松开右键,可爱的右键菜单又出现了,选择其中的“在新窗口中打开”就可以了。
上面的方法你全都知道?那再看下面的你知道不知道?在浏览器中点击“查看”菜单上的“源文 件”命令,这样就可以看到html源代码了。不过如果网页使用了框架,你就只能看到框架页面的代码,此 方法就不灵了,别急,我还有别的办法。
上面的方法你全都知道?那再看下面的你知道不知道?在浏览器中点击“查看”菜单上的“源文 件”命令,这样就可以看到html源代码了。不过如果网页使用了框架,你就只能看到框架页面的代码,此 方法就不灵了,别急,我还有别的办法。
你按键盘上的Shift+F10组合键试试,可以直接调出右键菜单!
再看我这一招:看见键盘右Ctrl键左边的那个键了吗?按一下试试,右键菜单直接出现了! 这一招在江湖上可是很少见到的,如何?还不行吗?
看来必须使出我的独门绝招了!要看仔细了,这可是江湖上从来没有出现过的“无敌****”哦 !在屏蔽鼠标右键的页面中点右键,出现限制窗口,此时不要松开右键,用左手按键盘上的ALT+F4组合键 ,这时窗口就被我们关闭了,松开鼠标右键,菜单出现了!这一招一使出来,以上所有情况都可轻易破解 掉。
33、 键盘“Print Screen”键的妙用四则
1、代替屏幕截图软件
按下Print Screen键,将会截取全屏幕画面。用鼠标点击“开始→程序→附件→画图”,将会打开“画图”程序,点击该窗 口中的“编辑→粘贴”菜单,这时会弹出一个“剪贴板中的图像比位图大,是否扩大位图?”对话框,点击“是 ”,就会将该截取的图片粘贴到其中。再按下Ctrl+S键将图片保存即可。
2、抓取当前活动窗口
在使用Print Screen进行屏幕抓图时,同时按下Alt键,就会只抓取当前活动窗口,然后按上 述方法保存即可。
3、截取游戏画面
我们都知道用键盘上的Print Screen键可以抓取系统中的桌面图案,然后在“画图”程序或是Photoshop之类的图像处理软件中可以“粘贴 ”出来。但是如果我们要抓的是游戏画面的话,上面这个方法可能就不灵光了。
没关系,启动Windows Media Player(6.0以上版本),打开一个视频文件,选择“文件→属性→ 高级”,双击Video Renderer,在Direct Draw中,把YUV Flipping、RGB Flipping、YUV Overlaya和RGB Overlays四个选项取消,确定后退出。再试试看,用Print Screen键也可以抓游戏画面了。
34、截取DirectX图
Print Screen键无法截取DirectX图,没关系,只要我们略施小计,就可以让它大展拳脚。在“开始”菜单的“运行 ”中输入regedit,打开注册表编辑器,然后展开注册表到 HKEY_Local_MachineSoftwareMicrosoftDirectDraw分支,新建一个“DWORD”值,并将其重命名为 “EnablePrintScreen”,填入键值“1”,即可使Print Screen键具有截取DirectX图的功能。
35、快捷使用你的软件
在桌面上找到你最常用的软件的图标,点右键-属性,将快捷方式选项更改为你认为最合适 的,比如我的myie2是F9,winamp是F10,QQ是F11,再在myie外部工具栏里添加你上网常用的软件,这样我 开机时只要按F9、F10、F11,我三个最常用的软件就很快打开了,但是最好不要将快捷键设置与系统常用 的相同,一般设置时会提示的!
36、用下载软件查看隐藏分区
36、用下载软件查看隐藏分区
操作系统:WINDOWS XP
分区格式:FAT32
下载软件:网际快车、影音传送带、迅雷、BT精灵
隐藏分区软件:优化大师或是通过修改注册表,原理是一样的,具体的不再详细说明。本人 是用优化大师的优化功能隐藏了h盘。
情况一:下载工具中有H盘软件或文件的下载记录。 比如曾经用上面的任何一个下载工具下载了QQ在H盘,记录未删除。此时选择这个记录,以快车为例,任 务-打开下载的文件目录,你会发现隐藏的H盘被打开,里面的文件可以进行操作了!呵呵!
情况二:下载工具中无隐藏分区的相关文件下载记录或无任何记录,而你怀疑或是知道隐藏 了某个分区(比如我们现在知道我的电脑上隐藏了H盘),此时任意找到一个下载链接,以快车为例,用快 车下载,保存在H盘任意一文件夹下,不一定要下载完毕,然后任务-打开下载的文件目录,H盘就被打开 了,当然前提是确实隐藏了H盘。
37、WinXP自带批量重命名功能
只要选中一堆文件,选重命名,然后改第一个文件,改完后,其他文件也会自动修改。
38、 改变win98录音机的录音长度限制
1).打开录音机,安下“录音”按钮,这时在录音窗口右侧显示本次录音的长度为60秒,左侧显 示本次录音的位置。
2).待录音进行到一定的位置后,按下“停止”按钮。
3).打开“效果”菜单,选择“减速”,这时你会发现录音窗口右面显示长度为100秒。不断重复 操作,直到录音长度增加到合适长度。
4).按“收索到开头”按钮,然后再按“录音”开始正式录音,这时候录音的长度就不是一分钟了 !
39、 Word文档加密小技巧
文件菜单设置:1、打开需要加密的Word文档。2、选“文件”的“另存为”,出现“另存为”对话 框,在“工具”中选“常规选项”,出现“保存”选项卡。3、分别在“打开权限密码”和“修改权限密码”中输入 密码(这两种密码可以相同也可以不同)。4、再次确认“打开权限密码”和“修改权限密码”。按“确定”退 出“保存”选项卡。5、文件存盘。
由工具菜单设置:1、打开需要加密的Word文档。2、选“工具”菜单的“选项”命令,出现“选项 对话框”。3、在“选项”对话框中选“保存”选项卡。4、分别在“打开权限密码”和“修改权限密码”中输入密 码,点“确定”退出。5、将文件保存。
对模板加密
如果我们不想别人使用Word提供的通用模板(Narmal.dot)或自己精心创作的一个模板,可 以对该模板进行加密,其方法是:1、打开通用模板文件(文件名是Narmal.dot,通常可以在C:\ ProgramFiles\Mi-crosoft\Templetas文件夹中找到)。2、按上面的两种方法设置密码。3、点“工具 栏”中的保存(或选“文件”菜单的“保存”)。以后每次启动Word时,就会提示你输入密码。
40、如何输入汉语拼音中的音调符号(如:ā、ě、ū、ǔ、ü、á等)
方法一:word软件中,单击“插入”/“符号”在弹出的“符号”对话框的“子集”框中选择“拉丁语 扩展-A”然后在中间的大框中选择想要的符号,单击对话框下面的“插入”,再单击“关闭”。
方法二:在“智能ABC输入法”中文输入状态,输入“V8”,然后在列表中选择即可。(顺便说一 下,当在“智能ABC输入法”中文输入状态,输入“V”+“一个0-9的数字”,如“V1”、“V2”…,你会发现许多令 人吃惊的玩意。
41、删除“运行”中的历史记录
选择“开始”菜单中的“关闭系统”命令,然后在弹出的对话框中选择“否”返回Windows ,再看看“运行”中的历史记录是不是都消除了呢?
42、 让“我的电脑”高高在上
默认情况下,在资源管理器中,Windows XP会把“我的文档”图标放在“我的电脑”图标上面。这种排列顺序让很多人在使用中感到很不适应。通过修 改注册表,我们可以让“我的电脑”图标“跑”到“我的文档”图标之上,其操作方法是:
单击“开始→运行”,键入“Regedit”后回车,打开注册表编辑器,依次展开 [HKEY_CLASSES_ROOTCLSID]分支,双击右侧窗口中名为“SortOrderIndex”的DWORD值,将它的值由“48”改 为“54”即可。
43、彻底删除“我的文档”
在Windows XP中,当我们删除“我的文档”中的“我的音乐”、“图片收藏”等文件夹后,重新启动计算机后又会产生这几 个文件夹。其实,要想彻底删除“我的音乐”、“图片收藏”等文件夹,我们只要先在Windows“运行”对话框 中输入“Regsvr32 /u mydocs.dll”这个命令,然后就可以彻底删除它们。
44、 禁止任务栏保存修改
在日常的教学过程中,经常发现学生有意无意地修改任务栏的属性。造成下次上机时任务栏 、时间图标等信息不能正常显示。通过对注册表的修改可以让系统对所作修改不进行保存,当重新启动后 ,系统自动恢复到原来的设置。
单击“开始→运行”,键入“Regedit”后回车,打开注册表编辑器,依次展开 [HKEY_CURRENT_USERsoftwareMicrosoftWindowscurrentversion
policiesExplorer]分支,在右侧窗口中单击鼠标右键,选择“新建→DWORD值”命令,新建桓雒 皀osavesettings”的DWORD值,并将其值设置为“1”即可。
45、巧借Windows XP文件加速启动Windows 2000
大家一定感觉Windows XP的启动速明显比2000的快很多,这是因为它对主要启动文件NTDETECT.COM和NFLDR(此文件没扩展名, 两个文件都在系统分区根目录下)作了优化,我们只要在相应语言版本的Windows XP系统下复制这两个文件至Windows 2000系统分区根目录下覆盖原文件即可。
2006/6/12
DLL后门完全清除
前言
后门!相信这个词语对您来说一定不会陌生,它的危害不然而欲,但随着人们的安全意识逐步增强,又加上杀毒软件的"大力支持",使传统的后门无法在隐藏自己,任何稍微有点计算机知识的人,都知道"查端口""看进程",以便发现一些"蛛丝马迹"。所以,后门的编写者及时调整了思路,把目光放到了动态链接程序库上,也就是说,把后门做成DLL文件,然后由某一个EXE做为载体,或者使用Rundll32.exe来启动,这样就不会有进程,不开端口等特点,也就实现了进程、端口的隐藏。本文以"DLL的原理""DLL的清除""DLL的防范"为主题,并展开论述,旨在能让大家对DLL后门"快速上手",不在恐惧DLL后门。好了,进入我们的主题。
一,DLL的原理
1,动态链接程序库
动态链接程序库,全称:Dynamic Link Library,简称:DLL,作用在于为应用程序提供扩展功能。应用程序想要调用DLL文件,需要跟其进行"动态链接";从编程的角度,应用程序需要知道DLL文件导出的API函数方可调用。由此可见,DLL文件本身并不可以运行,需要应用程序调用。正因为DLL文件运行时必须插入到应用程序的内存模块当中,这就说明了:DLL文件无法删除。这是由于Windows内部机制造成的:正在运行的程序不能关闭。所以,DLL后门由此而生!
2,DLL后门原理及特点
把一个实现了后门功能的代码写成一个DLL文件,然后插入到一个EXE文件当中,使其可以执行,这样就不需要占用进程,也就没有相对应的PID号,也就可以在任务管理器中隐藏。DLL文件本身和EXE文件相差不大,但必须使用程序(EXE)调用才能执行DLL文件。DLL文件的执行,需要EXE文件加载,但EXE想要加载DLL文件,需要知道一个DLL文件的入口函数(既DLL文件的导出函数),所以,根据DLL文件的编写标准:EXE必须执行DLL文件中的DLLMain()作为加载的条件(如同EXE的mian())。做DLL后门基本分为两种:1)把所有功能都在DLL文件中实现;2)把DLL做成一个启动文件,在需要的时候启动一个普通的EXE后门。
常见的编写方法:
(1),只有一个DLL文件
这类后门很简单,只把自己做成一个DLL文件,在注册表Run键值或其他可以被系统自动加载的地方,使用Rundll32.exe来自动启动。Rundll32.exe是什么?顾名思意,"执行32位的DLL文件"。它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有Rundll32.exe,而不会有DLL后门的进程,这样,就实现了进程上的隐藏。如果看到系统中有多个Rundll32.exe,不必惊慌,这证明用Rundll32.exe启动了多少个的DLL文件。当然,这些Rundll32.exe执行的DLL文件是什么,我们都可以从系统自动加载的地方找到。
现在,我来介绍一下Rundll32.exe这个文件,意思上边已经说过,功能就是以命令行的方式调用动态链接程序库。系统中还有一个Rundll.exe文件,他的意思是"执行16位的DLL文件",这里要注意一下。在来看看Rundll32.exe使用的函数原型:
Void CALLBACK FunctionName (
HWND hwnd,
HINSTANCE hinst,
LPTSTR lpCmdLine,
Int nCmdShow
);
其命令行下的使用方法为:Rundll32.exe DLLname,Functionname [Arguments]
DLLname为需要执行的DLL文件名;Functionname为前边需要执行的DLL文件的具体引出函数;[Arguments]为引出函数的具体参数。
(2),替换系统中的DLL文件
这类后门就比上边的先进了一些,它把实现了后门功能的代码做成一个和系统匹配的DLL文件,并把原来的DLL文件改名。遇到应用程序请求原来的DLL文件时, DLL后门就启一个转发的作用,把"参数"传递给原来的DLL文件;如果遇到特殊的请求时(比如客户端),DLL后门就开始,启动并运行了。对于这类后门,把所有操作都在DLL文件中实现最为安全,但需要的编程知识也非常多,也非常不容易编写。所以,这类后门一般都是把DLL文件做成一个"启动"文件,在遇到特殊的情况下(比如客户端的请求),就启动一个普通的EXE后门;在客户端结束连接之后,把EXE后门停止,然后DLL文件进入"休息"状态,在下次客户端连接之前,都不会启动。但随着微软的"数字签名"和"文件恢复"的功能出台,这种后门已经逐步衰落。
提示:
在WINNT\system32目录下,有一个dllcache文件夹,里边存放着众多DLL文件(也包括一些重要的EXE文件),在DLL文件被非法修改之后,系统就从这里来恢复被修改的DLL文件。如果要修改某个DLL文件,首先应该把dllcache目录下的同名DLL文件删除或更名,否则系统会自动恢复。
(3),动态嵌入式
这才是DLL后门最常用的方法。其意义是将DLL文件嵌入到正在运行的系统进程当中。在Windows系统中,每个进程都有自己的私有内存空间,但还是有种种方法来进入其进程的私有内存空间,来实现动态嵌入式。由于系统的关键进程是不能终止的,所以这类后门非常隐蔽,查杀也非常困难。常见的动态嵌入式有:"挂接API""全局钩子(HOOK)""远程线程"等。
远程线程技术指的是通过在一个进程中创建远程线程的方法来进入那个进程的内存地址空间。当EXE载体(或Rundll32.exe)在那个被插入的进程里创建了远程线程,并命令它执行某个DLL文件时,我们的DLL后门就挂上去执行了,这里不会产生新的进程,要想让DLL后门停止,只有让这个链接DLL后门的进程终止。但如果和某些系统的关键进程链接,那就不能终止了,如果你终止了系统进程,那Windows也随即被终止!!!
3,DLL后门的启动特性
启动DLL后门的载体EXE是不可缺少的,也是非常重要的,它被称为:Loader。如果没有Loader,那我们的DLL后门如何启动呢?因此,一个好的DLL后门会尽力保护自己的Loader不被查杀。Loader的方式有很多,可以是为我们的DLL后门而专门编写的一个EXE文件;也可以是系统自带的Rundll32.exe,即使停止了Rundll32.exe,DLL后门的主体还是存在的。3721网络实名就是一个例子,虽然它并不是"真正"的后门。
二,DLL的清除
本节以三款比较有名的DLL后门例,分别为"SvchostDLL.dll""BITS.dll""QoServer.dll"。详细讲解其手工清除方法。希望大家在看过这三款DLL后门的清除方法之后,能够举一反三,灵活运用,在不惧怕DLL后门。其实,手工清除DLL后门还是比较简单的,无非就是在注册表中做文章。具体怎么做,请看下文。
1,PortLess BackDoor
这是一款功能非常强大的DLL后门程序,除了可以获得Local System权限的Shell之外,还支持如"检测克隆帐户""安装终端服务"等一系列功能(具体可以参见程序帮助),适用Windows2000/xp/2003等系统。程序使用svchost.exe来启动,平常不开端口,可以进行反向连接(最大的特点哦),对于有防火墙的主机来说,这个功能在好不过了。
在介绍清除方法之前,我们先来简单的介绍一下svchost.exe这个系统的关键服务:
Svchost只是做为服务的宿主,本身并不实现什么功能,如果需要使用Svchost来启动服务,则某个服务是以DLL形式实现的,该DLL的载体Loader指向svchost,所以,在启动服务的时候由svchost调用该服务的DLL来实现启动的目的。使用svchost启动某个服务的DLL文件是由注册表中的参数来决定的,在需要启动服务的下边都有一个Parameters子键,其中的ServiceDll表明该服务由哪个DLL文件负责,并且这个DLL文件必须导出一个ServiceMain()函数,为处理服务任务提供支持。
呵呵!看了上边的理论,是不是有点蒙(我都快睡着了),别着急,我们来看看具体的内容(如图1)。从图1中,我们可以看到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcSs下的Parameters子键,其键值为%SystemRoot%\system32\rpcss.dll。这就说明:启动RpcSs服务时。Svchost调用WINNT\system32目录下的rpcss.dll。
在来看看图2,这是注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost,里边存放着Svchost启动的组和组内的各个服务,其中netsvcs组的服务最多。要使用Svchost启动某个服务,则该服务名就会出现在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost下。这里有四种方法来实现:
1, 添加一个新的组,在组里添加服务名
2, 在现有组里添加服务名
3, 直接使用现有组里的一个服务名,但是本机没有安装的服务
4, 修改现有组里的现有服务,把它的ServiceDll指向自己的DLL后门
我测试的PortLess BackDoor使用的第三种方法。
好了,我想大家看完了上边的原理,一定可以想到我们清除PortLess BackDoor的方法了,对,就是在注册表的Svchost键下做文章。好,我们现在开始。
注:由于本文只是介绍清除方法,使用方法在此略过。
后门的Loader把SvchostDLL.dll插入Svchost进程当中,所以,我们先打开Windows优化大师中的Windows进程管理2.5,查看Svchost进程中的模块信息(如图3),从图3中我们可以看到,SvchostDLL.dll已经插入到Svchost进程中了,在根据"直接使用现有组里的一个服务名,但是本机没有安装的服务"的提示,我们可以断定,在"管理工具"—"服务"中会有一项新的服务。图4证明了我的说法,此服务名称为:IPRIP,由Svchost启动,-k netsvcs表示此服务包含在netsvcs服务组中。
我们把该服务停掉,然后打开注册表编辑器(开始—运行--regedit),来到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPRIP下,查看其Parameters子键(如图5)。Program键的键值SvcHostDLL.exe为后门的Loader;ServiceDll的键值C:\WINNT\system32\svchostdll.dll为调用的DLL文件,这正是后门的DLL文件。现在我们删除IPRIP子键(或者用SC来删除),然后在来到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost下,编辑netsvcs服务组,把49 00 70 00 72 00 69 00 70 00 00 00删除,这里对应的就是IPRIP的服务名,具体如图6所示。然后退出,重启。重启之后删除WINNT\system32目录下的后门文件即可。
2,BITS.dll
这是榕哥的作品,也是DLL后门,和SvchostDLL.dll原理基本一样,不过这里使用的是上边介绍的第四种方法,即"修改现有组里的现有服务,把它的ServiceDll指向自己的DLL后门"。换句话说,该后门修改现有的某一个服务,把其原有服务的DLL指向自己(也就是BITS.dll),这样就达到了自动加载的目的;其次,该后门没有自己的Loader,而是使用系统自带的Rundll32.exe来加载。我们还是用Windows 进程管理2.5来查看,从图7中,我们可以看到bits.dll已经插入到Svchost进程当中。
好,现在我们来看看具体的清除方法,由于该后门是修改现有服务,而我们并不知道具体是修改了哪个服务,所以,在注册表中搜索bits.dll,最后在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasAuto下搜索到了bits.dll,查看Parameters子键下的ServiceDll,其键值为C:\WINNT\system32\bits.dll(如图8)。原来,该后门把RasAuto服务原来的DLL文件替换为bits.dll了,这样来实现自动加载。知道了原因就好办了,现在我们把ServiceDll的键值修改为RasAuto服务原有的DLL文件,即%SystemRoot%\System32\rasauto.dll,退出,重启。之后删除WINNT\system32目录下的bits.dll即可。
3,NOIR--QUEEN
NOIR--QUEEN(守护者)是一个DLL后门&木马程序,服务端以DLL文件的形式插入到系统的Lsass.exe进程里,由于Lsass.exe是系统的关键进程,所以不能终止。在来介绍清除方法之前,我先介绍一下Lsass.exe进程:
这是一个本地的安全授权服务,并且它会为使用Winlogon服务的授权用户生成一个进程,如果授权是成功的,Lsass就会产生用户的进入令牌,令牌使用启动初始 的Shell。其他的由用户初始化的进程会继承这个令牌。
从上边的介绍我们就可以看出Lsass对系统的重要性,那具体怎么清除呢?请看下文。
后门在安装成功后,会在服务中添加一个名为QoSserver的服务,并把QoSserver.dll后门文件插入到Lsass进程当中,使其可以隐藏进程并自动启动(如图9)。现在我们打开注册表,来到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\QoSserver,直接删除QoSserver键,然后重启。重启之后,我们在来到服务列表中,会看到QoSserver服务还在,但没有启动,类别是自动,我们把他修改为"已禁用";然后往上看,会发现一个服务名为AppCPI的服务,其可执行程序指向QoSserver.exe(原因后边我会说到),具体如图11所示。我们再次打开注册表,来到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AppCPI,删除AppCPI键,重启,再删除QoSserver,最后删除WINNT\system32目录下的后门文件。
本人和这个后门"搏斗"了3个多小时,重启N次。原因在于即使删除了QoSserver服务,后门还是在运行,而且服务列表中的QoSserver服务又"死灰复燃"。后来才知道原因:在我删除了QoSserver服务并重启之后,插入到Lsass进程当中的QoSserver.dll文件又恢复了QoSserver服务,并且生成了另外一个服务,即AppCPI,所以我们必须在到注册表中删除AppCPI服务才算是把该后门清除。由此可以看出,现在的后门的保护措施,真是一环扣环。
注意:在删除QoSserver服务并重启之后,恢复的QoSserver的启动类别要修改为"已禁用",否则即便删除了AppCPI服务,QoSserver服务又运行了。
三,DLL的防范
看了上边的例子,我想大家对清除DLL后门的方法有了一定的了解,但在现实中,DLL后门并不会使用默认的文件名,所以你也就不能肯定是否中了DLL后门。对于DLL后门,system32目录下是个好地方,大多数后门也是如此,所以这里要非常注意。下面我来具体介绍一下怎么发现DLL后门,希望对大家有所帮助。
1,安装好系统和所有的应用程序之后,备份system32目录下的EXE和DLL文件:打开CMD,来到WINNT\system32目录下,执行:dir *.exe>exe.txt & dir *.dll>dll.txt,这样,就会把所有的EXE和DLL文件备份到exe.txt和dll.txt文件中;日后,如发现异常,可以使用相同的命令再次备份EXE和DLL文件(这里我们假设是exe0.txt和dll0.txt),并使用:fc exe.txt exe0.txt>exedll.txt & fc dll.txt dll0.txt>exedll.txt,其意思为使用FC命令比较两次的EXE文件和DLL文件,并将比较结果保存到exedll.txt文件中。通过这种方法,我们就可以发现多出来的EXE和DLL文件,并通过文件大小,创建时间来判断是否是DLL后门。
2,使用内存/模块工具来查看进程调用的DLL文件,比如Windows优化大师中的Windows 进程管理 2.5。这样,可以发现进程到底调用了什么DLL文件,在结合上边用FC命令比较出来的结果,又能进一步来确定是否中了DLL后门。如果没有优化大师,可以使用TaskList,这个小工具也可以显示进程调用的DLL文件,而且还有源代码,方便修改。
3,普通后门连接需要打开特定的端口,DLL后门也不例外,不管它怎么隐藏,连接的时候都需要打开端口。我们可以用netstat -an来查看所有TCP/UDP端口的连接,以发现非法连接。大家平时要对自己打开的端口心中有数,并对netstat -an中的state属性有所了解。当然,也可以使用Fport来显示端口对应的进程,这样,系统有什么不明的连接和端口,都可以尽收眼底。
4,定期检查系统自动加载的地方,比如:注册表,Winstart.bat,Autoexec.bat,win.ini,system.ini,wininit.ini,Autorun.inf,Config.sys等。其次是对服务进行管理,对系统默认的服务要有所了解,在发现有问题的服务时,可以使用Windows 2000 Server Resource Kit中的SC来删除。以上这些地方都可以用来加载DLL后门的Loader,如果我们把DLL后门Loader删除了,试问?DLL后门还怎么运行?!
后门!相信这个词语对您来说一定不会陌生,它的危害不然而欲,但随着人们的安全意识逐步增强,又加上杀毒软件的"大力支持",使传统的后门无法在隐藏自己,任何稍微有点计算机知识的人,都知道"查端口""看进程",以便发现一些"蛛丝马迹"。所以,后门的编写者及时调整了思路,把目光放到了动态链接程序库上,也就是说,把后门做成DLL文件,然后由某一个EXE做为载体,或者使用Rundll32.exe来启动,这样就不会有进程,不开端口等特点,也就实现了进程、端口的隐藏。本文以"DLL的原理""DLL的清除""DLL的防范"为主题,并展开论述,旨在能让大家对DLL后门"快速上手",不在恐惧DLL后门。好了,进入我们的主题。
一,DLL的原理
1,动态链接程序库
动态链接程序库,全称:Dynamic Link Library,简称:DLL,作用在于为应用程序提供扩展功能。应用程序想要调用DLL文件,需要跟其进行"动态链接";从编程的角度,应用程序需要知道DLL文件导出的API函数方可调用。由此可见,DLL文件本身并不可以运行,需要应用程序调用。正因为DLL文件运行时必须插入到应用程序的内存模块当中,这就说明了:DLL文件无法删除。这是由于Windows内部机制造成的:正在运行的程序不能关闭。所以,DLL后门由此而生!
2,DLL后门原理及特点
把一个实现了后门功能的代码写成一个DLL文件,然后插入到一个EXE文件当中,使其可以执行,这样就不需要占用进程,也就没有相对应的PID号,也就可以在任务管理器中隐藏。DLL文件本身和EXE文件相差不大,但必须使用程序(EXE)调用才能执行DLL文件。DLL文件的执行,需要EXE文件加载,但EXE想要加载DLL文件,需要知道一个DLL文件的入口函数(既DLL文件的导出函数),所以,根据DLL文件的编写标准:EXE必须执行DLL文件中的DLLMain()作为加载的条件(如同EXE的mian())。做DLL后门基本分为两种:1)把所有功能都在DLL文件中实现;2)把DLL做成一个启动文件,在需要的时候启动一个普通的EXE后门。
常见的编写方法:
(1),只有一个DLL文件
这类后门很简单,只把自己做成一个DLL文件,在注册表Run键值或其他可以被系统自动加载的地方,使用Rundll32.exe来自动启动。Rundll32.exe是什么?顾名思意,"执行32位的DLL文件"。它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有Rundll32.exe,而不会有DLL后门的进程,这样,就实现了进程上的隐藏。如果看到系统中有多个Rundll32.exe,不必惊慌,这证明用Rundll32.exe启动了多少个的DLL文件。当然,这些Rundll32.exe执行的DLL文件是什么,我们都可以从系统自动加载的地方找到。
现在,我来介绍一下Rundll32.exe这个文件,意思上边已经说过,功能就是以命令行的方式调用动态链接程序库。系统中还有一个Rundll.exe文件,他的意思是"执行16位的DLL文件",这里要注意一下。在来看看Rundll32.exe使用的函数原型:
Void CALLBACK FunctionName (
HWND hwnd,
HINSTANCE hinst,
LPTSTR lpCmdLine,
Int nCmdShow
);
其命令行下的使用方法为:Rundll32.exe DLLname,Functionname [Arguments]
DLLname为需要执行的DLL文件名;Functionname为前边需要执行的DLL文件的具体引出函数;[Arguments]为引出函数的具体参数。
(2),替换系统中的DLL文件
这类后门就比上边的先进了一些,它把实现了后门功能的代码做成一个和系统匹配的DLL文件,并把原来的DLL文件改名。遇到应用程序请求原来的DLL文件时, DLL后门就启一个转发的作用,把"参数"传递给原来的DLL文件;如果遇到特殊的请求时(比如客户端),DLL后门就开始,启动并运行了。对于这类后门,把所有操作都在DLL文件中实现最为安全,但需要的编程知识也非常多,也非常不容易编写。所以,这类后门一般都是把DLL文件做成一个"启动"文件,在遇到特殊的情况下(比如客户端的请求),就启动一个普通的EXE后门;在客户端结束连接之后,把EXE后门停止,然后DLL文件进入"休息"状态,在下次客户端连接之前,都不会启动。但随着微软的"数字签名"和"文件恢复"的功能出台,这种后门已经逐步衰落。
提示:
在WINNT\system32目录下,有一个dllcache文件夹,里边存放着众多DLL文件(也包括一些重要的EXE文件),在DLL文件被非法修改之后,系统就从这里来恢复被修改的DLL文件。如果要修改某个DLL文件,首先应该把dllcache目录下的同名DLL文件删除或更名,否则系统会自动恢复。
(3),动态嵌入式
这才是DLL后门最常用的方法。其意义是将DLL文件嵌入到正在运行的系统进程当中。在Windows系统中,每个进程都有自己的私有内存空间,但还是有种种方法来进入其进程的私有内存空间,来实现动态嵌入式。由于系统的关键进程是不能终止的,所以这类后门非常隐蔽,查杀也非常困难。常见的动态嵌入式有:"挂接API""全局钩子(HOOK)""远程线程"等。
远程线程技术指的是通过在一个进程中创建远程线程的方法来进入那个进程的内存地址空间。当EXE载体(或Rundll32.exe)在那个被插入的进程里创建了远程线程,并命令它执行某个DLL文件时,我们的DLL后门就挂上去执行了,这里不会产生新的进程,要想让DLL后门停止,只有让这个链接DLL后门的进程终止。但如果和某些系统的关键进程链接,那就不能终止了,如果你终止了系统进程,那Windows也随即被终止!!!
3,DLL后门的启动特性
启动DLL后门的载体EXE是不可缺少的,也是非常重要的,它被称为:Loader。如果没有Loader,那我们的DLL后门如何启动呢?因此,一个好的DLL后门会尽力保护自己的Loader不被查杀。Loader的方式有很多,可以是为我们的DLL后门而专门编写的一个EXE文件;也可以是系统自带的Rundll32.exe,即使停止了Rundll32.exe,DLL后门的主体还是存在的。3721网络实名就是一个例子,虽然它并不是"真正"的后门。
二,DLL的清除
本节以三款比较有名的DLL后门例,分别为"SvchostDLL.dll""BITS.dll""QoServer.dll"。详细讲解其手工清除方法。希望大家在看过这三款DLL后门的清除方法之后,能够举一反三,灵活运用,在不惧怕DLL后门。其实,手工清除DLL后门还是比较简单的,无非就是在注册表中做文章。具体怎么做,请看下文。
1,PortLess BackDoor
这是一款功能非常强大的DLL后门程序,除了可以获得Local System权限的Shell之外,还支持如"检测克隆帐户""安装终端服务"等一系列功能(具体可以参见程序帮助),适用Windows2000/xp/2003等系统。程序使用svchost.exe来启动,平常不开端口,可以进行反向连接(最大的特点哦),对于有防火墙的主机来说,这个功能在好不过了。
在介绍清除方法之前,我们先来简单的介绍一下svchost.exe这个系统的关键服务:
Svchost只是做为服务的宿主,本身并不实现什么功能,如果需要使用Svchost来启动服务,则某个服务是以DLL形式实现的,该DLL的载体Loader指向svchost,所以,在启动服务的时候由svchost调用该服务的DLL来实现启动的目的。使用svchost启动某个服务的DLL文件是由注册表中的参数来决定的,在需要启动服务的下边都有一个Parameters子键,其中的ServiceDll表明该服务由哪个DLL文件负责,并且这个DLL文件必须导出一个ServiceMain()函数,为处理服务任务提供支持。
呵呵!看了上边的理论,是不是有点蒙(我都快睡着了),别着急,我们来看看具体的内容(如图1)。从图1中,我们可以看到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcSs下的Parameters子键,其键值为%SystemRoot%\system32\rpcss.dll。这就说明:启动RpcSs服务时。Svchost调用WINNT\system32目录下的rpcss.dll。
在来看看图2,这是注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost,里边存放着Svchost启动的组和组内的各个服务,其中netsvcs组的服务最多。要使用Svchost启动某个服务,则该服务名就会出现在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost下。这里有四种方法来实现:
1, 添加一个新的组,在组里添加服务名
2, 在现有组里添加服务名
3, 直接使用现有组里的一个服务名,但是本机没有安装的服务
4, 修改现有组里的现有服务,把它的ServiceDll指向自己的DLL后门
我测试的PortLess BackDoor使用的第三种方法。
好了,我想大家看完了上边的原理,一定可以想到我们清除PortLess BackDoor的方法了,对,就是在注册表的Svchost键下做文章。好,我们现在开始。
注:由于本文只是介绍清除方法,使用方法在此略过。
后门的Loader把SvchostDLL.dll插入Svchost进程当中,所以,我们先打开Windows优化大师中的Windows进程管理2.5,查看Svchost进程中的模块信息(如图3),从图3中我们可以看到,SvchostDLL.dll已经插入到Svchost进程中了,在根据"直接使用现有组里的一个服务名,但是本机没有安装的服务"的提示,我们可以断定,在"管理工具"—"服务"中会有一项新的服务。图4证明了我的说法,此服务名称为:IPRIP,由Svchost启动,-k netsvcs表示此服务包含在netsvcs服务组中。
我们把该服务停掉,然后打开注册表编辑器(开始—运行--regedit),来到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPRIP下,查看其Parameters子键(如图5)。Program键的键值SvcHostDLL.exe为后门的Loader;ServiceDll的键值C:\WINNT\system32\svchostdll.dll为调用的DLL文件,这正是后门的DLL文件。现在我们删除IPRIP子键(或者用SC来删除),然后在来到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost下,编辑netsvcs服务组,把49 00 70 00 72 00 69 00 70 00 00 00删除,这里对应的就是IPRIP的服务名,具体如图6所示。然后退出,重启。重启之后删除WINNT\system32目录下的后门文件即可。
2,BITS.dll
这是榕哥的作品,也是DLL后门,和SvchostDLL.dll原理基本一样,不过这里使用的是上边介绍的第四种方法,即"修改现有组里的现有服务,把它的ServiceDll指向自己的DLL后门"。换句话说,该后门修改现有的某一个服务,把其原有服务的DLL指向自己(也就是BITS.dll),这样就达到了自动加载的目的;其次,该后门没有自己的Loader,而是使用系统自带的Rundll32.exe来加载。我们还是用Windows 进程管理2.5来查看,从图7中,我们可以看到bits.dll已经插入到Svchost进程当中。
好,现在我们来看看具体的清除方法,由于该后门是修改现有服务,而我们并不知道具体是修改了哪个服务,所以,在注册表中搜索bits.dll,最后在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasAuto下搜索到了bits.dll,查看Parameters子键下的ServiceDll,其键值为C:\WINNT\system32\bits.dll(如图8)。原来,该后门把RasAuto服务原来的DLL文件替换为bits.dll了,这样来实现自动加载。知道了原因就好办了,现在我们把ServiceDll的键值修改为RasAuto服务原有的DLL文件,即%SystemRoot%\System32\rasauto.dll,退出,重启。之后删除WINNT\system32目录下的bits.dll即可。
3,NOIR--QUEEN
NOIR--QUEEN(守护者)是一个DLL后门&木马程序,服务端以DLL文件的形式插入到系统的Lsass.exe进程里,由于Lsass.exe是系统的关键进程,所以不能终止。在来介绍清除方法之前,我先介绍一下Lsass.exe进程:
这是一个本地的安全授权服务,并且它会为使用Winlogon服务的授权用户生成一个进程,如果授权是成功的,Lsass就会产生用户的进入令牌,令牌使用启动初始 的Shell。其他的由用户初始化的进程会继承这个令牌。
从上边的介绍我们就可以看出Lsass对系统的重要性,那具体怎么清除呢?请看下文。
后门在安装成功后,会在服务中添加一个名为QoSserver的服务,并把QoSserver.dll后门文件插入到Lsass进程当中,使其可以隐藏进程并自动启动(如图9)。现在我们打开注册表,来到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\QoSserver,直接删除QoSserver键,然后重启。重启之后,我们在来到服务列表中,会看到QoSserver服务还在,但没有启动,类别是自动,我们把他修改为"已禁用";然后往上看,会发现一个服务名为AppCPI的服务,其可执行程序指向QoSserver.exe(原因后边我会说到),具体如图11所示。我们再次打开注册表,来到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AppCPI,删除AppCPI键,重启,再删除QoSserver,最后删除WINNT\system32目录下的后门文件。
本人和这个后门"搏斗"了3个多小时,重启N次。原因在于即使删除了QoSserver服务,后门还是在运行,而且服务列表中的QoSserver服务又"死灰复燃"。后来才知道原因:在我删除了QoSserver服务并重启之后,插入到Lsass进程当中的QoSserver.dll文件又恢复了QoSserver服务,并且生成了另外一个服务,即AppCPI,所以我们必须在到注册表中删除AppCPI服务才算是把该后门清除。由此可以看出,现在的后门的保护措施,真是一环扣环。
注意:在删除QoSserver服务并重启之后,恢复的QoSserver的启动类别要修改为"已禁用",否则即便删除了AppCPI服务,QoSserver服务又运行了。
三,DLL的防范
看了上边的例子,我想大家对清除DLL后门的方法有了一定的了解,但在现实中,DLL后门并不会使用默认的文件名,所以你也就不能肯定是否中了DLL后门。对于DLL后门,system32目录下是个好地方,大多数后门也是如此,所以这里要非常注意。下面我来具体介绍一下怎么发现DLL后门,希望对大家有所帮助。
1,安装好系统和所有的应用程序之后,备份system32目录下的EXE和DLL文件:打开CMD,来到WINNT\system32目录下,执行:dir *.exe>exe.txt & dir *.dll>dll.txt,这样,就会把所有的EXE和DLL文件备份到exe.txt和dll.txt文件中;日后,如发现异常,可以使用相同的命令再次备份EXE和DLL文件(这里我们假设是exe0.txt和dll0.txt),并使用:fc exe.txt exe0.txt>exedll.txt & fc dll.txt dll0.txt>exedll.txt,其意思为使用FC命令比较两次的EXE文件和DLL文件,并将比较结果保存到exedll.txt文件中。通过这种方法,我们就可以发现多出来的EXE和DLL文件,并通过文件大小,创建时间来判断是否是DLL后门。
2,使用内存/模块工具来查看进程调用的DLL文件,比如Windows优化大师中的Windows 进程管理 2.5。这样,可以发现进程到底调用了什么DLL文件,在结合上边用FC命令比较出来的结果,又能进一步来确定是否中了DLL后门。如果没有优化大师,可以使用TaskList,这个小工具也可以显示进程调用的DLL文件,而且还有源代码,方便修改。
3,普通后门连接需要打开特定的端口,DLL后门也不例外,不管它怎么隐藏,连接的时候都需要打开端口。我们可以用netstat -an来查看所有TCP/UDP端口的连接,以发现非法连接。大家平时要对自己打开的端口心中有数,并对netstat -an中的state属性有所了解。当然,也可以使用Fport来显示端口对应的进程,这样,系统有什么不明的连接和端口,都可以尽收眼底。
4,定期检查系统自动加载的地方,比如:注册表,Winstart.bat,Autoexec.bat,win.ini,system.ini,wininit.ini,Autorun.inf,Config.sys等。其次是对服务进行管理,对系统默认的服务要有所了解,在发现有问题的服务时,可以使用Windows 2000 Server Resource Kit中的SC来删除。以上这些地方都可以用来加载DLL后门的Loader,如果我们把DLL后门Loader删除了,试问?DLL后门还怎么运行?!
这里和大家分享和学习如何学IT!