カランのブログ

Kalan 頭像照片,在淡水拍攝,淺藍背景

四零二曜日電子報上線啦!訂閱訂起來

ソフトウェアエンジニア / 台湾人 / 福岡生活
このブログはRSS Feed をサポートしています。RSSリンクをクリックして設定してください。技術に関する記事はコードがあるのでブログで閲覧することをお勧めします。

今のモード ライト

我會把一些不成文的筆記或是最近的生活雜感放在短筆記,如果有興趣的話可以來看看唷!

記事のタイトルや概要は自動翻訳であるため(中身は翻訳されてない場合が多い)、変な言葉が出たり、意味伝わらない場合がございます。空いてる時間で翻訳します。

無限なアラートループイベント

本稿はウィキペディアから翻訳され、CC BY-SA 3.0ライセンスに従って共有されています。

前書き

この件は日本で発生しましたが、台湾にも類似の事例があるようです。コンピュータ使用妨害罪の定義が曖昧であり、訴訟の道具となりやすいため、開発者として理解する価値があると考えます。この記事は事例共有を目的としており、ユーザー操作に悪意のある行為を助長するものではありません。

事件概要

2019年3月、兵庫県警察は悪意のあるコードを含むリンクを電子掲示板に投稿したため、「不正指令電磁的記録に関する罪」の疑いで女子中学生の自宅を捜索し、2人の男性を逮捕しました。3月25日、日本ハッカー協会は2人の男性の弁護士費用と訴訟費用の募金を開始し、合計553人から700万円の寄付を集めました。同年5月29日、2人の男性は起訴猶予処分となり、この事件には被害者はいませんでした。

2人の男性の一人は、「特定の携帯電話モデルでは、リンクをクリックすると画面を閉じることができないか、修理や専門家に頼む必要がある場合があり、『反意圖性』というコンピュータウイルス罪の要件に違反する可能性がある」と検察官が主張を変更しなかったと述べています。

2人の男性を弁護した横浜パーク法律事務所の弁護士は、この件を知った後、「猶予処分は『犯罪があるが今回は起訴しない』という立場で視聴覚を混乱させようとするものであり、検察官は有罪と認識しているが、個別の事情により猶予処分を選択した。法律専門家である検察官としては、そうしなければ社会から批判されるだろう」と検察官を批判しました。

コード

以下はJavaScriptのコードです。

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

window.alertは指定された文字列を受け取り、OKボタンを持つダイアログボックスを表示します。OKボタンを押すとダイアログボックスが閉じます。このコードは無限ループのため、ダイアログボックスを閉じた後に再びダイアログボックスが表示されます。この動作はユーザーがブラウザのタブを閉じるまで続きます。

window.alertはダイアログボックスが閉じるまで他の処理を実行することができないため、このコードはブラウザには影響を与えません。したがって、「ブラウザクラッシャー」ではなく「いたずらプログラム」として扱われます。

ほとんどのPCブラウザでは、タブを閉じればこのコードを停止することができます。また、現在のブラウザでは、alertが1回以上表示されると「ダイアログボックスの表示を停止する」オプションが表示され、継続的なダイアログボックスの表示を停止することもできます。

反応

この事件は国内外で大きな反響を呼びました。

2019年3月5日、日本のお笑い芸人であるスマイリーキクチは、ネット犯罪を前提に「中学1年生の女の子が簡単にネット上で犯罪を犯すことができるなんて、まるでゲームのようだ。大人たちはどうやってこの現実を阻止するのか」とツイートし、多くの批判が寄せられました。

後に彼は高木浩光(日本のセキュリティ専門家)の説明をモザイク処理して転載し、「このツイートは犯罪ではないと言っても通じない」「すべては自己責任」とコメントし、再び批判を浴びました。翌日、彼は「現在、兵庫県警察と裁判所が事件を処理しているので、もし検察官と裁判所が冤罪と判断した場合、直接3人の被告に謝罪する」とツイートし、この騒動を収束させました。後に彼は関連するツイートをすべて削除しました。

2019年3月6日、JavaScriptの作者であるBrendan Eichは、「Chromeの初版がリリースされた10年前、Netscape 4はユーザーがJavaScriptの無限ループを閉じることができるようになっていました」「私はこの事件の専門的な証人になることを決めました。これはコンピュータウイルスではなく、犯罪として扱われるべきではありません」とツイートしました。3月9日にはElectronic Frontier Foundationも「無限ループは犯罪ではありません」とツイートしました。

3月8日、警察の行動に抗議するために、逮捕されることを目指してGitHubで元のコードを公開し、リポジトリ名をlets-get-arrestedとしました。兵庫県ネット犯罪対策課はNETIB-NEWSへのコメントで、「自分の子供にも同じことが言えるのか?」と述べました。

補足と個人的な意見

実際にこの事件を見ると、「不正指令電磁的記録に関する罪」の定義が曖昧であり、多くのグレーゾーンが発生していることがわかります。また、今回の事件だけで見ると、ブラウザ側の無限ループが罪になることは非常に馬鹿げています。

また、記事で言及されているlets-get-arrestedには、かなり面白いissueがいくつかあります。コメントが非常に適切だと思います。

たとえば、誰かが質問を投稿し、日本で逮捕される方法を尋ねています。彼は以前、六本木に行った際に、非常に酔っ払った人々が道路を渡ろうとしているのを見たと述べ、そのうちの1人が道路の真ん中を歩いているとタクシーのクラクションを鳴らされ、その人は怒り出してタクシーを蹴り、道路の真ん中で騒ぎを起こしたと説明しています。後で警察車両が到着しましたが、警察官は何も対応せずに去って行き、逮捕もありませんでした。

日本で逮捕される方法についてのGitHubの質問

後に作者は、「そうですね、日本では無限ループを書くことは、タクシーを蹴ることや道路で騒ぐことよりも重い罪です」と返答しました。

作者の返答

次の記事

Sentry の Web Vitals を slack に統合する

前の記事

ネット上のコメントは有毒です。

この文章が役に立つと思うなら、下のリンクで応援してくれると大変嬉しいです✨

Buy me a coffee