近日,日本刈谷市警方抓了一名13歲的小女孩,原因是“她將一段惡意代碼的鏈接放到了網上,導致一千多臺電腦系統崩潰。”
其實,這就是一個入門級的惡作劇無限彈窗而已,只要你點了“確定”按鈕,這個“可愛的”窗口就會一直彈出。
彈窗的內容是:主要由顏文字(kaomoji)組成的一句話,大概的意思就是:“多次關閉它是沒用的。” ╮(╯▽╰)╭
而代碼也是簡單到不能再簡單了,只需形成一個無限循環和一個警告框即可:
for ( ; ; ) {
window.alert(" ∧_∧ ババババ\\n( ・ω・)=つ≡つ\\n(っ ≡つ=つ\\n`/ )\\n(ノΠU\\n何回閉じても無駄ですよ~ww\\nm9(^Д^)プギャー!!\\n byソル (@0_Infinity_)")
}
後來,警察們終於發現了,他們抓錯人了,這並不是導致 1507臺計算機系統在一天內崩潰的罪魁禍首。
警方把小女孩抓回去後,又仔細核查了公告欄的用戶日誌,發現涉嫌附有惡意代碼鏈接的人,除了這位小女孩外,還大有人在。
為此,警方又抓了兩個人,一名待業青年和一名中年建築工人,審完才知道,這三個人都不是這段代碼的真正編寫者。
實際上,女孩的“無限循環”代碼只是一個惡作劇,“其實網上很多這種惡作劇的啊,這只是我修改的一個顏文字版本,你們不覺得很可愛嗎?”
而且,警察們在他們的電腦上根本就看不到女孩說的這個“惡意循環”的顏文字窗口,因為他們電腦上的瀏覽器限制了彈出式窗口。
其實,每款主流的桌面瀏覽器對這種無限彈窗都有處理方案,而且絕大部分的瀏覽器都是默認阻止彈出式窗口的。
比如說,Edge可以阻止頁面顯示後續對話框,而 Chrome 可以關閉選項卡。
Edge 瀏覽器可方便阻止 JavaScript 無限警告的循環
事後,不少網友發出質疑:為什麼不去抓真正讓計算機系統崩潰的黑客,而抓住這個簡單的腳本不放,真是讓人摸不著頭腦。
甚至還有GEEK為了抗議日本警察採取的行動和將此行為定為犯罪的荒謬做法,在GitHub上公然發起挑釁。
東京開發者 Kimikazu Kato 在 GitHub 上創建了一個名為 Let's Get Arrested(中文翻譯:來逮捕我們呀)的項目。
https://github.com/hamukazu/lets-get-arrestedFork 這個項目,然後創建一個名為 gh-pages 的分支,就能創建一個託管在 GitHub 上的簡單網站,該網站只含有無限循環警告,不得不說這裡簡直就是“犯罪”重地啊。
https://github.com/hamukazu/lets-get-arrested/blob/master/README.zh_hans.md
不僅如此,項目還提供了多國語言版本,好讓全球的小夥伴們都能體驗一下“犯罪的感覺”:
閱讀更多 南叔三話 的文章