|
Trojan.Generic.rnn 病毒是一个被感染的系统DLL文件,里面被修改了原本的功能,DLL默认的功能是系统lpk.dll的文件,被修改后只保留了其导出表部分是原本dll信息,这是为了防止其他程序加载的时候出现异常,导致系统崩溃。感染lpk后,会在lpk.dll里写入资源文件,资源文件为可执行文件。
病毒描述病毒名称 : Trojan.Generic.rnn文件MD5 : 6781b0be83d99c66eb95b4750db10f6b文件大小 : 77,312 字节 编写环境 : C++是否加壳 : 无文档公开级别 : 完全公开病毒执行体描述: Trojan.Generic.rnn 病毒是一个被感染的系统DLL文件,里面被修改了原本的功能,DLL默认的功能是系统lpk.dll的文件,被修改后只保留了其导出表部分是原本dll信息,这是为了防止其他程序加载的时候出现异常,导致系统崩溃。感染lpk后,会在lpk.dll里写入资源文件,资源文件为可执行文件。 当Trojan.Generic.rnn被加载时,首先会检测当前名称是否为"lpk.dll",如果不是则从资源中释放出可执行宿主程序,到临时目录"temp"中,并立即运行。可执行文件执行后进行系统服务的添加,并连接网络下载其他病毒至本地计算机,破坏用户系统安全。病毒行为流程分析:一、Trojan.Generic.rnn 病毒其自身不会执行,需要其他可执行程序自动调用完成。系统感染之后,会在每个可执行文件的当前目录存放一个lpk.dll被感染的文件,当可执行文件运行后,会自动优先加载当前目录下的lpk.dll运行。二、Trojan.Generic.rnn初次执行会检测自身的名称是否是lpk.dll,若不是从资源中加载其宿主执行文件到"temp"目录中,并立即创建进程运行。Dll自身防止多重加载则创建互斥体"Nationalpmm", 当相同一个进程两次加载lpk.dll时,第二次则会跳过相关环境的搭建。三、Trojan.Generic.rnn 释放的文件在"temp"目录中运行后,会在系统服务器中添加一个服务项,先将自身复制到"c:windowssystem32"目录下,重新命名文件为xxx.exe(xxx为系统时间),调用系统API函数添加服务名称为"Nationalpmm",服务文件名为"c:windowssystem32tsqse.exe",文件名称为随机名称,每次加载服务名称都不会变。完成环境的搭建以后则进行服务启动。四、当服务启动的时候会创建傀儡进程来完成其他病毒的下载,Svchosts.exe创建时候就把它挂起。然后得到它的装载基址,使用函数ZwUnmapViewOfSection来卸载这个这个基址内存空间的数据,。再用VirtualAllocEx来个Svchosts.exe进程重新分配内存空间,大小为要注入程序的大小(就是自身的imagesize)。使用WriteProcessMemory重新写Svchosts,.exe进程的基址,就是刚才分配的内存空间的地址。再用WriteProcessMemory把自己的代码写入Svchosts,.exe的内存空间。用SetThreadContext设置下进程状态,最后使用ResumeThread继续运行Svchosts,.exe进程。五、Svchosts.exe的功能完成后自动退出,Svchosts.exe功能遍历当前磁盘的可执行文件,并在可执行文件当前目录释放隐藏的lpk.dll感染文件,保证病毒自身不会被查杀。并且调用UrldownLoadTofile 连接网站并下载其他病毒程序。病毒技术要点 Trojan.Generic.rnn 对系统具有破坏性,感染的文件和程序在运行过程中会不断自我复制,自我检测,并且一个宿主文件里写了多种用途,自身可执行,并可添加至服务中继续运行,模块可以供其他程序调用,防止查杀,对抗杀毒部分使用傀儡创建"Svchosts.exe"进行寄生,混淆杀软检测,感染EXE的是 相同目录下的lpk.dll的劫持,对EXE文件没有进行修改,比较隐蔽的感染系统。病毒清理流程1.所有进程中扫描Lpk.dll(感染劫持文件), 内存特征.卸载内存镜象;2.查找HKLMSYSTEMControlSet001ControlSession Manager键值 PendingFileRenameOperations, 清空;3.服务Distribukhq, 找到并删除,删除服务的执行体文件.可在HKLMSYSTEMControlSet001ServicesNationalpmm 下ImagePath中看见路径;4.删除local settingTemp 目录中Hrxx.tmp 删除. 查找windowstemp目录下,查找hrxx.tmp 并删除;5.遍利所有盘符目录中查找lpk.dll ,其文件属性为系统属性,只读隐藏属性,找到清除;
|
|