皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

13岁女学生被捕:因发布 JavaScript 无限循环代码

这名13岁女孩被指控传播未经授权的恶意程序。

日本刈谷市警方近日质询并指控了一名13岁的女学生,起因是她将一段恶意代码的链接放到了在线公告栏上,广泛传播代码。这段有问题的恶意代码是弹出警告消息的无限循环,每当你点击“确定”就会立即显示新的消息。

对代码感兴趣的童鞋可点击这里进行访问。

13岁女学生被捕:因发布 JavaScript 无限循环代码

13岁女学生被捕:因发布 JavaScript 无限循环代码

可以看到,这就是十分常见的恶作剧无限弹窗,点了“确定”按钮,这个窗口便会一直弹出。这里的效果就是输出颜文字(kaomoji)和一条短消息,翻译过来就是“多次关闭它是没用的。”

不过通过移动浏览器访问可能看不到这个效果,因为它们普遍都默认阻止弹出式窗口。而每款主流的桌面浏览器对这种无限弹窗也都有处理方案。比如说,Edge 浏览器提供了一个复选框,可以阻止页面显示后续对话框,而 Chrome 让你可以关闭选项卡 —— 尽管有对话框。

13岁女学生被捕:因发布 JavaScript 无限循环代码
△ 微软 Edge 浏览器让人们很容易阻止 JavaScript 无限警告的循环

代码本身极其简单,它最终的效果不过是产生一个无限循环和一个警告框:

for ( ; ; ) {
window.alert(" ∧_∧ ババババ\n( ・ω・)=つ≡つ\n(っ ≡つ=つ\n`/  )\n(ノΠU\n何回閉じても無駄ですよ~ww\nm9(^Д^)プギャー!!\n byソル (@0_Infinity_)")
}

代码就长这样,不过这与短短一天内导致1507台计算机系统崩溃的代码不完全一样。

警方在调查这起犯罪行为时仔细检查了公告栏的用户日志,发现其他人也涉嫌附有链接。为此,警方搜查了一名失业男子和一名47岁的建筑工人所住的房子。这三个人中没有一个人被指控实际编写这个无限循环。女孩解释其行为时称,自己经常遇到这样的恶作剧,以为如果有人点击链接会很好玩。

消息中出现的推特用户 0_Infinity_ 有一个受保护的帐户,但该用户在自我介绍部分留下了一条消息,表明他们不明白为什么这个脚本在今天引起如此大的动静,该脚本是在2014年编写的。

为了抗议日本警察采取的行动和将此行为定为犯罪的荒谬做法,东京开发者 Kimikazu Kato 在 GitHub 上创建了一个名为 Let’s Get Arrested(来逮捕我们)的仓库(https://github.com/hamukazu/lets-get-arrested)。

fork 这个项目,然后创建一个名为 gh-pages 的分支,就能创建一个托管在 GitHub 上的简单网站,该网站只含有无限循环警告,犯罪行为简直触手可及。

13岁女学生被捕:因发布 JavaScript 无限循环代码
△ https://github.com/hamukazu/lets-get-arrested/blob/master/README.zh_hans.md

13岁女学生被捕:因发布 JavaScript 无限循环代码
△ 提供了多语言版本

参考:云头条https://arstechnica.com/