type
status
date
slug
summary
tags
category
icon
password
因为最近需要从2fa中获取OTP密钥,结果微软2fa软件(Microsoft Authenticator,以下都称为微软2fa软件)无法直接查看。就想导出查看,结果导出直接出现如下报错

网上查询一下才得知所有人都无法导出。同时查询到可以直接到/data/data/com.azure.authenticator/databases/PhoneFactor目录下把密钥从数据库中导出或者通过Aegis直接从上述目录获取。但是/data是需要有root权限才能查看。
如果手机是root过的,可以使用Aegis的“从微软2fa软件导入”功能。但是手机没有root呢。
这时就可以用微软2fa软件的云同步,直接同步到模拟器里,然后开启模拟器的root权限。通过Aegis读取再到导出到手机上的Aegis或者Google 身份验证器
为什么不直接从上面文件中直接找到OTP?为什么这个文件是数据库,要用代码导出,Aegis可以一键导入到自身软件里(需要有root权限),然后导出兼容你想使用的2fa软件的配置文件
因使用微软的云同步功能,安卓走的是微软的云备份,苹果走的是iCloud。模拟器只能模拟安卓,所以下面内容只对提取安卓的微软2fa软件有用。苹果可以通过越狱找到数据文件夹尝试
一、开启微软2fa软件云同步
打开手机上微软2fa软件的设置

打开云同步,并等待同步完成

二、下载模拟器
任何有root权限的模拟器,这里使用的是mumu模拟器
下载后打开root权限


三、安装微软2fa软件和Aegis
1、微软2fa软件
打开mumu内置浏览器,输入下载Microsoft Authenticator(链接,点击打开)这个网址,点击联想

点击普通下载

2、Aegis

然后拖拽到mumu的桌面上,mumu会自动安装
四、同步并提取2fa
1、同步2fa
打开mumu上的微软2fa软件,选择从备份还原,这样2fa才能同步到mumu的微软2fa软件上

出现下面内容,说明能正常同步

同步成功后检查是否缺少2fa,缺少就回到第一步,重新打开云同步来重新备份
2、提取2fa
打开mumu上的Aegis,跳过密码设置

打开右上角设置

点击 导入&导出

点击从应用导入

选择Microsoft Authenticator

允许获取root权限,并检查后点击右下角确认


最后会显示成功导入多少

五、导出2fa
1、二维码方式,目标软件可以为Aegis或Google 身份验证器
点击Google身份验证器导出,会出现两个二维码

用Aegis或Google 身份验证器依次扫码即可
2、文件方式,目标软件仅能为Aegis
但无加密的文件夹内有issuer,type等,可以手动导入到不直接兼容的软件
下面点击导出

取消勾选加密数据库(因为mumu这里无法输入密码)

选择下载或任意一个文件夹,并点击右下角保存

点击文件传输,打开电脑共享路径


文件就在对应的文件夹里

参考文献
[1] 手动导出 Microsoft Authenticator 的密钥?[EB/OL]. 2025-03-10. https://www.nodeseek.com/post-286083-1.
[2] 手动导出 Microsoft Authenticator 中的密钥 [EB/OL]. 2023-10-05. https://chuibi.com/2023/10/05/%E6%89%8B%E5%8A%A8%E5%AF%BC%E5%87%BA-microsoft-authenticator-%E4%B8%AD%E7%9A%84%E5%AF%86%E9%92%A5/.
[3] beemdevelopment. Feature request: export all entries in plaintext · Issue #186 · beemdevelopment/Aegis [EB/OL]. 2019-08-29. https://github.com/beemdevelopment/Aegis/issues/186.
有关安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
- 作者:akina
- 链接:blog.iakina.de/blog.iakina.de/2fa
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。