O autor do mitmproxy, uma ferramenta para análise de tráfego HTTP/HTTPS, chamou a atenção para o surgimento de um fork de seu projeto no catálogo de pacotes Python, PyPI (Python Package Index). O fork era distribuído sob um nome semelhante, mitmproxy2, e uma versão inexistente 8.0.1 (a versão atual do mitmproxy é 7.0.4), na expectativa de que usuários desatentos confundissem o pacote com uma nova edição do projeto principal (typosquatting) e quisessem experimentar a nova versão.
Em termos de composição, o mitmproxy2 era semelhante ao mitmproxy, exceto pelas modificações que implementavam funcionalidades maliciosas. As alterações envolviam a remoção do cabeçalho HTTP "X-Frame-Options: DENY", que proibia o processamento de conteúdo dentro de iframes, a desativação da proteção contra ataques XSRF e a inclusão dos cabeçalhos "Access-Control-Allow-Origin: *", "Access-Control-Allow-Headers: *" e "Access-Control-Allow-Methods: POST, GET, DELETE, OPTIONS".
As alterações mencionadas eliminaram as restrições de acesso à API HTTP utilizada para gerenciar o mitmproxy através da interface web, permitindo que qualquer invasor na mesma rede local, ao enviar uma solicitação HTTP, executasse seu código no sistema do usuário.
A administração do catálogo concordou que as mudanças implementadas podiam ser interpretadas como maliciosas, e que o próprio pacote era uma tentativa de promover outro produto sob a aparência do projeto principal (na descrição do pacote, afirmava-se que era uma nova versão do mitmproxy, e não um fork). Após a remoção do pacote do catálogo, no dia seguinte, um novo pacote mitmproxy-iframe foi enviado ao PyPI, cuja descrição também coincidía completamente com a do pacote oficial. Atualmente, o pacote mitmproxy-iframe também foi removido do catálogo do PyPI.
Fonte: opennet.ru
