是否可以通过访问 HDD 轻松检索 Thunderbird 的密码?

信息安全 网页浏览器 密码管理 电子邮件
2021-08-18 04:21:44

我知道 Firefox 8 将其密码存储在 SQLite 数据库中,访问硬盘很容易被盗!

雷鸟 8 怎么样?它如何存储密码以及如何找回密码?

我知道 NirSoft 有一个很好的工具来检索密码,但它与 Thunderbird > 5 不兼容。

4个回答

在 linux 上,密码数据库存储在:

/home/$USER/.thunderbird/$RANDOM_STRING.default/signons.sqlite

请参阅@Karrax 对 Windows 位置的回答。

您可以使用 sqlite3 CLI 以交互方式检查此文件:

sqlite3 ~/.thunderbird/zxcv1357.default/signons.sqlite

sqlite> .tables
moz_disabledHosts  moz_logins
sqlite> .schema moz_logins
CREATE TABLE moz_logins (id                 INTEGER PRIMARY KEY,hostname           TEXT NOT NULL,httpRealm          TEXT,formSubmitURL      TEXT,usernameField      TEXT NOT NULL,passwordField      TEXT NOT NULL,encryptedUsername  TEXT NOT NULL,encryptedPassword  TEXT NOT NULL,guid               TEXT,encType            INTEGER, timeCreated INTEGER, timeLastUsed INTEGER, timePasswordChanged INTEGER, timesUsed INTEGER);
CREATE INDEX moz_logins_encType_index ON moz_logins(encType);
CREATE INDEX moz_logins_guid_index ON moz_logins(guid);
CREATE INDEX moz_logins_hostname_formSubmitURL_index ON moz_logins(hostname, formSubmitURL);
CREATE INDEX moz_logins_hostname_httpRealm_index ON moz_logins(hostname, httpRealm);
CREATE INDEX moz_logins_hostname_index ON moz_logins(hostname);
sqlite> select * from moz_logins;
3|imap://imap.example.com|imap://imap.example.com||||MEIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIQwErTyUiOp12345GmuM2KNXcZ=|MEIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIQwErTyUiOp12345GmuM2KNXcZ=|{1234abcd-beef-feed-face-0a0a0a0a0a}|1|1320123123123|1320123123123|1320123123123|1
4|smtp://smtp.example.com|smtp://smtp.example.com||||MEIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIQwErTyUiOp12345GmuM2KNXcZ=|MEIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIQwErTyUiOp12345GmuM2KNXcZ=|{1decafbad-fa11-1234-1234-abcdef0123456}|1|1320123123123|1320123123123|1320123123123|1

如果你想从代码中获取用户名/密码,它很简单:

echo "select encryptedUsername, encryptedPassword from moz_logins;" | sqlite3 ~/.thunderbird/*.default/signons.sqlite

或您最喜欢的编程语言中的等价物,带有 sqlite3 绑定。

当然,如果它们是加密的(如上所示),您需要花一些精力来猜测用于加密的主密码。作为用户,请知道如果您使用弱主密码(例如P4ssw0rd1),那么获取明文密码将是微不足道的。

在 Thunderbird 8.0 中,我可以通过“显示密码”按钮在“选项”窗口、“安全”选项卡、“密码”选项卡、“已保存的密码”窗口中轻松查看我的所有密码。

我不确定您的意思是“如何以编程方式访问密码”。

答案是肯定的。

ThunderBird 将所有记住的电子邮件设置以及密码存储到其配置文件位置的 SQLite 数据库文件“signons.sqlite”中。不同平台的默认配置文件位置如下,

[Windows XP]
C:\Documents and Settings\<user_name>\Application Data\Thunderbird\Profiles\<random_name>.default

[Windows Vista & Windows 7]
C:\Users\<user_name>\AppData\Roaming\Thunderbird\Profiles\<random_name>.default

看起来(因为主密码的文档与两者有关)Firefox 和 Thunderbird 以相同的方式存储它们的密码。所以是的,除非你用主密码加密你的密码,否则密码很容易被找回。