简单COM恶意组件分析

简单COM恶意组件分析

什么是COM组件

COM组件是微软的一个接口标注,全称是组件对象模型(Component Obejct Model),它可以使不同的软件组件在不知道其他组件代码的接口规范时,进行相互间的调用。COM可以支持任何编程语言,因此被设计成了一个可复用的软件组件。

COM组件的基本分析

每个程序在调用COM组件之前,都需要进行一系列的初始化工作,常用的函数包括了

OleInitialize或者CoInitializeEx函数进行一个组件的初始化,之后才能对响应的COM组件使用。

在分析一个COM组件的样本的时候,需要清楚每个COM组件初始化的一些参数,需要关注的是

CLSID:类型标识符

IID 接口标识符

COM通过上述两个标识来访问相关的组件。

当一个程序调用了CoCreateInstance函数式,操作系统会使用注册表中的注册信息来判断请求中的riidrclsid这两个字段的值,通常会查询如下注册表

HKLM\SOFTWARE\Classes\CLSID
HKCU\SOFTWARE\Classes\CLSID

来进行查找要使用的COM服务器的信息。

如果COM组件是一个应用程序则CLSID一个LocalService,如果COM组价你被安装为了一个DLL用来被程序加载,则对应的CLSID是一个InprocServer

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值