用途限制声明,本文仅用于网络安全技术研究、教育与知识分享。文中涉及的渗透测试方法与工具,严禁用于未经授权的网络攻击、数据窃取或任何违法活动。任何因不当使用本文内容导致的法律后果,作者及发布平台不承担任何责任。渗透测试涉及复杂技术操作,可能对目标系统造成数据损坏、服务中断等风险。读者需充分评估技术能力与潜在后果,在合法合规前提下谨慎实践。
CrackMapExec(简称 CME)是一款专为 Windows 网络渗透测试设计的自动化工具,集成了信息枚举、凭证验证、横向移动等核心功能,广泛用于红队演练和安全评估。

一、核心介绍

CME 基于 Python 开发,通过封装多种 Windows 常用协议(SMB、LDAP、WinRM、MSSQL 等),实现对目标网络的批量操作。其核心价值在于简化渗透流程:无需手动逐个测试主机,可通过命令行批量枚举信息、验证凭证、执行命令,快速定位网络中的安全弱点(如弱密码、过度权限等)。CME主要应用于域环境中,注重于后渗透领域。

适用场景

  • 内网信息收集(主机存活、操作系统、共享资源、用户列表等);
  • 凭证有效性验证(密码喷洒、哈希传递攻击);
  • 横向移动(通过有效凭证远程执行命令、部署后门)。

二、工作原理

CME 的核心原理是利用 Windows 协议的交互逻辑,通过发送特定请求与目标主机通信,解析返回结果获取信息或执行操作。以下是关键协议的作用:

  1. SMB 协议(Server Message Block)
    最核心的协议,Windows 默认开启(端口 445),用于文件共享、远程命令执行等。CME 通过 SMB 协议可:

    • 枚举主机基本信息(操作系统版本、域名、工作组);
    • 验证用户凭证(明文密码或 NTLM 哈希);
    • 执行命令(通过psexecwmiexec类似逻辑,在目标主机上运行命令)。
  2. LDAP 协议(Lightweight Directory Access Protocol)
    用于域环境中目录服务(如 Active Directory)的查询,CME 通过 LDAP 可枚举域用户、组、OU(组织单位)、域控制器等信息。

  3. WinRM 协议(Windows Remote Management)
    基于 HTTP/HTTPS(端口 5985/5986),用于远程管理,CME 可通过 WinRM 执行命令(类似Invoke-Command)。

  4. 哈希传递攻击(Pass-the-Hash, PtH)
    CME 支持 PtH 的核心原理:Windows 验证时,NTLM 哈希可直接替代明文密码用于身份验证。CME 通过传递哈希值(而非明文)向目标 SMB 服务发送验证请求,实现无需明文密码的登录。

三、安装方法

CME 主要在 Linux 环境(如 Kali Linux)运行,以下是常见安装方式:

Kali Linux 快速安装,Kali 默认预装 CME,若未安装或需更新:

sudo apt update && sudo apt install crackmapexec -y

源代码下载:【免费】CrackMapExec-一款强大的后渗透工具资源-CSDN下载

四、使用

CME 的命令格式为:

crackmapexec <协议> <目标> [选项]

其中,<协议>可指定smb(默认)、ldapwinrm等;<目标>可以是单 IP、IP 段(如192.168.1.0/24)或 CIDR。

在搭建的域环境中进行操作。

1. 基础信息枚举(SMB 协议)

枚举目标网段的存活主机、操作系统、域名等:

# 扫描192.168.1.0/24网段,获取基础信息
crackmapexec smb 192.168.1.0/24

# 枚举目标主机的共享资源
crackmapexec smb 192.168.1.100 --shares

2. 凭证验证(密码喷洒 / 哈希传递)

密码喷洒(避免账号锁定,先查密码策略):

# 查看目标的密码策略(如最小长度、锁定阈值)
crackmapexec smb 192.168.1.0/24 --pass-pol# 对网段批量测试用户名+密码(如域用户admin,密码P@ssw0rd)
crackmapexec smb 192.168.1.0/24 -u admin -p 'P@ssw0rd'

哈希传递攻击(使用 NTLM 哈希验证):

# 格式:-u 用户名 -H NTLM哈希(注意哈希需为LM:NTLM格式,LM可留空为aad3b435b51404eeaad3b435b51404ee:NTLM)
crackmapexec smb 192.168.1.100 -u admin -H 'aad3b435b51404eeaad3b435b51404ee:5f4dcc3b5aa765d61d8327deb882cf99'

这个就需要用其它工具先抓取Hash,再进行操作

 

3. 横向移动(远程执行命令)

通过有效凭证在目标主机上执行命令:

# 使用SMB协议执行命令(返回结果)
crackmapexec smb 192.168.1.100 -u admin -p 'P@ssw0rd' -x 'whoami'# 使用WinRM协议执行命令(适用于开启WinRM的主机)
crackmapexec winrm 192.168.1.100 -u admin -p 'P@ssw0rd' -x 'ipconfig'

4. 域环境枚举(LDAP 协议)

在域环境中枚举域用户、组、域控制器等:

# 枚举域内所有用户(需域用户凭证)
crackmapexec ldap 192.168.1.200(域控IP) -u 'domain\admin' -p 'P@ssw0rd' --users# 枚举域内所有组
crackmapexec ldap 192.168.1.200 -u 'domain\admin' -p 'P@ssw0rd' --groups

除这些以外,还有其它很多的功能,使用命令查看帮助即可

crackmapexec -h

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/92869.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/92869.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/92869.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解模板方法模式:框架设计的“骨架”艺术

目录 前言 一、模板方法模式的核心思想 二、模板方法模式的结构组成 1. 抽象类&#xff08;Abstract Class&#xff09; 2. 具体子类&#xff08;Concrete Class&#xff09; 三、C 实现示例&#xff1a;咖啡与茶的制作流程 步骤 1&#xff1a;定义抽象类&#xff08;饮料…

LinkedList 深度解析:核心原理与实践

文章目录 一、底层数据结构与特性 1. 核心数据结构 2. 关键特性 二、核心操作机制解析 1. 添加元素机制 2. 删除元素机制 三、性能关键点分析 1. 时间复杂度对比 2. 空间开销 四、线程安全解决方案 1. 同步包装器 2. 使用并发集合 五、经典面试题解析 1. ArrayList 和 LinkedLi…

Jmeter性能测试之安装及启动Jmeter

1. 安装JDK Jmeter依赖JDK环境,如果电脑没有JDK,需要安装JDK.如下是Jmeter版本与JDK版本对应关系. 2. Jmeter下载安装 下载链接&#xff1a;https://archive.apache.org/dist/jmeter/binaries/ windows下载.zip压缩包Linux下载.tar压缩包 下一步下一步就行 3. 配置环境变…

ShadowKV 机制深度解析:高吞吐长上下文 LLM 推理的 KV 缓存“影子”方案

背景与核心思想简介 在LLM的长上下文推理中&#xff0c;KV Cache成为影响速度和内存的关键因素。每生成一个新token&#xff0c;模型需要对所有先前token的键&#xff08;Key&#xff09;和值&#xff08;Value&#xff09;向量执行自注意力计算。传统方法会将所有过去的K/V向量…

spring-ai整合PGVector实现RAG

背景 最近公司的产品和业务线&#xff0c;要求往ai方向靠拢&#xff0c;在研发各种智能体&#xff0c;整理下最近学习的过程&#xff0c;将一部分内容整理出来&#xff0c;分享给需要的同学。 这篇文章将会提供详细的例子以及踩坑说明。主要内容是整合spring-ai&#xff0c;同…

Git 乱码文件处理全流程指南

一、问题背景与核心目标 1.1 问题描述 在 Git 仓库中发现了一个异常乱码文件&#xff1a; "\001\342\240\025\250\325\3738\f\036\035\006\004\240\002\240\002\b\003\004\340\002\340\002\340\002\034\034\001\001\004:\016\020\001\005\016\016\016\211\266\257\211\266…

JavaScript垃圾回收机制

1.垃圾回收的概念 1.1 什么是垃圾回收机制&#xff1a; GC 即 Garbage Collection &#xff0c;程序工作过程中会产生很多"垃圾"&#xff0c;这些垃圾是程序不用的内存或者是之前用过了&#xff0c;以后不会再用的内存空间&#xff0c;而 GC 就是负责回收垃圾的&…

工业相机选择规则

一、相机分辨率选择相机分辨率指的是相机传感器捕捉图像细节的能力&#xff0c;具体来说就是传感器上有效像素的总数量。可以把它理解为构成数字图像的“小方块”&#xff08;像素&#xff09;有多少个。工业领域内相机的分辨率的选择根据更具产品需要的精度要求和产品大小来确…

【Web安全】csrf、ssrf和xxe的区别

CSRF、SSRF 和 XXE 是三种不同类型的网络安全漏洞&#xff0c;它们的原理、攻击目标、利用方式和危害场景均有显著区别。以下从核心定义、原理、场景等维度详细对比三者的差异。一、核心定义与原理对比漏洞类型全称核心定义核心原理CSRF跨站请求伪造攻击者诱导用户在已登录的情…

【Lua】XLua一键构建工具

将以下代码放入Editor文件夹&#xff0c;点击菜单栏的XLua/一键生成代码和热补丁 即可。using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using UnityEditor; using UnityEngine;/// <summary> /// XLua自动化构建工具 //…

20250808:EasyGBS 对接大华 ICC 平台问题处理

最近有个现场在对接大华 ICC 平台时&#xff0c;客户反馈&#xff1a;EasyGBS 级联成功&#xff0c;但 ICC 显示下级离线。EasyGBS 成功对接过很多家国标平台&#xff0c;但这种情况确实少见。我们远程过去确认配置无误后&#xff0c;就进行了抓包&#xff0c;拿到包我就纳闷了…

js使用webscoket时使用自定义二进制包协议时并发问题处理

this.server new WebSocket.Server({ port: this.port });this.server.on(connection, (ws, req) > {const uniqueId dataUtil.uuid();ws.id uniqueId;global.serverSession.set(uniqueId, ws);logger.debug({ message: 客户端已连接, traceId: ws.id, address: req.sock…

元数据管理与数据治理平台:Apache Atlas 分类传播 Classification Propagation

文中内容仅限技术学习与代码实践参考&#xff0c;市场存在不确定性&#xff0c;技术分析需谨慎验证&#xff0c;不构成任何投资建议。Apache Atlas 框架是一套可扩展的核心基础治理服务&#xff0c;使企业能够有效、高效地满足 Hadoop 中的合规性要求&#xff0c;并支持与整个企…

TSF应用开发与运维部署

架构演进历程&#xff1a;单体架构-->SOA架构-->微服务架构-->Service Mesh腾讯微服务平台TSF (Tencent Service Framework) 是一个围绕应用和微服务的 PaaS 平台。提供服务全生命周期管理能力和数据化运营支持。提供多维度应用、服务、机器的监控数据&#xff0c;助力…

linux开发之mmap内存映射

mmap概念 mmp是 将文件或设备直接映射到进程的虚拟内存空间 的一种机制&#xff0c;可实现程序像访问内存一样访问文件&#xff0c;而不需要传统的 read()/write()系统调用 文件内容被映射到进程的地址空间&#xff0c;读写文件就像操作内存一样&#xff0c;操作系统负责自动同…

CPP继承

继承 一、继承概述 1、为什么需要继承 如下示例&#xff0c;Person 类、Student 类、Teacher 类有大量重复的代码&#xff0c;造成代码冗余&#xff0c;降低开发效率。我们可以通过继承来解决这一问题。在面向对象的编程语言中&#xff0c;继承是一个核心概念。主要作用将重复的…

模块 PCB 技术在未来通信领域的创新突破方向

未来通信领域对数据传输速率、信号稳定性及设备集成度的要求持续攀升&#xff0c;模块 PCB 作为通信设备的关键组件&#xff0c;其技术创新成为推动行业发展的核心动力。猎板 PCB 凭借深厚的技术积累与持续的研发投入&#xff0c;在模块 PCB 技术创新方面取得诸多突破&#xff…

mysql的InnoDB索引总结

MySQL InnoDB索引知识点总结 1. 索引类型 1.1 聚簇索引&#xff08;Clustered Index&#xff09; 定义与特性 定义&#xff1a;聚簇索引是InnoDB的默认存储方式&#xff0c;数据行按照主键的顺序物理存储在磁盘上特性&#xff1a; 每个InnoDB表只能有一个聚簇索引数据页中的记录…

C++模板的补充

类模板(上一篇没讲到类模板C/C内存管理&函数模板-CSDN博客&#xff09; 类模板的定义&#xff1a; template<class T1, class T2, ..., class Tn> class 类模板名 {// 类内成员定义 }; 用一个简单的栈例子讲类模板 #define _CRT_SECURE_NO_WARNINGS #include &l…

用JOIN替代子查询的查询性能优化

一、子查询的性能瓶颈分析‌重复执行成本‌关联子查询会导致外层每行数据触发一次子查询&#xff0c;时间复杂度为O(M*N)sql-- 典型低效案例 SELECT e.employee_id, (SELECT d.department_name FROM departments d WHERE d.department_id e.department_id) FROM employees e; …