零、绪论:mimikatz简介



mimikatz是一款出色的内网渗透工具,可以抓取windows主机的明文密码、NTLMhash值或者kerberos对应的缓存凭据。mimikatz的使用在获取权限后可以上传到目标主机上,或者在msf上直接加载。



Mimikatz Commands
================= Command Description
------- -----------
kerberos Attempt to retrieve kerberos creds
livessp Attempt to retrieve livessp creds
mimikatz_command Run a custom command
msv Attempt to retrieve msv creds (hashes)
ssp Attempt to retrieve ssp creds
tspkg Attempt to retrieve tspkg creds
wdigest Attempt to retrieve wdigest creds

一、防御措施一:关闭程序调试权限



debug:privilege玩过mimkatz肯定对这条命令记忆犹新,获取程序调试的权限,一般这个权限在administrator的权限种,但实际上如果不是程序员,这个权限没有必要,可以关闭,但域中的机器,此方法无效,因为OU组策略的优先级最高,而这个权限在ou组权限中没有定义,无法配置。

附录:windows 策略优先级从高到低


OU Policy->Domain Policy->Site Policy->Local Policy

二、防御措施二:WDigest协议禁用



在winserver2008之前,该协议配置项默认启用,会在lsass.exe进程中保存明文密码用于http认证,需要打补丁KB2871997来配置禁用,winserver2008和以后版本默认禁用。缓存未知如下注册表键值,0为不缓存,1为缓存

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\WDigest

三、防御措施三:不缓存域凭证



简单DDC的背景简介


Domain Cached Credentials 简称 DDC,也叫 mscache。有两个版本,XP/2003 年代的叫第一代,Vasta/2008 之后的是第二代。缓存位置如下:

HKEY_LOCAL_MACHINE\SECURITY\Cache

不缓存凭证的话,当然也就抓不到平局了。

配置项


四、其他措施或注意事项



受保护用户组:


受保护的用户组会强迫本地管理员账号强行走kerberos认证,这是在winserver2012之后新加入的,winserver2008以及之前版本需要打补丁KN2871997。

受限管理员模式


在win8.1/winserver2012r2引入,之前需要打补丁KN2871997和KB2973351。该模式存在问题,可以直接利用当前缓存登录,攻击手法RDP-PTH

mimikatz# sekurlsa::pth /user:bobac /domain:172.16.204.139 /ntlm:hash-value "/run:mstsc.exe /restrictedadmin"

鸣谢:



参考文献:

hl0rey在信安之路发布的文章:Mimikatz 攻防杂谈

如何防御mimikatz致敬Mimikatz攻防杂谈学习笔记的更多相关文章

  1. Web安全攻防(简)学习笔记

    Web安全攻防-学习笔记 本文属于一种总结性的学习笔记,内容许多都早先发布独立的文章,可以通过分类标签进行查看 信息收集 信息收集是渗透测试全过程的第一步,针对渗透目标进行最大程度的信息收集,遵随&q ...

  2. Java安全防御学习笔记V1.0

    Java安全防御学习笔记V1.0http://www.docin.com/p-766808938.html

  3. 《Web安全攻防 渗透测试实战指南 》 学习笔记 (五)

    Web安全攻防 渗透测试实战指南   学习笔记 (五)   第四章 Web安全原理解析  (一) (一)SQL注入的原理 1.web应用程序对用户输入数据的合法性没有判断. 2.参数用户可控:前端传给 ...

  4. 《Web安全攻防 渗透测试实战指南》 学习笔记 (四)

    Web安全攻防 渗透测试实战指南   学习笔记 (四) Nmap                                       Network  Mapper    是一款开放源代码的网 ...

  5. 《Web安全攻防 渗透测试实战指南 》 学习笔记 (三)

    Web安全攻防 渗透测试实战指南   学习笔记 (三) burp suite详解                                                 是一款集成化渗透测试工 ...

  6. 《Web安全攻防 渗透测试实战指南》 学习笔记 (二)

    Web安全攻防 渗透测试实战指南   学习笔记 (二)   第二章  漏洞环境及实践  

  7. 《Web安全攻防 渗透测试实战指南》 学习笔记(一)

    Web安全攻防 渗透测试实战指南   学习笔记 (一) 第一章   信息收集     在信息收集中,最重要是收集服务器的配置信息和网站敏感信息(域名及子域名信息目标网站系统.CMS指纹.目标网站真实I ...

  8. Cobalt Strike学习笔记

    Cobalt Strike 一款以metasploit为基础的GUI的框架式渗透测试工具,集成了端口转发.服务扫描,自动化溢出,多模式端口监听,win exe木马生成,win dll木马生成,java ...

  9. EPROCESS 进程/线程优先级 句柄表 GDT LDT 页表 《寒江独钓》内核学习笔记(2)

    在学习笔记(1)中,我们学习了IRP的数据结构的相关知识,接下来我们继续来学习内核中很重要的另一批数据结构: EPROCESS/KPROCESS/PEB.把它们放到一起是因为这三个数据结构及其外延和w ...

随机推荐

  1. Java编程思想学习笔记——初始化与清理(二)

    成员初始化 Java尽力保证:所有变量在使用前都能得到适当的初始化. 方法的局部变量:未初始化,编译错误. void f(){ int i; // System.out.println(i);//编译 ...

  2. python05 - 迭代器,生成器,装饰器

    迭代器 迭代器就是访问集合元素的一种方式,迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问一遍后结束. 迭代器很大的特点: 只能往前迭代,不能够回退,也不能随机访问其中一个元素,只能通过__ ...

  3. get calllog fail

    coolpad Coolpad 8122   Uri smsUri = CallLog.Calls.CONTENT_URI;     Cursor callLogCursor = cr.query(s ...

  4. 【机翻】Deep Plug-and-Play Super-Resolution for Arbitrary

    论文 (PDF) Deep Plug-and-Play Super-Resolution for Arbitrary Blur Kernels https://www.researchgate.net ...

  5. oracle创建HR示例数据库脚本hr_main.sql分享

    需求描述: 今天一同事想要在测试库上进行SQL练习,帮忙安装下这个示例数据库,在此记录下. 操作过程: 1.上传hr_main.sql脚本(10g 11g都可用) 脚本下载链接: https://pa ...

  6. SQL 语句判断记录是否存在(最简洁简单性能最优)

    今天查了下,发现网上的没有一个sql语句写的好的. 判断记录是否存在,要不是语句不够简洁,要不就是性能有很大问题. 我进行了优化后,最简洁简单性能最优的的sql语句,用来判断表中的记录是否存在: se ...

  7. 表单验证<AngularJs>

    经常使用的表单验证指令 1. 必填项验证 某个表单输入是否已填写,仅仅要在输入字段元素上加入HTML5标记required就可以: <input type="text" re ...

  8. PHP从数组中找到指定元素的位置

    群里有人问,有个数组五个元素 分为1到5  现在要求 循环找出3元素的索引,怎么做性能才是最高. 我不知道哪个性能最高,但是我想提出可以用多种方式进行查找,然后进行比较选择. 我想,最简单最基础的 应 ...

  9. Redis 操作列表数据

    Redis 操作列表数据: > lpush list1 "aaa" // lpush 用于追加列表元素,默认追加到列表的最左侧(left) (integer) > lp ...

  10. DDMS调试信息

    1.可以使用System.out.println() 2.android.util包下的Log类 该类可以将信息以日志的形式输出到LogCat中: import android.util.Log; S ...