Tecnologia Científica

Cientista da computação identifica vulnerabilidade de javascript em milhares de sites
A estrutura ProbeTheProto desenvolvida pelo cientista da computaa§a£o Yinzhi Cao ajuda a identificar e alertar sites vulnera¡veis ​​a uma falha que permite que agentes maliciosos 'poluam' importantes ca³digos da web
Por Catherine Graham - 19/03/2022


Imagens Getty

Milhaµes de desenvolvedores usam JavaScript para criar sites e aplicativos ma³veis, tornando-o uma das linguagens de programação mais populares do mundo. Mas, de acordo com pesquisadores da Johns Hopkins, milhares de sites JavaScript são vulnera¡veis ​​a uma falha de segurança que pode resultar na manipulação do URL do site ou no roubo de informações do perfil de um usua¡rio.

Conhecida como poluição de prota³tipo, a falha permite que invasores modifiquem ou "poluam" um prota³tipo, que éuma propriedade interna de um objeto JavaScript. Um invasor que consegue alterar um prota³tipo de objeto JavaScript pode executar uma variedade de ações maliciosas.

Com um framework que eles chamam de ProbeTheProto , pesquisadores do Johns Hopkins Information Security Institute analisaram um milha£o de sites rodando em JavaScript e descobriram que mais de 2.700 sites osalguns deles os mais visitados do mundo ostinham maºltiplas falhas que poderiam expa´-los a  poluição de prota³tipos. .

Dez dos sites estavam entre os 1.000 sites mais visitados do ano, incluindo Weebly.com, CNET.com e McKinsey.com.

"NOSSA FERRAMENTA PROBETHEPROTO PODE DETECTAR DE FORMA AUTOMaTICA E PRECISA UMA AMPLA GAMA DE ATAQUES EM POTENCIAL. E DESCOBRIMOS QUE MUITOS DESENVOLVEDORES ESTaƒO FELIZES POR ESTARMOS AJUDANDO-OS A FICAR AFRENTE DAS AMEAa‡AS DE SEGURANa‡A CIBERNa‰TICA."

Yinzhi Cao
Professor assistente de informa¡tica

"Sa³ recentemente os pesquisadores começam a olhar de perto a poluição de prota³tipos e perceber que éuma questãode grande preocupação", disse o especialista em segurança cibernanãtica Yinzhi Cao , professor assistente de ciência da computação na Escola de Engenharia Johns Hopkins Whiting. "Muitos na comunidade de desenvolvedores podem não estar cientes de que as vulnerabilidades de poluição do prota³tipo podem ter consequaªncias graves."

Em Javascript, um objeto éuma coleção de dados ou funcionalidades relacionadas; por exemplo, um objeto de conta de usua¡rio pode conter dados como nomes de usua¡rio, senhas e enderea§os de e-mail. Uma vez que um invasor faz uma alteração em um prota³tipo de objeto, isso afetara¡ o funcionamento do objeto em todo o aplicativo e abrira¡ a porta para vulnerabilidades mais sanãrias, acrescenta Cao.

Ele e sua equipe começam a estudar esse efeito bola de neve usando análise dina¢mica de contaminação, um manãtodo no qual as entradas para o aplicativo são rotuladas com um marcador especial "contaminado" e os pesquisadores observam como os dados contaminados se propagam pelo programa. Se o marcador ainda estiver na saa­da do programa, os pesquisadores sabem que o aplicativo évulnera¡vel a ataques de entrada explora¡veis ​​que podem levar a alguma ação não planejada.

"Imagine um cano muito longo em uma grande caixa preta e quero saber se os pontos A e B estãoconectados. Se estiverem, posso colocar um la­quido ta³xico no ponto A para atacar o ponto B. O que fazemos ésoltar um pouco de corante vermelho na águano Ponto A e então observar a cor da águano Ponto B. Se eu puder ver que o Ponto B também évermelho, eu sei que A e B estãoconectados e então podemos lana§ar ataques", disse Cao.

Os pesquisadores identificaram três principais ataques de entrada que podem ser causados ​​pela poluição do prota³tipo: cross-site scripting (XSS), manipulação de cookies e manipulação de URL. Essas vulnerabilidades em sites paºblicos oferecem amplas oportunidades para criminosos cibernanãticos sequestrarem senhas e instalarem malware, entre outras atividades nefastas.

Cao diz que os pesquisadores tem a responsabilidade de relatar vulnerabilidades de poluição do prota³tipo aos proprieta¡rios de sites e atérecomendar o melhor patch para seu ca³digo. Graças a  equipe de Cao soando o alarme, atéagora 293 vulnerabilidades já foram corrigidas pelos desenvolvedores.

"As organizações nem sabem que essas vulnerabilidades existem. Nossa ferramenta ProbeTheProto pode detectar automaticamente e com precisão uma ampla gama de ataques em potencial. E descobrimos que muitos desenvolvedores estãofelizes por ajuda¡-los a ficar a  frente das ameaa§as de segurança cibernanãtica", disse Cao .

Os estudantes de pós-graduação em ciência da computação Zifeng Kang e Song Li contribua­ram para a pesquisa. Os membros da equipe apresentara£o seu artigo "Probe the Proto: Measuring Client-Side Prototype Pollution Vulnerabilities of One Million Real-world Websites", no Network & Distributed System Security Symposium de 24 a 28 de abril em San Diego.

 

.
.

Leia mais a seguir