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

安全基础
正常关机后光电鼠标仍发光怎么解决
金山安全反病毒专家教你认识和安装系统补丁
微软IE团队成员揭秘中国网银不兼容非IE浏览器的原因
防火墙端口扫描和路径追踪设置防黑客入侵
压缩包里的压缩文件加上缩略图的方法
拒绝修改exe文件关联随EXE程序启动的木马
保护硬盘隐私数据防止黑客窃取的操作小方法
开机按F1故障怎么解决(新手学电脑)
实用技巧:自定义软件安装的默认路径
快速打开控制面板中的某一项目
避免网购被骗 揭秘网络钓鱼的9种骗术
删不掉文件的原因和辅助删除的软件工具
隐藏的系统克隆帐户全了解
剖析DDOS攻击的原理 提供解决方法
360安全卫士完美帮你系统打补丁
桌面多出几个IE图标有的不能删除怎么办
加载*dll出错,系统找不到指定的模块
如何揪出并根除Windows系统启动项
菜鸟防止黑客攻击的10个系统设置方法
新手学电脑:宽带拨号的设置方法

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 128 ::
收藏到网摘: 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
    功能:启动软盘复制窗口