5月,微软在13日发布月度安全更新,其中 有KB2871997和 KB2928120两个知识库文章Knowledgeased(而KB2871997甚至不是Security Bulletin)。对于无论是作为攻击的渗透测试人员还是作为防守的管理员都不容忽视这两个更新。 KB2871997针对大名鼎鼎的PTH(pass the hash攻击方式), KB2928120针对GPP(Group Policy Preference)可参考freebuf以前的报道。下面看看安全研究人员Craig对此分析。

KB2871997

这个被称为"PTH杀手"的更新,将使本地帐号不再可以用于远程接入系统,不管是 network logon 还是 interactive login,这就包括像使用 PSEXEC工具甚至IPC远程浏览 C$ ,从表面上看这就有效的降低了一些攻击场景下的威胁。例如一台机器被攻陷后,dump出所有hash,找到本地管理员的hash,再拿着去攻击网络内其他使用相同密码的机器,往往整个网络就这样被控制下来了。

然而,在 Craig 的测试中发现,所有以上的情况都是没说错,但是唯独默认的 Administrator (SID 500)帐号例外,请注意把administrator改名了,它的SID仍然是500,只要它还是 SID 500那么以前的攻击方法还是有效。

所以作为防守方的管理员应该要禁用默认的 local admin帐号,然后重新新建常规的 local user帐号,再把它加进去管理员组。如果管理员做到这样了,那么黑客dump到的本地hash将不再在网络重放中有效,不管是hash还是实际的 credentials。Windows 7默认是禁用 Administrator帐号的,但是 Craig 发现往往在有些企业环境里,这个 Administrator帐号又会被启用起来,只是改了个名字, 也就是说仍然是SID 500,那么这个补丁将帮不了你。

Craig在MSF和powershell里用WMI和psexec_command测试过,都有同样的结果——所有 local account访问都被deny了,除了 SID 500。 Domain hashes和SID 500 的hash仍然可以 pass the hash。

在下图可以看到仍然可以在测试的域环境里一个成员中执行PSEXEC,使用的就是一个SID还是500的帐号,虽然它已经名为renamedAdmin,

如下图所示针对 renamedAdmin, pass the hash攻击仍然有效,但是rdptest就不行了。

下图你可以看到rdptest在本地管理员组,但是已经不是SID 500了。

mimikatz

提到 KB2871997不得不说的还有 mimikatz,它通常已经攻陷了管理员用RDP连接过系统后,就可以用 mimikatz拿到管理员的明文密码了。在 KB2871997补丁以前,即便管理员是正确的退出RDP连接,而不只是关掉连接窗口,仍然可以随时使用mimikatz拿到明文密码。 KB2871997补丁以后,只要你是正常的log off你的RDP连接,那么就会清除内存中的 credentials,但是如果比只是关掉连接的窗口,那么mimikatz的攻击仍然是有效的。 Craig的测试发现,系统并不会立即清除内存中的 credentials,但是大约30秒左右credentials就没有了。

针对Craig的这个说法,小编发现在Craig测试几天后, mimikatz就发布了一个更新的版本mimikatz 2.0 alphahttps://github.com/gentilkiwi/mimikatz/releases/ ,并且更新里说明可以应对 KB2871997。"Pass-The-eKeys now also working on Windows 7/8 if KB2871997 installed"是不是生活顿时又充满了希望呢!

KB2928120

再说说GPP,来自官方说法是"某些组策略首选项可以存储密码。此功能将被删除,因为通过这种方式存储的密码不安全"。

以下组策略首选项将不再允许保存用户名和密码:

,驱动器映射2,本地用户和组3,计划任务4,服务5,数据源

这将影响环境中依赖于这些首选项中包含的密码的任何现有组策略对象 (GPO) 的行为。此外,它还会阻止通过使用此功能创建新的组策略首选项。

对于"驱动器映射"、"本地用户和组"和"服务",您也许能够通过 Windows 中其他更加安全的功能实现相似的目标。

对于"计划任务"和"数据源",您将无法达到通过不安全的组策略首选项密码功能所能实现的目标。

Craig测试发现如果打完这个补丁后,再去之前创建的 admin account,双击他就会出行一个警告消息

点继续就会看到密码仍然在那里,但是已经不能被修改了。密码部分已经灰了。

当再新建帐号时,已经不能再设置密码了。

原文:

http://www.pwnag3.com/2014/05/what-did-microsoft-just-break-with.htm

MS14-025引起的问题 - 2的更多相关文章

  1. php大力力 [025节] 来不及学习和分类的,大力力认为有价值的一些技术文章合集(大力力二叔公)(2015-08-27)

    php大力力 [025节] 来不及学习和分类的,大力力认为有价值的一些技术文章合集(大力力二叔公)(2015-08-27) 比较好的模版 免费模板网,提供大量DIV+CSS布局网页模板下载及后台管理 ...

  2. [反汇编练习] 160个CrackMe之025

    [反汇编练习] 160个CrackMe之025. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...

  3. Python练习题 025:判断回文数

    [Python练习题 025] 一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. ---------------------------------------- ...

  4. No.025:Reverse Nodes in k-Group

    问题: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list ...

  5. 025医疗项目-模块二:药品目录的导入导出-HSSF导入类的封装

    上一篇文章提过,HSSF的用户模式会导致读取海量数据时很慢,所以我们采用的是事件驱动模式.这个模式类似于xml的sax解析.需要实现一个接口,HSSFListener接口. 原理:根据excel底层存 ...

  6. Java for LeetCode 025 Reverse Nodes in k-Group

    Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. If ...

  7. 025. asp.net中GridView的排序和过滤

    前台HTML代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defaul ...

  8. [Effective C++ --025]考虑写出一个不抛异常的swap函数

    引言 在我的上一篇博客中,讲述了swap函数. 原本swap只是STL的一部分,而后成为异常安全性编程的脊柱,以及用来处理自我赋值可能性. 一.swap函数 标准库的swap函数如下: namespa ...

  9. 李洪强漫谈iOS开发[C语言-025]-赋值运算符案例

  10. 基于visual Studio2013解决算法导论之025双向循环链表

     题目 双向循环链表 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <time.h> #in ...

随机推荐

  1. 玩转Vim 编辑器

    一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...

  2. sql 取新的列名含义

    SELECT a.*, 1 DELETABLE, '' YEAR_ON, '' MONTH_ON, TOOL_STATUS status0 FROM TOOL a 说明:其中tool字段有tool_s ...

  3. C#解决Linq OrderBy() 失效的小技巧

    前言 前几天的一个数据列表中我用了Linq GroupBy 和OrderBy. 排序在本机正常使用,发到测试后排序死活不对,很是郁闷,总以为是程序问题.于是请教了另外一个同事.有了以下的答案. 问题原 ...

  4. SSH--1

    package com.etc.action; import java.io.IOException; import java.io.PrintWriter; import java.util.Has ...

  5. 15. 3Sum_左右开工,遍历找出符合目标的数字

    题目: Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find al ...

  6. 常用的Sql 函数

    常用的Sql 函数 1: replace 函数,替换字符. 语法 replace (original-string, search-string, replace-string ) 第一个参数你的字符 ...

  7. elasticsearch + hive环境搭建

    一.环境介绍: elasticsearch:2.3.1 hive:0.12 二.环境搭建 2.1 首先获取elasticsearc-hadoop的jar包 链接地址:http://jcenter.bi ...

  8. msconfig设置调试开启 关闭 操作注册表项是

    经过测试   9dea862c-5cdd-4e70-acc1-f32b644d4795  这个项每个系统都是固定的.这个项里面的  Elements 里面项也是固定的.在 24000001 项里的 E ...

  9. IRQ和FIQ中断的区别【转】

    转自:http://blog.csdn.net/michaelcao1980/article/details/19542039 FIQ和IRQ是两种不同类型的中断,ARM为了支持这两种不同的中断,提供 ...

  10. WPF / Win Form:多线程去修改或访问UI线程数据的方法( winform 跨线程访问UI控件 )

    WPF:谈谈各种多线程去修改或访问UI线程数据的方法http://www.cnblogs.com/mgen/archive/2012/03/10/2389509.html 子线程非法访问UI线程的数据 ...