Armazenamento em Nuvem Local

Reading time: 5 minutes

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

OneDrive

No Windows, vocĂȘ pode encontrar a pasta do OneDrive em \Users\<username>\AppData\Local\Microsoft\OneDrive. E dentro de logs\Personal Ă© possĂ­vel encontrar o arquivo SyncDiagnostics.log que contĂ©m alguns dados interessantes sobre os arquivos sincronizados:

  • Tamanho em bytes
  • Data de criação
  • Data de modificação
  • NĂșmero de arquivos na nuvem
  • NĂșmero de arquivos na pasta
  • CID: ID Ășnico do usuĂĄrio do OneDrive
  • Hora de geração do relatĂłrio
  • Tamanho do HD do SO

Uma vez que vocĂȘ tenha encontrado o CID, Ă© recomendado procurar arquivos contendo esse ID. VocĂȘ pode ser capaz de encontrar arquivos com o nome: <CID>.ini e <CID>.dat que podem conter informaçÔes interessantes como os nomes dos arquivos sincronizados com o OneDrive.

Google Drive

No Windows, vocĂȘ pode encontrar a pasta principal do Google Drive em \Users\<username>\AppData\Local\Google\Drive\user_default
Esta pasta contém um arquivo chamado Sync_log.log com informaçÔes como o endereço de e-mail da conta, nomes de arquivos, timestamps, hashes MD5 dos arquivos, etc. Até arquivos deletados aparecem nesse arquivo de log com seu correspondente MD5.

O arquivo Cloud_graph\Cloud_graph.db Ă© um banco de dados sqlite que contĂ©m a tabela cloud_graph_entry. Nesta tabela, vocĂȘ pode encontrar o nome dos arquivos sincronizados, hora de modificação, tamanho e o checksum MD5 dos arquivos.

Os dados da tabela do banco de dados Sync_config.db contĂȘm o endereço de e-mail da conta, o caminho das pastas compartilhadas e a versĂŁo do Google Drive.

Dropbox

O Dropbox usa bancos de dados SQLite para gerenciar os arquivos. Nisso
VocĂȘ pode encontrar os bancos de dados nas pastas:

  • \Users\<username>\AppData\Local\Dropbox
  • \Users\<username>\AppData\Local\Dropbox\Instance1
  • \Users\<username>\AppData\Roaming\Dropbox

E os principais bancos de dados sĂŁo:

  • Sigstore.dbx
  • Filecache.dbx
  • Deleted.dbx
  • Config.dbx

A extensĂŁo ".dbx" significa que os bancos de dados estĂŁo criptografados. O Dropbox usa DPAPI (https://docs.microsoft.com/en-us/previous-versions/ms995355(v=msdn.10)?redirectedfrom=MSDN)

Para entender melhor a criptografia que o Dropbox usa, vocĂȘ pode ler https://blog.digital-forensics.it/2017/04/brush-up-on-dropbox-dbx-decryption.html.

No entanto, as principais informaçÔes são:

  • Entropia: d114a55212655f74bd772e37e64aee9b
  • Sal: 0D638C092E8B82FC452883F95F355B8E
  • Algoritmo: PBKDF2
  • IteraçÔes: 1066

AlĂ©m dessas informaçÔes, para descriptografar os bancos de dados, vocĂȘ ainda precisa:

  • A chave DPAPI criptografada: VocĂȘ pode encontrĂĄ-la no registro dentro de NTUSER.DAT\Software\Dropbox\ks\client (exporte esses dados como binĂĄrio)
  • Os hives SYSTEM e SECURITY
  • As chaves mestras DPAPI: Que podem ser encontradas em \Users\<username>\AppData\Roaming\Microsoft\Protect
  • O nome de usuĂĄrio e senha do usuĂĄrio do Windows

EntĂŁo vocĂȘ pode usar a ferramenta DataProtectionDecryptor:

Se tudo correr como esperado, a ferramenta indicarĂĄ a chave primĂĄria que vocĂȘ precisa usar para recuperar a original. Para recuperar a original, basta usar esta receita do cyber_chef colocando a chave primĂĄria como a "senha" dentro da receita.

O hex resultante Ă© a chave final usada para criptografar os bancos de dados que podem ser descriptografados com:

bash
sqlite -k <Obtained Key> config.dbx ".backup config.db" #This decompress the config.dbx and creates a clear text backup in config.db

O config.dbx banco de dados contém:

  • Email: O email do usuĂĄrio
  • usernamedisplayname: O nome do usuĂĄrio
  • dropbox_path: Caminho onde a pasta do dropbox estĂĄ localizada
  • Host_id: Hash usado para autenticar na nuvem. Isso sĂł pode ser revogado pela web.
  • Root_ns: Identificador do usuĂĄrio

O filecache.db banco de dados contĂ©m informaçÔes sobre todos os arquivos e pastas sincronizados com o Dropbox. A tabela File_journal Ă© a que contĂ©m mais informaçÔes Ășteis:

  • Server_path: Caminho onde o arquivo estĂĄ localizado dentro do servidor (este caminho Ă© precedido pelo host_id do cliente).
  • local_sjid: VersĂŁo do arquivo
  • local_mtime: Data de modificação
  • local_ctime: Data de criação

Outras tabelas dentro deste banco de dados contĂȘm informaçÔes mais interessantes:

  • block_cache: hash de todos os arquivos e pastas do Dropbox
  • block_ref: Relaciona o ID do hash da tabela block_cache com o ID do arquivo na tabela file_journal
  • mount_table: Pastas compartilhadas do dropbox
  • deleted_fields: Arquivos deletados do Dropbox
  • date_added

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks