Estou executando o Debian Linux e, resumindo, tive uma falha no SSD. Recuperei com êxito partes da minha pasta de usuário, como os diretórios .config e .local.
Instalei um novo sistema em uma unidade nova. Copiei meu diretório .config/chromium para o novo usuário, mas sempre que inicio o chromium ocorre o seguinte erro no console:
ERRO:login_database.cc(1047)] Falha na descriptografia da senha, o resultado_criptografia é 2
O navegador funciona, mas todas as minhas senhas armazenadas são ilegíveis pelo navegador, HackBrowserData e outras ferramentas mostram apenas lixo. O arquivo sqlite de dados de login tem todas as entradas intactas, mas não sei como o Chrom(e|ium) cria a chave que é usada para criptografar as entradas. Eu tenho o
- completar a pasta .config/chromium
- completar a pasta .local/share
- completar a pasta /etc
- senha de login do usuário
O que mais é necessário ou que fonte este navegador usa para construir sua chave de criptografia?
Pelo menos anteriormente 1 , Chrome e Chromium costumavam colocar a chave de criptografia no "chaveiro" do ambiente de desktop (por exemplo, chaveiro GNOME ou qualquer outro chaveiro compatível com libsecret disponível).
O GNOME Keyring armazena seus dados em
~/.local/share/keyrings/
, geralmente há apenas um únicologin.keyring
em uso. (Você pode usar o Seahorse ou uma versão muito recente do KeyRack para navegar no chaveiro.) Embora seja possível simplesmente colocar vários chaveiros lá, isso não funcionará com o Chrome, pois sua entrada especial não tem indicação de qual perfil do Chrome ele pertence para, então o libsecret continuará retirando a entrada errada. Portanto, você deve mover o existentelogin.keyring
para outro local, colocar o chaveiro de recuperação em seu lugar, reiniciar o 2 e verificar se ele aparece no Seahorse.O chaveiro em si geralmente é criptografado usando a senha de login do sistema operacional, mas se as senhas não corresponderem, ele solicitará a senha correta na primeira vez em que for usado, portanto, não é necessário alterá-lo para recuperação.
A entrada específica que o Chrome usa pode ser lida usando o já mencionado Seahorse ou usando:
1 (antes de voltar para o Firefox)
2 (tecnicamente, saia, mas há alguma complexidade adicional relacionada a isso que não tenho energia para explicar, então reinicie)
As senhas do Chrome/Chromium são criptografadas e a criptografia está vinculada ao sistema instalado e à senha do usuário. Isso torna difícil migrá-los para outro computador.
No Windows isso é relativamente fácil, porque as senhas são armazenadas na pasta Chrome de “Dados do usuário”. A própria chave de criptografia é encontrada no registro, portanto, a migração de ambos os itens migra também as senhas. (Veja o link para detalhes.)
Para Linux, isso é mais difícil, pois a chave de criptografia fica oculta.
O projeto Github ohyicong/decrypt-chrome-passwords contém um script python para descriptografar a senha. O script foi escrito para Windows, mas para Linux pode ser adaptado. Acho que a maior parte da adaptação pode ser feita definindo duas variáveis no início do roteiro.
O script é explicado em detalhes no artigo
Como descriptografar a senha do Chrome com Python? .
Há também um vídeo no YouTube que explica o processo em
Como extrair senhas em texto simples do Google Chrome .