如何使用COM-Hunter检测持久化COM劫持漏洞

这篇具有很好参考价值的文章主要介绍了如何使用COM-Hunter检测持久化COM劫持漏洞。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于COM-Hunter

COM-
Hunter是一款针对持久化COM劫持漏洞的安全检测工具,该工具基于C#语言开发,可以帮助广大研究人员通过持久化COM劫持技术来检测目标应用程序的安全性。

关于COM劫持

微软在Windows 3.11中引入了(Component Object Model,
COM),作为一种实现对象的方法,这些对象可以被不同的框架(ActiveX, COM+,
DCOM等)使用,并且在不同的Windows环境中允许互操作性,进程间通信和代码重用。COM对象的滥用使安防团队能够代表受信任的进程执行任意代码。执行COM劫持不需要管理员权限,因为HKCU注册表配置单元中的类在HKLM中的类之前执行。唯一影响高完整性进程(提升)的例外情况是,仅从HKLM位置加载对象,以防止特权提升。

功能介绍

1、在目标用户的计算机中查找有效的CLSID;

2、通过目标用户计算机中的任务调度器(Task Scheduler)查找有效的CLSID;

3、找出是否有人已经使用了这些有效的CLSID来进行持久化COM劫持(LocalServer32/InprocServer32);

4、找出是否有人通过任务调度器(Task
Scheduler)使用了任何有效的CLSID来执行持久化COM劫持(LocalServer32/InprocServer32);

5、尝试通过任务调度器(Task Scheduler)自动执行持久化COM劫持;

6、尝试使用“TreatAs”键来引用其他组件;

工具要求

.NET Framework v4.8

工具下载

广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/nickvourd/COM-Hunter.git

工具帮助信息

[+] Usage:

 

    .\COM-Hunter.exe <mode> <options>

 

-> General Options:

    -h, --help      显示帮助信息和退出

    -v, --version    显示工具当前版本

    -a, --about     显示跟工具相关的其他信息

 

-> Modes:

    Search  搜索模式

    Persist  持久化模式

 

-> Search Mode:

    Get-Entry     搜索有效的CLSID条目

    Get-Tasksch  通过任务调度器搜索有效的CLSID条目

    Find-Persist   搜索是否有人已经使用了一个有效的CLSID(安全防御)

    Find-Tasksch 搜索是否有人通过任务调度器(Task Scheduler)使用了任何有效的CLSID(安全防御)

 

-> Persist Mode:

    General     使用常用方法在注册表中实现持久化COM劫持

    Tasksch     尝试通过任务调度器实现持久化COM劫持

    TreatAs     在注册表中尝试使用TreatAs注册表键实现持久化COM劫持

 

-> General Usage:

    .\COM-Hunter.exe  持久化General <clsid> <full_path_of_evil_dll>

 

-> Tasksch Usage:

    .\COM-Hunter.exe  持久化Tasksch <full_path_of_evil_dll>

 

-> TreatAs Usage:

.\COM-Hunter.exe  持久化TreatAs <clsid> <full_path_of_evil_dll>

工具使用样例

搜索包含有效CLSID的条目(搜索模式)

.\COM-Hunter.exe Search Get-Entry

寻找持久化劫持点(搜索模式)

.\COM-Hunter.exe Search Find-Persist

常用方法(持久化模式)

.\COM-Hunter.exe Persist General 'HKCU:Software\Classes\CLSID\...' C:\Users\nickvourd\Desktop\beacon.dll

计划任务(持久化模式)

.\COM-Hunter.exe Persist Tasksch C:\Users\nickvourd\Desktop\beacon.dll

有效CLSID格式样例

Software\Classes\CLSID\...

HKCU:Software\Classes\CLSID\...

HKCU:\Software\Classes\CLSID\...

HKCU\Software\Classes\CLSID\...

HKEY_CURRENT_USER:Software\Classes\CLSID\...

HKEY_CURRENT_USER:\Software\Classes\CLSID\...

HKEY_CURRENT_USER\Software\Classes\CLSID\...

网络安全工程师企业级学习路线

这时候你当然需要一份系统性的学习路线

如图片过大被平台压缩导致看不清的话,可以在文末下载(无偿的),大家也可以一起学习交流一下。

如何使用COM-Hunter检测持久化COM劫持漏洞

一些我收集的网络安全自学入门书籍

如何使用COM-Hunter检测持久化COM劫持漏洞

一些我白嫖到的不错的视频教程:

如何使用COM-Hunter检测持久化COM劫持漏洞

上述资料【扫下方二维码】就可以领取了,无偿分享
文章来源地址https://www.toymoban.com/news/detail-471293.html

到了这里,关于如何使用COM-Hunter检测持久化COM劫持漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何借助Kafka持久化存储K8S事件数据?

    大家应该对 Kubernetes Events 并不陌生,特别是当你使用 kubectl describe 命令或 Event API 资源来了解集群中的故障时。     尽管这些信息十分有用,但它只是临时的,保留时间最长为30天。如果出于审计或是故障诊断等目的,你可能想要把这些信息保留得更久,比如保存在像 Kafka

    2024年02月05日
    浏览(51)
  • ActiveMQ使用JDBC持久化消息

    为了避免服务器宕机而导致消息丢失,ActiveMQ提供消息持久化机制。 ActiveMQ提供多种消息持久化的方式,如LevelDB Store、KahaDB 、AMQ、JDBC等,详情可以访问官网。 ActiveMQ默认是使用KahaDB持久化消息。在/conf/activemq.xml如下配置: KahaDB是一个文件型数据库,是以日志形式保存到文件

    2024年02月11日
    浏览(35)
  • uniapp中使用vuex并持久化

    目录 文章目录 准备 一、插件实现 1.安装插件  2.index.js配置: 3.获取持久化数据(比如登录页): 4.使用state(比如个人主页): 二、本地存储实现 总结 根目录下创建store文件夹,内部创建index.js 地址:vuex-persistedstate - npm 代码如下(示例): 插件的api说明: key: 存储持久

    2024年02月09日
    浏览(55)
  • ThingsBoard使用持久化RPC案例场景

    昨天,有个兄弟找到我,他说他遇到问题了,场景如下:他有一个扫描枪A设备,A设备上报数据到ThingsBoard,然后需要将数据发送给B设备,其实这样想实现很简单的就是一个给B设备下发RPC即可,但是啊,这个兄弟说B设备可能会离线,如何保证B设备上线后照样能收到A设备的消

    2024年02月12日
    浏览(98)
  • Pinia使用方法及持久化存储

    Pinia 是 Vue 的专属状态管理库,它允许你跨组件或页面共享状态。它跟 Vuex 有一定的相似度,但还是有很大的区别。 愿意看这篇博客的人,想必已经看过了官方文档,官方文档很详细,包含各种使用情景和理论,因此本文不说理论,只说具体的使用方法,想深入研究的建议去

    2024年02月08日
    浏览(52)
  • 【pinia持久化存储】使用pinia和pinia-plugin-persistedstate依赖进行数据的持久化存储

    使用pinia和pinia-plugin-persistedstate依赖进行数据的持久化存储。 存储方式 : localStorage sessionStorage pinia-plugin-persistedstate 中文官网 pinia 中文官网 安装和使用 pinia ,请参考使用pinia文章。 安装 pinia-plugin-persistedstate : 使用前先将 pinia-plugin-persistedstate添加到pinia实例上。 在添加的时

    2023年04月17日
    浏览(46)
  • Redis的简单使用 (实现Session持久化)

    🎉🎉🎉 点进来你就是我的人了 博主主页: 🙈🙈🙈 戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔 🤺🤺🤺 目录 一、Redis数据类型的使用 1. 字符串(String) 2. 字典类型(哈希 Hashes) 3. 列表(Lists) 4. 集合(Sets) 5. 有序集合(Sorted sets) 二、SpringBoot连接Redis操

    2024年02月11日
    浏览(43)
  • SpringBoot日志持久化以及使用lombok输出日志

    上一篇文章介绍了日志级别和自定义输出日志 链接 https://blog.csdn.net/qq_45875349/article/details/132510387?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22132510387%22%2C%22source%22%3A%22qq_45875349%22%7D 那么想要将控制台上的日志信息,保存在硬盘上,以便出问题之后追溯

    2024年02月11日
    浏览(49)
  • 持久化反弹一个能使用方向键的shell

    服务端 被控端 提升到pty 进一步提升可以使用tab,方向键,ctrl+c SEGINT等 服务端 被控端 参考:https://blog.ropnop.com/upgrading-simple-shells-to-fully-interactive-ttys/

    2024年02月15日
    浏览(44)
  • 【iOS】数据持久化(四)之FMDB基本使用

    正如我们前面所看到的,原生SQLite API在使用时还是比较麻烦的,于是,开源社区就出现了一系列将SQLite API进行封装的库,其中FMDB的被大多数人所使用 FMDB和SQLite相比较,SQLite比较原始,操作比较复杂,使用的是C的函数对数据库进行操作,但是SQLite可控性更强,并且能够 跨平

    2024年01月18日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包