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. UIButton无法响应点击事件

    一.问题描述 因为项目需要,需要UITableView上添加固定的筛选表头,一直固定,不能随UITableView滚动.所以直接将表头与UITableView分离,将它添加到控制器的UIView上,即 ...

  2. [VijosP1764]Dual Matrices 题解

    题目大意: 一个N行M列的二维矩阵,矩阵的每个位置上是一个绝对值不超过1000的整数.你需要找到两个不相交的A*B的连续子矩形,使得这两个矩形包含的元素之和尽量大. 思路: 预处理,n2时间算出每个点 ...

  3. 【SQL】Oracle分页查询的三种方法

    [SQL]Oracle分页查询的三种方法 采用伪列 rownum 查询前10条记录 ? 1 2 3 4 5 6 7 8 9 10 11 [sql] select * from t_user t whe ...

  4. 从入门到精通C++需要学的10本书

    学习C++从入门到精通的的十本最经典书籍  文章来源中国IT实验室收集整理作者佚名更新时间2009-5-16 12:27:05 保存本文保存本文推荐给好友推荐给好友收藏本页收藏本页 欢迎进入C/C++ ...

  5. 斗地主(Noip2015Day1T3)

    题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共54张牌来进行的扑克牌游戏.在斗地主中,牌的大小关系根据牌的数码表示如下:3<4< ...

  6. 基于PHP+Ajax实现表单验证的详解

    一,利用键盘响应,在不刷新本页面的情况下验证表单输入是否合法 用户通过onkeydown和onkeyup事件来触发响应事件.使用方法和onclick事件类似.onkeydown表示当键盘上的键被按下时 ...

  7. Hadoop 2.2.0学习笔记20131209

    1.下载java 7并安装 [root@server- ~]# rpm -ivh jdk-7u40-linux-x64.rpm Preparing... ####################### ...

  8. jQuery基础---filter()和find()

    这是jQuery里常用的2个方法.他们2者功能是完全不同的,而初学者往往会被误导. 首先 我们看.find()方法:现在有一个页面,里面HTML代码为;程序代码 <div class=" ...

  9. 【Todo】深入理解Java虚拟机 读书笔记

    有一个在线系列地址 <深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)> http://book.2cto.com/201306/25426.html 已经下载了这本书(60多M ...

  10. ScriptTransformer

    ScriptTransformer可能由java支持的JavaScript语言或者其他脚本语言写成的转换器.只支持Java 6以上版本. 例1: <dataConfig> <scri ...