Hoje eu vou mostrar as três melhores ferramentas para extrair metadados de PDFs e imagens. Primeiro, o pdfinfo — ótimo para verificar autores, datas de criação e o software utilizado. Depois, o ExifTool — o extrator de metadados mais poderoso, revelando GPS, informações do dispositivo e metadados avançados. E por fim, o Metadata2Go — um analisador online rápido para quando você precisa de resultados imediatos. Use essas ferramentas no seu workflow de OSINT para verificar documentos, rastrear a origem de fotos e descobrir detalhes ocultos.”🎥 Extração de Metadados de PDF e Imagens — Tutorial Completo Neste vídeo, eu compartilho diferentes técnicas e ferramentas que você pode usar para extrair metadados de imagens ou arquivos PDF. Vamos analisar três ferramentas essenciais: Pdfinfo, ExifTool e Metadata2Go. 🔹 1. PDFINFO — Extraindo Metadados de PDFs (Ferramenta Local) O que faz: O pdfinfo lê os metadados estruturais e de autoria armazenados dentro de arquivos PDF. ✅ Como usar (Linux...
Gerar link
Facebook
X
Pinterest
E-mail
Outros aplicativos
UBER HACKING: COMO DESCOBRIMOS QUEM VOCÊ É, ONDE VOCÊ ESTÁ E PARA ONDE FOI!
Para a nossa sorte, Uber decidiu abrir o seu programa de recompensas de bug ao público, e em Portugal, Uber era quase uma questão diária nas notícias por causa dos motoristas de táxi, então nós mergulhamos diretamente nesse programa.
Depois de um par de horas, descobrimos dois redirecionamentos abertos que relatamos imediatamente. Este poderia ser o começo de algo bom (nós pensamos), mas ambos os problemas já foram relatados por outros pesquisadores.
No início, foi um pouco decepcionante, mas não desistindo dobramos e decidimos implementar alguns processos / metodologias.
O Processo / Metodologia
A fim de implementar algum tipo de metodologia, voltamos para o programa de recompensas de bugs Uber para verificar novamente seu escopo, que é muito extenso como pode ser visto abaixo:
Https: //*.uber.com/
Http: //*.uberinternal.com/ (adicionado mais tarde no programa)
Http://petition.uber.org
Http://ubermovement.com
Aplicativo iPhone Rider
Aplicativo de parceiro do iPhone
Aplicativo Android Rider
Aplicativo para parceiros Android
Coleta de informações
Para reunir mais informações sobre os subdomínios Uber, começamos com uma força bruta dns.
Exemplo de subdomínios recuperados com sublist3r
Com todos os subdomínios enumerados, tudo o que restava a fazer era usar o nmap e verificar se havia banners, títulos de página, redirecionamentos de página, bem como exploit-db e alguns blogs para vulnerabilidades conhecidas.
Para os aplicativos móveis, jd-gui foi usado para ler as classes Java, a fim de mapear os terminais móveis, mais tarde, também se voltou para MobSF .
API endpoints reunidos com jd-gui
Agora, a julgar pelas informações que reunimos, sentimos que era mais que suficiente para começar a procurar algumas vulnerabilidades.
Vulnerabilidades
0 × 01 - Possibilidade de códigos promocionais de força bruta em riders.uber.com
Uber tem um recurso que permite o uso de códigos de promoção. Estes códigos podem ser dados por outros usuários ou empresas. A aplicação riders.uber.com tinha esse recurso na página de pagamento, de modo que após a adição de um novo código de promoção que agarrou o pedido e percebeu que a aplicação não teve qualquer tipo de proteção contra ataques de força bruta, o que nos ajudou a encontrar Muitos códigos de promoção diferentes.
Formulário de página Promoções - sem qualquer código de promoção aplicado
A imagem abaixo ilustra nosso ataque de força bruta. Como dito antes códigos diferentes foram encontrados e podem ser distinguidos por sua resposta.
Comprimento das respostas:
1951 - Código válido
1931 - Não válido
1921 - Código Expirado
Exemplo de ataque de força bruta
Uber também dá uma opção para personalizar códigos de promoção, e como todos os códigos padrão começaram com a palavra "uber", foi possível diminuir o tempo da força bruta, permitindo-nos consideravelmente mais de 1000 códigos válidos.
Inicialmente esta edição não foi considerada válida porque os códigos das promoções são supostos ser públicos e ser dado por qualquer um. Isto era verdade até encontrar um $ 100 ERH (Emergency Ride Home) código que eles (equipe uber-sec) não tinha conhecimento sobre. Estes códigos ERH funcionam de forma diferente de todos os outros desde mesmo se um código de promoção já é aplicado estes ainda podem ser adicionados.
Formulário vulnerável com código ERH aplicado
CRONOGRAMA DE DIVULGAÇÃO
23 de março de 2016 - Bug relatou a UBER
23 de março de 2016 - A equipe de Uber alterou o estado para Informativo
24 de março de 2016 - Nós forneceu novas informações
24 de março de 2016 - A equipe de Uber alterou o estado para triaged
19 de abril de 2016 - A equipe de Uber alterou o estado para resolvido
02 de maio de 2016 - Uber nos recompensou com uma recompensa.
Como você pode ver na imagem abaixo, dentro da aplicação móvel Uber riders existe uma seção "Ajuda" que permite aos usuários enviar perguntas diretamente para suporte. Vamos ser honestos, muitos de nós quase nunca usamos a "Ajuda" ou mesmo sabemos que ela existe, mas como pentesters não podemos dizer não a outra forma. (Mais tarde descobrimos que o aplicativo Partners tinha os mesmos formulários).
Função de ajuda
Depois de enviar uma pergunta, o servidor respondia com a mensagem: "Recebemos o seu pedido e entrará em contato o mais rápido possível através de <my-email-address> ". Olhando para esta mensagem, pensamos que talvez pudéssemos enumerar alguns e-mails de usuários.
Solicitar o envio de uuid em vez de token
Ao analisar o pedido, existem dois locais (o cabeçalho x-uber-uuid eo parâmetro uuid) que podem permitir-nos obter e-mails de outros utilizadores se os alterarmos para outro UUID válido. Nós tentamos mudar ambos, mas infelizmente o servidor retornou o nosso e-mail novamente. Embora haja um parâmetro de token também, a nossa primeira abordagem foi fuzz um pouco para este parâmetro, mas no final, acabamos por alterá-lo para outro usuário UUID e algo mágico aconteceu, o servidor retornou o endereço de e-mail para esse usuário.
Servidor respondeu com e-mail associado ao uuid
É um pouco difícil dizer por que um UUID foi interpretado como um token válido, mas é de fato.
Como o aplicativo não estava restringindo nossos pedidos neste nó de extremidade, pegamos uma pequena quantidade de UUIDs e com eles conseguimos obter todos os e-mails correspondentes a esses UUIDs. Agora você provavelmente está perguntando: "como você pode saber UUIDs de outros usuários?", Isso é o que vamos explicar mais tarde.
CRONOGRAMA DE DIVULGAÇÃO
31 de março de 2016 - erro relatado para Uber
31 de março de 2016 - A equipe de Uber alterou o estado para triaged
11 de abril de 2016 - A equipe de Uber mudou de status para Resolvido
13 de abril de 2016 - Uber-nos recompensado com uma recompensa.
0 × 03 - Enumerando UserIDs com números de telefone (duplicados)
Ao procurar vulnerabilidades, sempre tentamos encontrar todos os recursos do aplicativo / webapp, especialmente aqueles que não são facilmente encontrados ou usados. Com isso em mente, decidimos obter os nossos telefones, computadores e chamado para um Uber e por isso fizemos. Durante a nossa viagem, interceptamos todos os pedidos e um desses pedidos chamou a nossa atenção.
Solicitar convite para dividir a tarifa
Esse pedido ocorre quando um usuário tenta dividir sua tarifa com outras pessoas. Para convidar alguém para dividir a tarifa, o usuário precisa adicionar um número de telefone de sua lista de contatos.
O problema aqui é que a resposta está vazando informações demais, como driver UUID, UUIDs convidados ea imagem de convidados, mesmo antes de aceitar a divisão de tarifa.
Você pode ver o aplicativo vazando as informações nas fotos abaixo:
Resposta vazando informações sobre o usuário convidado [1/2]Resposta vazando informações sobre o usuário convidado [2/2]
Lembre-se antes quando lhe dissemos que nós explicaríamos como conseguimos uma lista de UUIDs? É assim!
Agora, juntando-se a esta vulnerabilidade com a anterior, poderíamos obter anyones endereço de e-mail que estava associado ao número de telefone.
Infelizmente, depois de reportar este problema, foi marcado como duplicado .
CRONOGRAMA DE DIVULGAÇÃO
06 de abril de 2016 - Bug relatou a UBER
07 de abril de 2016 - A equipe de Uber alterou o estado para Necessidades mais informações
07 de abril de 2016 - Nós forneceu novas informações
07 de abril de 2016 - A equipe de Uber alterou o estado para Duplicar
0 × 04 - Utilizar a aplicação de parceiros / controladores sem ser activada (duplicada)
Cada usuário é capaz de criar uma conta de driver, mas permanece não ativado até Uber verificar todos os seus documentos de driver.
Depois de começar a testar o aplicativo Parceiro / Driver, percebemos que você só pode entrar no aplicativo para celular após o processo de ativação.
Resposta de "conta de driver não ativada"
Olhando sobre o pedido da resposta acima, você pode ver um parâmetro chamado allowNotActivated e seu valor era falsa .
Pedido com novo valor no parâmetro "allowNotActivated"
Ao manipular a solicitação de login e alterar o parâmetro allowNotActivated a verdade, foi possível obter um token de sessão válido. Assim, pelo menos, isso significa que o servidor criar um token válido mesmo quando a conta não foi ativada.
Novo token criado
Como você pode ver na resposta, há um campo chamado IsActivated setado para falso . Alterar isso para true nos permitiu entrar no aplicativo.
Interface do aplicativo de parceiros móveis
Agora temos um par de novos recursos para testar.
CRONOGRAMA DE DIVULGAÇÃO
31 de março de 2016 - erro relatado para Uber
31 de março de 2016 - A equipe de Uber alterou o estado para Necessidades mais informações .
31 de março de 2016 - Nós forneceu novas informações
07 de abril de 2016 - A equipe de Uber alterou o estado para duplicado
0 × 05 - Possibilidade de visualizar o Waybill do condutor via Driver UUID
Usando a vulnerabilidade anterior, conseguimos testar uma nova funcionalidade chamada waybill. Criando o pedido que o aplicativo envia, notamos que ele tem uma vulnerabilidade de controle de acesso quebrada que nos permitiu ver a última viagem de cada driver, apenas conhecendo seu uuid.
Pedido de carta de mudança de outro condutor
Para obter um driver UUID você pode, por exemplo, solicitar um carro aleatório, deixe o motorista aceitar a viagem e depois disso você cancelá-lo. Enquanto isso você é capaz de capturar o driver UUID.
Na resposta deste pedido, conseguimos obter o nome do condutor, placa de matrícula, último tripUUID, último nome do passageiro, número de passageiros, a origem eo destino da viagem.
Resposta detalhada do guia de condução do condutor
Observe o TRIP # nesta resposta? Para obter o caminho completo da viagem, acabamos descobrindo uma nova funcionalidade que retorna o caminho completo da viagem , o nome do driver , nome do cliente , placa de licença e até mesmo o modelo do carro.
Esta funcionalidade não poderia ser detalhada neste momento, mas assim que estivermos autorizados, vamos falar sobre isso.
Caminho completo da viagem
CRONOGRAMA DE DIVULGAÇÃO
31 de março de 2016 - erro relatado para Uber
01 de abril de 2016 - A equipe de Uber alterou o estado para triaged
13 de abril de 2016 - A equipe de Uber mudou de status para Resolvido
18 de abril de 2016 - Uber-nos recompensado com uma recompensa.
0 × 06 - Informações sobre viagens de outros usuários
Lembre-se da vulnerabilidade 0 × 03, onde descobrimos que alterando o token por um UUID poderíamos representar outro usuário?
Solicitando viagens associadas ao uuid (no token)
A solicitação acima permite que um usuário veja as viagens feitas por ele mesmo. Observe que, no pedido, há cabeçalhos de sessão ou cookies de sessão. Todos os detalhes ** session ** são enviados via parâmetros GET.
Alterando o uuid realçado e mantendo o token original, o servidor retorna um 403 acesso não autorizado. Se mudarmos o UUID eo token para o UUID do usuário que você quer ver as viagens, temos um monte de novas informações
Essa foi a resposta ao solicitar viagens enviando o mesmo valor nos campos UUID e TOKEN.
Lista de viagens associadas ao UUID
Como pode ser visto, fomos capazes de obter a data da viagem, nome do condutor e imagem, o id e custo da viagem eo mapa de onde ele foi.
A resposta acima demonstra apenas uma viagem única, mas a resposta completa nos dá todas as viagens feitas pelo usuário.
CRONOGRAMA DE DIVULGAÇÃO
31 de março de 2016 - erro relatado para Uber
31 de março de 2016 - A equipe de Uber alterou o estado para triaged
05 de abril de 2016 - A equipe de Uber mudou de status para Resolvido
13 de abril de 2016 - Uber-nos recompensado com uma recompensa.
E quanto aos lucros?
VULNERABILIDADES DUPLICADAS
#
Vulnerabilidade
Relatado em
1
Abrir redirecionamento em trip.uber.com
23/03/2016
2
Abrir redirecionamento em riders.uber.com
23/03/2016
3
Possibilidade de enumerar usuários através do getrush.uber.com e login bruteforce via app do iOS para obter uma conta válida
26/03/2016
4
Possibilidade de baixar app beta como admin (Riders app IOS)
30/03/2016
5
Utilizar a aplicação de parceiros / controladores sem estar activada
31/03/2016
6
Enumerando IDs de usuário com números de telefone
06/04/2016
VULNERABILIDADES TRIAGEM / FECHADA
#
Vulnerabilidade
Relatado em
Recompensa
1
Possibilidade de invocar códigos de força bruta em riders.uber.com
23/03/2016
Pago
2
A ser divulgado
24/03/2016
Esperando..
3
A ser divulgado
25/03/2016
Esperando..
4
Possível ver o Waybill do condutor via Driver UUID
31/03/2016
Pago
5
Possibilidade de obter email privado usando UUID
31/03/2016
Pago
6
Informações sobre viagens de outros usuários
31/03/2016
Pago
7
A ser divulgado
07/04/2016
Esperando..
8
A ser divulgado
13/04/2016
Esperando..
Conclusão
Este foi o nosso primeiro programa de recompensas de bugs que realmente dedicamos algum tempo, e achamos que teve um resultado positivo. No início não estávamos muito confiantes com este programa, porque muitas pessoas já tinham testado Uber no programa privado, mas depois de algum tempo e quando começamos a encontrar algumas boas vulnerabilidades nos deu o impulso para continuar e ver onde ele Poderia nos levar.
Para as pessoas que estão começando os programas de bounty bug, o nosso conselho é: nunca desista ou ter medo, se é uma grande empresa, apenas se divertir e tentar aprender o máximo possível ao longo do caminho e no tempo os lucros virão.
Como uma nota final para o nosso artigo, queremos dizer que Uber deve fornecer contas de teste para caçadores de bugs. Durante nossos testes tínhamos nossas contas sendo bloqueadas devido à natureza dos nossos testes e para desbloqueá-los, foi um pouco de um pesadelo. Nesse momento tentamos conversar com a equipe de suporte da Uber e eles não ajudaram muito, então a única coisa a fazer foi tentar conversar diretamente com a equipe de segurança. Neste caso, temos de dizer que eles ajudaram, e muito! (Um grande obrigado a todos eles).
Com isto dito, nós pensamos que Uber tem um dos melhores programas da recompensa do erro, com payouts grandes.
Do ponto de vista de um pentester, a equipe de segurança leva este programa muito a sério, tentando resolver todos os problemas o mais rápido possível.
Comentários
Postar um comentário