不常见的自启动方式,杀毒软件也很难查出!!!

C++ 客户端程序 专栏收录该内容
81 篇文章 0 订阅
这里就说些不常见的启动
很多系统工具 也很难查得出来的


一: 注册表相关

===============================================

有部分程序可以将自身在注册表加载的位置进行隐藏,常见的操作有两种方式:
1、对指定的注册表分支、键值设置权限(Acls)导致当前用户无权查看这些分支、键值的内容,自然无法获取病毒信息了。

2、使用超长的分支、键值名字,让注册表程序无法正常显示这些内容。

在XP/2K中存在一个长字符串缺陷:

有部分恶意程序还能破坏注册表某些键值的设定工作,比如将正常的REG_DWORD键值删除,伪造一个图标样式(键值显示有两种图标)的不是REG_DWORD的键值,这样原来的设置就不能读到正确格式的键值,也就不能正常工作了。

==================================
1、Load注册键

介绍该注册键的资料不多,实际上它也能够自动启动程序,位置:HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\Current Version\Windows

建一个字符串名为load键值,为自启动程序的路径但是要注意短文件名规则,如c:\program files 应为c:\progra~1,这种方式用优化大师看不到。

据说建立run=键值也是可行的,需要注意没有测试过。

其实应该是windows.ini,和system.ini两个文件对应的run。不过好像在98有用把,具体就不多累赘,
至今没发现过这类病毒加载到这里面的,估计是没什么用处吧,不过提下也无妨。



2、Winlogon\Userinit注册键
存放位置:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

找到“Userinit”这个键值,这个键值默认为c:\WINNT\system32\userinit.exe,后面加逗号,再加路径。这里也能够使系统启动时自动初始化程序。通常该注册键下面有一个userinit.exe,但这个键允许指定用逗号分隔的多个程序,例如“userinit.exe,vitas.exe”(不含引号)。


注意下面的Notify、Shell键值也会有自启动的程序,而且其键值可以用逗号分隔,从而实现登录的时候启动多个程序。


3、Explorer\Run注册键

和load、Userinit不同,Run键在HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE下都有,具体位置是:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run。


------------------------------
(下面4--7其实也很常见了,不过提出来,因为部分管理员还是会忽视这几个地方的。)

4、RunServicesOnce注册键

RunServicesOnce注册键用来启动服务程序,启动时间在用户登录之前,而且先于其他通过注册键启动的程序,RunServicesOnce注册键的位置是:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce。


5、RunServices注册键

RunServices指定的程序紧接RunServicesOnce指定的程序后运行,两者都在用户登录之前,位置是:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersionRunServices;

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices。


6、RunOnceSetup注册键

RunOnceSetup指定了用户登录之后运行的程序,它的位置是:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnceSetup;

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceSetup。


7、RunOnce注册键

安装程序通常用RunOnce键自动运行程序,它的位置在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce。


HKEY_LOCAL_MACHINE下面的RunOnce键会在用户登录之后立即运行程序,运行时间在其他Run键指定的程序之前。HKEY_CURRENT_USER下面的RunOnce键在操作系统处理其他Run键以及“启动”文件夹的内容之后运行。
--------------------------------------------------

==================
==================
(下面这里强调一点 应该是最容易忽视的,很多杀软是查不出的)

9、Image File Execution Options下的注册表项

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options下的注册表项,项名为A.exe(A这里是通配符,下面B一样,就是对应你的应用程序名字,比如360safe.exe),然后在下面新建一个字符串,字符串名为Debugger,字符串值就是程序B.exe的全路径。这个是针对系统可以设置每个程序指定的纠错程序来实现的。让我感到意外的是A.exe不用指明路径!

(或许默认不指名系统会直接找到对应程序名的路径,不过很多病毒都自己写上去了,也就是镜像劫持, 也就是为什么很多人说双击杀毒软件什么的都打不开,病毒很多就在这里做文章)




10、开始菜单启动组

现在的木马大多不再通过启动菜单进行随机启动,但是也不可掉以轻心。如果发现在“开始/程序/启动”中有新增的项,可以右击它选择“查找目标”到相应的文件的目录下查看一下,如果文件路径为系统目录就要多加小心了。也可以在注册表中直接查看,它的位置为HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders,键名为Startup。

--------------------------
(这里提示下,startup 文件,系统默认有个账户,再docoument...下面的,对应个账户名字文件夹,其中有一个默认的他里面也可以加载的,但你自己的用户下面的开始/程序/ 启动那里是看不到的,不过这类病毒还是比较少的,估计是觉得他太暴露了,不过还是有些隐蔽的,很多管理员都会忽视)




                  =============================================

                    下面几项中都是比较少见到的,大家多多留意了

                  =============================================

11、Winlogon\shell

在以下键值位置:

HKEY_LOCAL_MACHINE\SHOFTWARE\Microsoft\WindowsNT\Current Version\Winlogon;

里面的shell建值在Explorer.exe的后面加上我们程序的路径 这样我们的程序就可以随系统启动了。



12、COMMAND的AUTORUN

利用CMD.EXE的autorun:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor下面建一个字串AUTORUN,值为要运行的.bat或.cmd文件的路径,木马可以加载在AUTORUN键值下。这样在运行CMD命令的时候一起加载运行。


注意:

1、如果需要运行.dll文件,则需要特殊的命令行:

例如:
Rundll32.exe C:\WINDOWS\FILE.DLL,Rundll32

2、解除这里相应的自启动项只需删除该键值即可,但注意不要删除系统键值。

3、如果只想不启动而保留键值,只需在该键值加入rem即可:

“rem   C:\Windows\vitas.exe”



13、System\Shell

存放位置:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System

键值名称:Shell,下面的数据为启动文件名。


14、System\Scripts下Logoff(Logon)键值

注意以下分支的Logoff(Logon)键值可能加载文件:

HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System\Scripts;

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\System\Scripts。


(也就是对应的组策略里面的系统启动注销时加载的程序,你可以用gpedit.msc修改)



---------------------------------
(这里强调点,卡巴也会在这里写入,不过好像是中文版本的有,经过汉化的,我的kis6.0.2.614版本没有写入,这里是空,具体的你要看看自己的,但不能保证是不是病毒--所以不要误判,可以查看卡巴官方的介绍,或者咨询他们下,我的没有写入,就不多说)

15、AppInit_DLLs键值

在以下位置:

HKLM\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENT VERSION\WINDOWS,

有一个键值APPINIT_DLLS,一些DLL木马可以在这个位置上直接加载,这种方式加载的木马无法在任务管理器中看到。如求职信病毒就是让系统执行DllMain来达到启动木马的目的,因为它是kernel调入的,对这个DLL的稳定性有很大要求,稍有错误就会导致系统崩溃,所以很少看到这种木马。


--------------------

(这里说下,下面这个应该是系统磁盘扫描程序的,也就是你不正常关机的时候会有蓝色界面问你是否要进行扫描的,这个满聪明的,一开始我也没想到能从这里启动,呵呵,现在很多杀软也查不出的)

16、bootexecute键值

在以下位置:

HKLM\SYSTEM\CONTROLSET001\SESSION MANAGE下面,有一个名为bootexecute的多字符键值,默认数值是:autocheck autochk*。



17、Winlogon\Notify

位置:

HKLM\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\WINLOGON\NOTIFY,

此处位置也需要特别的留意。
这里常常是dll库文件启动的地方,
那些hook注入就是注入到winlogon,我的对应下面有2个(igfxcui,klogon),一些系统工具是直接删除的, 因为这些都是早于系统启动的,dll文件系统还可以为他隐藏,所以你很难用一些icesword等程序结束的,只能自己手动修改。


18、RunOnceEx

XP操作系统,还需要检查一下

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx


19、Explorer\shell folders和user shell folder

以下四个键值位置需要注意:

HKCU\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\SHELL FOLDERS

HKLM\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\SHELL FOLDERS;

HKCU\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\User shell folder

HKLM\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\User shell folder


20、ShellServiceObjectDelayLoad

以下注册表分支:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad

下可能有可疑键值。
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值