mirror of
https://github.com/bitwarden/browser.git
synced 2024-11-25 12:15:18 +01:00
PM-12102 | Fix LastPass importer not properly de-encrypting URLs (#11366)
* PM-12102 | Fix LastPass importer not properly de-encrypting URLs * Reuse the original code for the unencrypted path * Add some comments
This commit is contained in:
parent
68f4c2e879
commit
359b6e02d9
@ -22,7 +22,7 @@ export class Parser {
|
||||
/*
|
||||
May return null when the chunk does not represent an account.
|
||||
All secure notes are ACCTs but not all of them store account information.
|
||||
|
||||
|
||||
TODO: Add a test for the folder case!
|
||||
TODO: Add a test case that covers secure note account!
|
||||
*/
|
||||
@ -60,9 +60,17 @@ export class Parser {
|
||||
|
||||
// 3: url
|
||||
step = 3;
|
||||
let url = Utils.fromBufferToUtf8(
|
||||
this.decodeHexLoose(Utils.fromBufferToUtf8(this.readItem(reader))),
|
||||
);
|
||||
const urlEncoded = this.readItem(reader);
|
||||
let url =
|
||||
urlEncoded.length > 0 && urlEncoded[0] === 33 // 33 = '!'
|
||||
? // URL is encrypted
|
||||
await this.cryptoUtils.decryptAes256PlainWithDefault(
|
||||
urlEncoded,
|
||||
encryptionKey,
|
||||
placeholder,
|
||||
)
|
||||
: // URL is not encrypted
|
||||
Utils.fromBufferToUtf8(this.decodeHexLoose(Utils.fromBufferToUtf8(urlEncoded)));
|
||||
|
||||
// Ignore "group" accounts. They have no credentials.
|
||||
if (url == "http://group") {
|
||||
|
Loading…
Reference in New Issue
Block a user