
Transmissão de Informações Sensíveis em Texto Claro no Aplicativo Android EagleEyes Lite
No EagleEyes Lite (versão 2.0.0), o método GetHttpsResponse() transmite informações sensíveis como IDs de conta, senhas, tokens de dispositivo e URLs de servidor interno diretamente na string de consulta de uma requisição HTTPS.
Por essas credenciais e tokens estarem embutidos na URL em vez de serem colocados de forma segura no corpo da requisição, eles podem ser facilmente extraídos por qualquer adversário realizando um ataque MITM.
Mesmo que a conexão nominalmente use HTTPS, a exposição de tais parâmetros sensíveis em texto claro dentro da URL aumenta significativamente o risco de vazamento de credenciais e acesso não autorizado aos sistemas CCTV da AVTECH.
Essa fragilidade compromete a confidencialidade dos dados do usuário e torna o aplicativo particularmente vulnerável quando operado em redes não confiáveis.
Quando o dispositivo roda em versões do Android abaixo de 8.0, ou seja, SDK_API_26 está definida como false, o método não retorna GetHttpsUrlResponse().
Em vez disso, ele executa a lógica vulnerável dentro do bloco try.
public static String GetHttpsResponse(String str) {
if (SDK_API_26) {
return GetHttpsUrlResponse(str);
}
try {
...
HttpResponse execute = new DefaultHttpClient(
new SingleClientConnManager(defaultHttpClient.getParams(), schemeRegistry),
defaultHttpClient.getParams()
).execute(new HttpPost(str));
...
}
...
}
Aqui, o parâmetro str contém a URL completa da requisição, que incorpora informações sensíveis como account_id e password diretamente na string de consulta.
Como resultado, as credenciais do usuário são expostas em texto claro dentro da URL, tornando-as suscetíveis a vazamento se interceptadas por um ataque MITM ou registradas por sistemas intermediários.
Ao executar o script de hooking Frida hook.js, confirmamos que o método GetHttpsResponse() foi invocado e que a URL da requisição gerada continha informações sensíveis (como account_id e password) em texto claro.
Para uma análise detalhada da implementação vulnerável GetHttpsResponse(), consulte CVE-2025-46408.
O aplicativo nunca deve incluir informações sensíveis como ID de conta, senha ou tokens de autenticação em parâmetros de URL.
Em vez disso, as credenciais devem ser transmitidas de forma segura dentro do corpo da requisição HTTPS usando parâmetros POST. Isso evita que valores sensíveis sejam expostos em URLs, logs ou sistemas intermediários.