年の瀬だというのに、セキュリティクラスターはパスワードの定期変更でまた盛り上がりました。
12月のセキュリティクラスターは、IPAの「安全なSQLの呼び出し方」に対する意見が書かれたブログをきっかけとし、エスケープに関する議論と意見表明が、これまでにない盛り上がりを見せました。
その後は総務省がパスワードの定期変更を公式に推奨したことから、またまたパスワードの定期変更に関するツイートがタイムラインを賑わせます。そして、Androidの危険な脆弱性とIMEが入力した情報を勝手に送信していたことも話題となりました。
情報処理推進機構(IPA)から「安全なSQLの呼び出し方」という文書が公開されているのですが、“改訂前のこの文書は危険だった”という@yohgaki氏の「IPAの『安全なSQLの呼び出し方』が安全になっていた」というブログエントリが公開されました(注:IPA発行の「安全なSQLの呼び出し方」は改訂されたことはありません)。
これをきっかけとして、SQLインジェクション対策としてエスケープやプリペアドステートメントなど、何を優先して行うべきかについてさまざまな意見がタイムラインを飛び交いました。
まずSQLインジェクション対策はプリペアードクエリ/プレイスホルダだけ使えというという考え方はプログラマーをばかにしているように思えると、@yohgaki氏があおります。
それに対して、プレースホルダーを使えというのは、プログラマーをばかにしているのではなく、より楽でミスを犯しにくい方法を使った方が安全だということではないかという意見が、多数の人から出ます。
次に@yohgaki氏は、エスケープ処理を勧めないのは、セキュリティ業界の仕事を増やすためのセキュリティ対策――“ジョブセキュリティ”だと主張します。
それに対して、プリペアドクエリやプレイスホルダーを使用せず、毎回文字列を組み立ててエスケープ処理する方が仕事は増えるので、そちらの方がジョブセキュリティでは? という反論がタイムラインにたくさん流れました。
「プリペアードクエリが基本だけど、エスケープも知っておいた方がいい」――これなら誰も異論はないのでは、という@kazuho氏の意見に対し、突然「セキュアなコードを書けるようになる教育」と教育の話を持ち出しエスケープの重要性を説きます。ですが、教育においても「確実に安全に書ける」方法を推奨すべきだと否定されます。
また@yohgaki氏は、DBスキーマを管理するようなプログラムにはエスケープAPIは絶対必要だと主張しますが、そのようなプログラムは管理者が使うものなので、そもそもウェブアプリケーション開発における脆弱性に関する議論とは関係ないと否定されて、意見がまとまることなく終わります。
この他にもSQLインジェクション対策では、プリペアードクエリを使えば十分ではないかとの意見を持つ人たちと@yohgaki氏とがやり合いましたが、主張は平行線のまま噛み合いません。
この辺りから騒動を知った人たちが、自分のSQLインジェクション対策とエスケープに対する意見を述べ始めます。ほとんどの人は適切なエスケープのやり方を理解しておくことは大切だけど、実際にプログラムを作成する際は、エスケープ不要なバインド機構を使う方がいいという意見でした。
2013年12月18日、総務省が「リスト型アカウントハッキングによる不正ログインへの対応方策について(サイト管理者などインターネットサービス提供事業者向け対策集)」という資料を公開しました。この中で攻撃を予防する対策として「パスワードに有効期限を設定し、利用者に定期的に変更させる」ということが挙げられています。
「リスト型アカウントハッキングによる不正ログインへの対応方策について(サイト管理者などインターネットサービス提供事業者向け対策集)」の公表
http://www.soumu.go.jp/menu_news/s-news/01ryutsu03_02000063.html
これに対し、タイムラインではパスワードの定期変更ってどうなのよ、とパスワードに関するさまざまな意見が交わされました。定期変更の是非はセキュリティクラスターではおなじみですが、今度は総務省という省庁が公式に変更を推奨しており、より問題が大きいのかもしれません。
タイムラインの意見では、パスワードの定期変更をあまり推奨したくないという人が多かったようですが、その是非や利点、欠点について、情報セキュリティアドバイザリーボードワーキンググループの一員でもある、武田圭史先生との間でさまざまな議論が行われました。
武田先生は実は定期変更にはあまり賛成されていないようなのですが、定期変更を推奨したグループの一員という立場で意見を聞いておられたようなので、次回総務省が対策を更新する際など、タイムラインでの意見が反映されるかもしれません。
ワーキンググループには武田先生以外にもtwitterのアカウントを持ってよくつぶやかれている方もが数人いらっしゃるのですが、この件に対するツイートが見られないのは残念なところです。
TakagiHiromitsu氏総務省のリスト型アカウントハッキング対策について指摘する
TakagiHiromitsu氏総務省のリスト型アカウントハッキング対策について指摘する の続き
2013年12月17日には、JVN(Japan Vulnerability Notes)で「Android OS において任意のJavaのメソッドが実行される脆弱性」という脆弱性が公開されて、話題となりました。詳細な内容については伏せられていましたが、searchBoxJavaBridge_に問題があったようです。
Android OSに深刻な脆弱性、任意のコード実行やパスワード読み取りの恐れも
http://www.atmarkit.co.jp/ait/articles/1312/18/news133.html
この脆弱性を悪用した罠サイトを閲覧することによって、ローカルファイル奪取、アドレス帳奪取、Android IDや電話番号の奪取などアプリケーションの権限でできることが全て行われるとのことですが、この脆弱性を持つ環境が標準ブラウザーを含むWebView全般だということが問題を大きくしているようです。
この脆弱性はAndroidセキュリティに詳しい開発者の間では広く知られていたようで、このタイミングで公開されたのことには何か理由があるのかいぶかしむ声と、悪用を心配する声が多く上がりました。また、4.2での修正というGoogleの対応に不満を述べる人もいました。
また、Android関連では使用している人も多い「Simeji」が入力内容を無断で開発元のバイドゥに送信していたことも大きな話題となりました。
まとめ:「Baidu IME」と「Simeji」で入力データを外部送信
http://www.atmarkit.co.jp/ait/articles/1312/26/news104.html
この他にも12月のセキュリティクラスターはこのような話題で盛り上がっていました。2014年はどのようなことが起きるのでしょうね。
山本洋介山
猫と一緒に自宅の警備をする傍ら、「twitterセキュリティネタまとめ」というブログを日々更新しているtwitterウォッチャー。セキュリティやネットワークに関する原稿も書いてます。
Copyright © ITmedia, Inc. All Rights Reserved.