恶意代码行为
摘要
恶意代码(Unwanted Code)是指没有作用却会带来危险的代码,一个最安全的定义是把所有不必要的代码都看作是恶意的,不必要代码比恶意代码具有更宽泛的含义,包括所有可能与某个组织安全策略相冲突的软件。
- :恶意代码又称恶意软件。这些软件也可称为广告软件(adware)、间谍软件(spyware)、恶意共享软件(malicious shareware)。是指在未明确提示用户或未经用户许可的情况下,在用户计算机或其他终端上安装运行,侵犯用户合法权益的软件。与病毒或蠕虫不同,这些软件很多不是小团体或者个人秘密地编写和散播,反而有很多知名企业和团体涉嫌此类软件。有时也称作流氓软件。
- :恶意代码是指故意编制或设置的、对网络或系统会产生威胁或潜在威胁的计算机代码。最常见的恶意代码有计算机病毒(简称病毒)、特洛伊木马(简称木马)、计算机蠕虫(简称蠕虫)、后门、逻辑炸弹等。
行为
1. 下载器和启动器
2. 后门
反向shell
远控
僵尸网络
登陆凭证窃密器
GINA拦截
口令哈希转储
键盘记录
GetAsyncKeyState识别一个键是按下还是弹起;GetForegroundWindow识别当前聚焦的窗口,告诉键盘记录器当前哪个应用程序正在执行输入
存活机制
Windows注册表
Sysinternals找出系统中所有的自启动程序
AppInit_DLL 设置这个值来让恶意代码编写者的dll得到加载
>HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost
Winlogon Notify 挂钩一个特殊的Winlogon事件,如登录注销关机等,这样可以允许恶意代码在安全模式下加载
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\
SvcHost DLL
组位置
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost
服务定义位置
HKLM\System\CurrentControlSet\Services\ServiceName
木马化系统二进制文件
dll加载顺序劫持 xp系统中的KnownDLL注册表键可以跳过DLL的加载过程,保护一些特定的DLL位置列表5.提权
- 使用SeDebugPrivilege
通过设置访问令牌来开启SeDebugPrivilege。访问令牌是一个包含进程安全描述符的对象,用来指定拥有者的访问权限
设置令牌: GetCurrentProcess->
OpenProcessToken->获取访问令牌并传入访问令牌的进程句柄和期望获得的权限
LookupPrivilegeValue->获取本地唯一标识符(LUID)
AdjustTokenPrivilege