qq-win-db-key icon indicating copy to clipboard operation
qq-win-db-key copied to clipboard

除了msg3.0.db以外还能解密其他数据库吗

Open abuelogato opened this issue 1 year ago • 12 comments

这个程序除了msg3.0.db以外还能解密其他数据库吗?我想从本地数据库中获取所有好友和群列表(包括昵称、备注、账号id等),但msg.3.0中似乎没有。

abuelogato avatar Jul 23 '23 16:07 abuelogato

不确定,你可以自行修改代码试试(大概率不行) 少部分不行,比如 Info.db 以及,你确认Msg3.0.db中没有吗? 确实没有

Young-Lord avatar Jul 23 '23 16:07 Young-Lord

能破解msgex.db吗?就是2.0之前的版本

apple2099 avatar Aug 01 '23 14:08 apple2099

能破解msgex.db吗?就是2.0之前的版本

并不能,不过你为什么不直接用现有的工具呢?Python并不适合实现这个。 https://www.xitongzhijia.net/soft/85431.html https://blog.csdn.net/sahusoft/article/details/4342345

Young-Lord avatar Aug 01 '23 15:08 Young-Lord

能破解msgex.db吗?就是2.0之前的版本

请问您愿意提供一份数据库样本吗?版本太老了,我这边没有文件用于测试。

Young-Lord avatar Nov 10 '23 05:11 Young-Lord

能破解msgex.db吗?就是2.0之前的版本

请尝试 https://github.com/QQBackup/MsgEx/actions/runs/6821457336 这里下面的文件能否用于解密并导出。你需要在命令行里运行。

Young-Lord avatar Nov 10 '23 06:11 Young-Lord

这个程序除了msg3.0.db以外还能解密其他数据库吗?我想从本地数据库中获取所有好友和群列表(包括昵称、备注、账号id等),但msg.3.0中似乎没有。

经过测试,另外几个数据库是可以打开的,但我也没找到好友/群列表信息在哪里…

Young-Lord avatar Nov 10 '23 06:11 Young-Lord

像是Info.db,但那个可能不是SQLite3 hook CreateFileW的话可以看到:

C:\Users\Administrator\Documents\Tencent Files\1234561234\Info.db
0x62991024 QQ.exe!CStream::LogObjReleaseError
0x77276c40 QQ.exe!CreateFileW
0x62984898 QQ.exe!AsyncTask::RefCountedThreadSafe<CStorageIterator,AsyncTask::destruct::RefCountedThreadPtrDestruct<CStorageIterator> >::Release
0x62985f55 QQ.exe!TXOpenStorage
0x6298294e QQ.exe!AsyncTask::RefCountedThreadSafe<CStorageIterator,AsyncTask::destruct::RefCountedThreadPtrDestruct<CStorageIterator> >::Release
0x629817b9 QQ.exe!AsyncTask::RefCountedThreadSafe<CStorageIterator,AsyncTask::destruct::RefCountedThreadPtrDestruct<CStorageIterator> >::Release
0x6296ef89 QQ.exe!FS::DelErrorSink
0x62965e38 QQ.exe!FS::CreateFileW
0x6ff215b9 QQ.exe!Util::Encrypt::CreateDataStorage
0x6ff216ea QQ.exe!Util::Encrypt::CreateDataStorage
0x6ff22a08 QQ.exe!Util::Encrypt::CreateDataStorage
0x6ff23fd5 QQ.exe!Util::Encrypt::CreateDataStorage
0x5b938c16 QQ.exe!UtilCSProcessor::CreateDRCSProcessor
0x5b936a4b QQ.exe!UtilCSProcessor::CreateDRCSProcessor
0x5b92ee2a QQ.exe!UtilCSProcessor::CreateDRCSProcessor
0x5b9299a1 QQ.exe!UtilCSProcessor::CreateDRCSProcessor

与之相对的,Msg3.0.db一类会有CppSQLite3DB的backtrace:


C:\Users\Administrator\Documents\Tencent Files\1234561234\Msg3.0.db
0x6fe2c855 QQ.exe!Util::Msg::CheckObjMsg
0x77276c40 QQ.exe!CreateFileW
0x6fe61add QQ.exe!Util::Msg::CheckObjMsg
0x6fe62823 QQ.exe!Util::Msg::CheckObjMsg
0x6fe52f72 QQ.exe!Util::Msg::CheckObjMsg
0x6fe47c74 QQ.exe!Util::Msg::CheckObjMsg
0x6fe265e1 QQ.exe!Util::Msg::CheckObjMsg
0x6ff20f62 QQ.exe!CppSQLite3DB::open
0x6ff25cc3 QQ.exe!Util::Encrypt::CreateDataStorage2
0x6ff25e96 QQ.exe!Util::Encrypt::CreateDataStorage2
0x6ff22a08 QQ.exe!Util::Encrypt::CreateDataStorage
0x6ff23fd5 QQ.exe!Util::Encrypt::CreateDataStorage
0x5b938dcc QQ.exe!UtilCSProcessor::CreateDRCSProcessor
0x5b9369f9 QQ.exe!UtilCSProcessor::CreateDRCSProcessor
0x5b92ee2a QQ.exe!UtilCSProcessor::CreateDRCSProcessor
0x5b9299a1 QQ.exe!UtilCSProcessor::CreateDRCSProcessor

hook代码:

Interceptor.attach(Module.findExportByName("kernel32.dll", 'CreateFileW'), {
  onEnter(args) {
    console.log(args[0].readUtf16String());
    console.log(Thread.backtrace(this.context, Backtracer.ACCURATE).map(DebugSymbol.fromAddress).join('\\n')+'\\n');
  }
});

Young-Lord avatar Nov 10 '23 07:11 Young-Lord

从文件头D0 CF 11 E0 A1 B1 1A E1可以看得出来这是个CDF V2 Document,但可能是因为加密过,用oletools等读取不出来

Young-Lord avatar Nov 10 '23 08:11 Young-Lord

能破解msgex.db吗?就是2.0之前的版本

请尝试 https://github.com/QQBackup/MsgEx/actions/runs/6821457336 这里下面的文件能否用于解密并导出。你需要在命令行里运行。

喔,太感谢了!我试试看,如果要提供样本该如何联系您?

apple2099 avatar Nov 10 '23 08:11 apple2099

能破解msgex.db吗?就是2.0之前的版本

请尝试 https://github.com/QQBackup/MsgEx/actions/runs/6821457336 这里下面的文件能否用于解密并导出。你需要在命令行里运行。

喔,太感谢了!我试试看,如果要提供样本该如何联系您?

这里有写 https://github.com/QQBackup/MsgEx 邮件 [email protected]

Young-Lord avatar Nov 10 '23 08:11 Young-Lord

msgex.db和msg2.0.db是不同的。我这有一个3g多的msg2.0目前不知道怎么打开,头疼

hyqinglan avatar Dec 20 '23 13:12 hyqinglan

这个程序除了msg3.0.db以外还能解密其他数据库吗?我想从本地数据库中获取所有好友和群列表(包括昵称、备注、账号id等),但msg.3.0中似乎没有。

如果您还没有解决可以试试用web接口获取,可以抓包,比如群管理相关界面,QQ邮箱、QQ空间等,如果id不是QQ号可以考虑用bot插件获取

L1yp avatar Jun 26 '24 07:06 L1yp