A causa do incidente é esta: um amigo estrangeiro da Cyber Security postou um tweet assim no Twitter:
Esse cara afirma que, se você usar o código Javascrip{filter}t de 12 linhas acima, pode travar Firefox, Chrome, Safari e também fazer seu iPhone reiniciar e o celular Android travar!
O código HTML completo é o seguinte:
Se você é usuário de PC, depois de clicar no link, a memória da CPU do computador provavelmente vai disparar até o navegador travar e travar...
Se você for usuário móvel (Android, iPhone), seu navegador travará ao clicar no link! Clicar no link do Weibo e WeChat também trava.
Por que isso acontece? Nesse sentido, encontrei uma resposta de um deus chamado "Xiaomi" em Zhihu:
history.pushstate() é uma API introduzida pelo HTML5, pushState adiciona uma URL especificada ao histórico do navegador e armazena o ponto de histórico atual. Quando <1000000, o total será registrado no histórico do navegador de forma cíclica, e se for repetido demais, o navegador não suportará e naturalmente travará.
Bem, enfim, eu nem consigo inventar "hello world", então não entendo nada... Resumindo, é perfeito para explodir o céu!
Se quiser experimentar, clique aqui: http://www.itsvse.com/demo.html
|