boxmoe_header_banner_img

欢迎来到烨的世界~

加载中

文章导读

出了点意外研究一下导出qq聊天记录


avatar
liuye 2025年4月21日 90

主要原理是导出qq数据库然后解密

参考Android 手机QQ聊天记录导出(NTQQ),解密聊天数据库_ntqq导出群聊记录-CSDN博客

我的uid是u_ToO7EXyEetjtpZ3uWzZUJQ

qquidhash=md5后5aea6a6199c321ce0a6398b099fde62b

对QQ_UID_hash进行如下运算即可得到QQ_path_hash:QQ_path_hash = md5(md5(uid) + “nt_kernel”) = md5(“255c42fc0f4d295678e6ff0135fcf5ddnt_kernel”) = “b69bfb8e74137f4e4253d1af3e99493a”

看他格式找qqpathhash我的qqpath=00b49cb0400188f6cd296fcbc731a714

开始找地址

找到一个文件

nt_qq_00b49cb0400188f6cd296fcbc731a714

完全对的上

这是我的聊天记录数据库解析它

则聊天记录路径

/data/user/0/com.tencent.mobileqq/databases/nt_db/nt_qq_00b49cb0400188f6cd296fcbc731a714/nt_msg.db

获取密钥

使用HxD或者其他二进制查看工具打开nt_msg.db文件,将文件头部跟随在QQ_NT DB后的可读字符串复制,形如6tPaJ9GP,记为rand。(010编辑器!我第一次觉得知识有用,别绝望别绝望)

可能是XmXJyVx0这个

继续复现

此时可以计算出数据库密钥key:key = md5(QQ_UID_hash + rand) = md5(“255c42fc0f4d295678e6ff0135fcf5dd6tPaJ9GP”) =+“71c0dfcef3b5ceae7c4a1c68ca662f4a”。

密钥…….

mykey=5cabf14c68cae3231f5edd6341a94265

移除无关文件头
首先,将nt_msg.db文件删除前1024字节,这可以通过以下方式完成:

使用二进制编辑器:Android 下的 MT 管理器(需要付费)、Windows 下的 HxD 等软件均可使用,细节从略。

使用tail命令(仅 Linux):tail -c +1025 nt_msg.db > nt_msg.clean.db

使用 Python:python -c “open(‘nt_msg.clean.db’,‘wb’).write(open(‘nt_msg.db’,‘rb’).read()[1024:])”

完成后,得到nt_msg.clean.db文件。

我的uid  u_ToO7EXyEetjtpZ3uWzZUJQ

她的uid    u_l9wU0th0DF0LwdeQiq97zw



评论(0)

查看评论列表

暂无评论


发表评论