パスワードを忘れた? アカウント作成
11595654 story
プログラミング

スウェーデンの総選挙でJavaScriptコードとして1票が投じられる 18

ストーリー by hylom
ある意味スクリプト混入攻撃 部門より
masakun 曰く、

9月14日に行われたスウェーデンの議会選挙で、JavaScriptコードで1票が投じられたことが話題になっている(WIREDの記事)。

人口959万人のスウェーデン王国では自書式投票が可能で、全投票が記録公開される。そのため以前から「ドナルドダック党「というジョーク政党に百数十票程度投票されてきた(架空政党のため無効票となる)。そしてこのたび2014年の投票もすべて公開されたのだが、「統合失調症・自閉症党」「若き火山」「バンコクのバーにいる女の子たち」というふざけた投票に混じって、次の一文があったという。

"script"alert('l')"/script"

これはscriptタグとJavaScriptのalert()関数を使って「I(わたし)」がポップアップする Javascrpt コードを、選挙監視員が間違って書き写したようだ。ただしリンク先のセミコロン区切りファイルをみると、投票者の個人情報まで公開されているような気がしてならないのだが……。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by hix (3507) on 2014年09月23日 22時03分 (#2681459) 日記
    って事?
  • by Anonymous Coward on 2014年09月23日 13時50分 (#2681275)

    wired.jp では "I" (大文字のアイ )になっているが、元ファイルでは、"l" (小文字のエル)になってる。wired.jp もファイルの中身を引用している部分では小文字のエルを使っているのに、それを説明する文章で「これは、「I」が1文字だけ書かれた警告ボックスをポップアップさせるJavaScriptだ」と大文字のアイになっている。記事を書いた人が見間違えたのか、元は I だという確信があるのか、どっちなんだろう。

    最初から正確に書き写されていないようなので、元は 1 とか ! とかの可能性もあるかも。だからといってどうということもないのだが、どういう意味なのかについては多少好奇心をそそられるものがある。"I" と考えれば、「俺」に投票するぞ、とalertで強調しているという解釈が成立するが、それならスウェーデン語の一人称を使うんじゃないだろうか。"!"の方がありそう。

    • by Anonymous Coward

      ほかにも、
      「選挙監視員が間違って書き写したようだ。」
      とタレコミ人は書いているが、間違ってではないと思う。
      監視員がJavaScriptに詳しくて意図的に直したか、あるいは掲載するシステムが勝手にサニタイズして変換したんだと思う。

      • by masakun (31656) on 2014年09月25日 2時16分 (#2682137) 日記

        >監視員がJavaScriptに詳しくて意図的に直したか、あるいは掲載するシステムが勝手にサニタイズして変換したんだと思う。

        その根拠は?

        --
        モデレータは基本役立たずなの気にしてないよ
        親コメント
        • by minet (45149) on 2014年09月25日 8時51分 (#2682177) 日記

          根拠ってほどじゃないけど、
          バグ報告で「書いたのと違うんだけど?」って挙がってきて、引用符絡みだったら、サニタイズを疑うかな。

          親コメント
        • by Anonymous Coward

          「l」と「I」なら間違えたと考えられなくもないが、「<>」を「”」と間違えるなんて無いだろ。
          「その根拠は?」って質問すること自体、恥ずかしいと思わない?

          恥ずかしいと思わないなら、君はそのままその道を行け。

    • by Anonymous Coward

      個人情報も出てくるみたいだし
      「I」なんじゃなかろうか?

      「私」「●●●個人情報●●●」

      となるようXSSまで想定した立候補だったんだよ

      • by Anonymous Coward

        スエーデンの有権者は530万人といった数、どんなファイルかと思ったらどうも違う。
        タレコミは「選挙区」の名称を個人名だと勘違いしたのじゃあるまいか?
        あるいは投票された「候補者」の個人名かな?

        • 私も知りませんでしたが、スウェーデンの選挙における投票方法 [wikipedia.org]について知らないと、意味不明ですね。投票用紙は大きく分けて 1) 政党名が1つだけ印刷されている 2) 政党名に加えてその政党の候補者の一覧が印刷されている 3) 政党名も候補者名も印刷されておらず、投票人が候補者名を書く、の3種類。

          1)2)の場合は自分の投票したい政党名が印刷された投票用紙を1枚選んで投票、2)の場合は必須ではないが候補者名に印をつけて選択可能です。3)が今回話題になっている分の票になります。1)2)が用意されるのは、直近2回の選挙でいずれも得票率1%以上の政党のみとなり、それ以外の政党に投票する場合には3)を使います。

          投票用紙は周囲から見える場所に置かれており、1)2)は取るときに投票先の政党がわかってしまうため民主的でないとの批判もあるようですが、今回のリストに個人情報が含まれているようには見えませんね。
          親コメント
  • 投票結果がWebサイト上で公開されることを前提として、XSSを狙って書いたのか?

  • by Anonymous Coward on 2014年09月24日 16時22分 (#2681823)

    タイトルで何を言いたいのかがわからないよ。
    JavaScript のコードが投票される、のほうが遥かにわかりやすいじゃん。

    ほんとhymlaの編集は害悪でしかない

    • 細かいことを言うと、このコードは一般的なWebブラウザーではJavaScriptとして解釈・実行されますが、「alert」はJavaScriptの関数ではなくDOMのwindowオブジェクトのメソッドです。
      親コメント
      • by Anonymous Coward

        「JavaScript = EcmaScript + ブラウザ環境のオブジェクト」
        なのかと思ってた…。

    • by Anonymous Coward

      これはscriptタグとJavaScriptのalert()関数を使って「I(わたし)」がポップアップする Javascrpt コードを、選挙監視員が間違って書き写したようだ。ただしリンク先のセミコロン区切りファイルをみると、投票者の個人情報まで公開されているような気がしてならないのだが……。

      Javascrpt コード……

typodupeerror

人生unstable -- あるハッカー

読み込み中...