当前位置: 首页 > 图文教程 > 网络安全 > 安全基础 > Rundll.exe是病毒吗?

安全基础
黑客攻击行为的特征分析及反攻击技术
Windows 2000中隐患重重的十大“服务”
网页脚本攻击防范全攻略
防患于未然 轻松做好Windows 2000安全策略
用注册表为操作系统砌九堵安全墙
完善网站程序 脚本攻击防范策略完全篇
两步修改XP远程管理默认端口可防止入侵
消除Windows XP自身的安全隐患
保护Windows不受恶意代码攻击
如何关闭和限制电脑不用的端口
修改Windows 2000远程终端默认端口
操作系统被入侵后的修复过程
利用微软基准安全分析器打造你安全的系统
数字签名技术简介
检测和删除系统中的木马
QQ密码破解程序
P2P中保障Windows网络安全
在代码中查找安全性缺陷的专家提示
QQ安全的三大纪律八项注意
如何保证文件夹的绝对安全

安全基础 中的 Rundll.exe是病毒吗?


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 157 ::
收藏到网摘: n/a

经常听到有些朋友说:呀!系统的注册表启动项目有rundll32.exe,系统进程也有rundll32.exe,是不是病毒呀?其实,这是对rundll32.exe接口不了解,它的原理非常简单,了解并掌握其原理对于我们平时的应用非常有用,如果能理解了原理,我们就能活学活用,自己挖掘DLL参数应用技巧。

    Rundll32.exe和Rundll.exe的区别

    所谓Rundll.exe,可以把它分成两部分,Run(运行)和DLL(动态数据库),所以,此程序的功能是运行那些不能作为程序单独运行的DLL文件。而Rundll32.exe则用来运行32位DLL文件。Windows 2000/XP都是NT内核系统,其代码都是纯32位的,所以在这两个系统中,就没有rundll.exe这个程序。

    相反,Windows 98代码夹杂着16位和32位,所以同时具有Rundll32.exe和Rundll.exe两个程序。这就是为什么Windows 98的System文件夹为主系统文件夹,而到了Windows 2000/XP时就变成System32为主系统文件夹(这时的System文件夹是为兼容16位代码设立的)。

    Rundll.exe是病毒?

    无论是Rundll32.exe或Rundll.exe,独立运行都是毫无作用的,要在程序后面指定加载DLL文件。在Windows的任务管理器中,我们只能看到rundll32.exe进程,而其实质是调用的DLL。我们可以利用进程管理器等软件(本刊2004年21期有介绍)来查看它具体运行了哪些DLL文件。

    有些木马是利用Rundll32.exe加载DLL形式运行的,但大多数情况下Rundll32.exe都是加载系统的DLL文件,不用太担心。另外要提起的是,有些病毒木马利用名字与系统常见进程相似或相同特点,瞒骗用户。所以,要确定所运行的Rundll32.exe是在%systemroot%\system32目录下的,注意文件名称也没有变化。

    高手是如何获得参数的?

    相信大家在论坛上很常看见那些高手给出的一些参数来简化操作,如rundll32.exe shell32.dll,Control_RunDLL,取代了冗长的“开始→设置→控制面板”,作为菜鸟的我们心里一定痒痒的。他们是怎么知道答案的?我们如何自己找到答案?分析上面命令可以知道,其实就是运行Rundll32.exe程序,指定它加载shell32.dll文件,而逗号后面的则是这个DLL的参数。了解了其原理,下面就可以自己挖掘出很多平时罕为人知的参数了。

    第一步:运行eXeScope软件,打开一个某个DLL文件,例如shell32.dll。

    第二步:选择“导出→SHELL32.DLL”,在右边窗口就可以看到此DLL文件的参数了(见图)。



    第三步:这些参数的作用一般可以从字面上得知,所以不用专业知识。要注意的是,参数是区分大小写的,在运行时一定要正确输入,否则会出错。现在随便找一个参数,例如RestartDialog,从字面上理解应该是重启对话框。组合成一个命令,就是Rundll32.exe shell32.dll,RestartDialog ,运行后可以看见平时熟悉的Windows重启对话框。

    现在,我们已经学会了利用反编译软件来获取DLL文件中的参数,所以以后看到别人的一个命令,可以从调用的DLL文件中获取更多的命令。自己摸索,你就能了解更多调用DLL文件的参数了。

    小资料

    常用的rundll32参数
    命令: rundll32.exe shell32.dll,Control_RunDLL
    功能: 显示控制面板

    命令: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1
    功能: 显示“控制面板→辅助选项→键盘”

    命令: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1
    功能: 执行“控制面板→添加新硬件”

    命令: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter
    功能: 执行“控制面板→添加新打印机”

    命令:rundll32.exe DISKCOPY.DLL,DiskCopyRunDll
    功能:启动软盘复制窗口