CODERED.C
由于Microsoft公司Windows NT和2000中的Index Service服务与其IIS服务间的接口程序-Indexing Service ISAPI中含有一个"缓冲区溢出"漏洞,致使黑客可以向IIS发出一段恶意请求,导致受攻击系统的缓冲区溢出,从而使攻击者获得对系统的完全控制权限。CodeRedII病毒正是利用该系统漏洞来对系统进行攻击。
CODERED.C只能对安装有IIS服务的Windows 2000系统产生长期有效的病毒攻击行为,而对于WindowsNT系统,它将直接导致系统的崩溃。
该蠕虫在系统内存中搜索KERNEL32.DLL 的位置, 然后找到GetProcAddress API。同时它也搜索其它所需使用到的API 或程序。所需的库文件名称为:
WS2_32.DLL - Winsock V 2.0
ADVAPI32.DLL - 用来操纵系统注册表
USER32.DLL - 用来使系统重启和其它的一些功能
接着该蠕虫会将 %windir%CMD.EXE 文件复制到以下路径:
C:INETPUBSCRIPTSROOT.EXE
C:PROGRA~1COMMON~1SYSTEMMSADCROOT.EXE
D:INETPUBSCRIPTSROOT.EXE
D:PROGRA~1COMMON~1SYSTEMMSADCROOT.EXE
然后病毒在根目录下释放一个木马程序 - EXPLORER.EXE 文件(Trend Micro的防毒产品将该文件命名为TROJ_CODERED.C),如C:EXPLORER.EXE。
该木马程序将使攻击者享有对系统的完全控制权限。因为系统将优先执行根目录下的EXPLORER.EXE,而非系统本身的EXPLORER.EXE。
同时该蠕虫会修改注册表内的键值以废除登录时系统的安全保护:
HKLMSoftware/MicrosoftWindows NT
Current VersionWinLogonSFCDisable
并且创建以下的注册键:
HKLMSYSTEMCurrentControlSetServices
W3SVCParametersVirtual Roots
/Scripts = %rootdir%inetpubscripts,,204
/MSADC = %rootdir%program filescommon filessystemmsadc,,205
/C = C:,,217
/D = D:,,217
该蠕虫还会检查系统当前的时间,如果发现系统年份大于2002年或是月份大于10月,将强行使系统重新启动。重启后的系统内该蠕虫本身将不再存在,但是其释放的木马程序却一直在运行中。当然,如果系统未安装Microsoft提供的漏洞修补程序,系统随时都会受到又一次的攻击