価格.com、サービス再開へ 237
ストーリー by Acanthopanax
信頼回復できるか 部門より
信頼回復できるか 部門より
tetsuya 曰く、 "クラックされ、5月15日からサービス停止に陥っていた価格.comが24日午後にサービス再開する見込みです(編注: 掲載時点ではまだ再開されていない)。サイト再開のお知らせ(23日付)には「システムの再構築、各種セキュリティ検査、最終テストを経て、明日24日(火)午後に当社運営サイトを厳重な監視体制の下、再開することとなりました」とあります。この辺を報じたasahi.comの記事によると、今回のクラックはSQLインジェクションによりDBを乗っ取られたということのようです。タレコミ子はWEB開発に関して全くの素人ですが、SQLインジェクションに関しては教科書的なサイトにもよく取り上げられるほどであり、基本的な対策の様に思えます。"
MSSQL (スコア:4, 興味深い)
キチンと行わないと非常にヤバイです。
他のDBは詳しくないのですが、MSSQLは拡張ストアドで
コマンド実行やCOMのインスタンス生成ができます。
さらにSQL文を区切らなくても平気で連続実行できてしまいます。
インジェクションを行えば、
select * from user where userId = '$ここに入力値$'
が、
select * from user where userId = '' sp_xxxxx(適当なストアド) select 1 where ''=''
みたいな感じで実行できてしまいます。
本来、ユーザIDが入力されるところで、
' sp_xxxxx(適当なストアド) select 1 where ''='
と、こんな感じで入力すれば何でもできてしまいます。
サニタイズの簡単なチェックとしては、
入力フォームで、「'」と入力してみましょう。
エラー画面になるようだと危ないです。
プログラムに欠陥がなくても? (スコア:2, すばらしい洞察)
Re:プログラムに欠陥がなくても? (スコア:2, 興味深い)
#自分の個人サイトでは手を抜くけどw
Re:プログラムに欠陥がなくても? (スコア:2)
あなたの記事の解釈が間違っていると思われます。
「OSの不備」は、読んで字の如くOSの脆弱性を指すと思い
ます。「ホームページをネットに提供するプログラム」は、
サーバソフトウェアのことで、Apache HTTP Serverや
Internet Information Server等を指しているのではないで
しょうか。
上記のように解釈すれば、記事全体の話の筋が通ると思います。
Re:プログラムに欠陥がなくても? (スコア:1)
が、ずいぶん好意的な解釈ですね(笑)
kakaku.comはApacheやIISだけで「ホームページをネットに提供」していたわけではなく、独自のプログラムを構築してサービスを提供していたわけですが、そのうちの一部分がIISなりだったというだけでしょ?
また、社会的な責任という面を考慮した場合に、OSやIISなどの脆弱性をつかれたわけではなかったのかもしれませんが、入門書でも載っているようなSecureプログラミングを知らない(または手抜きした)人が実装もテストもしていたということで、利用者がウィルス感染したりという被害が出ているわけですから、kakaku.comを擁護するような内容の記事が問題だと思うわけです。
kakaku.comが自身を正当化することを、メディアが鵜呑みにしたような記事を載せることに抵抗を感じずにはいられません。
Re:プログラムに欠陥がなくても? (スコア:1, 興味深い)
結局ソレだよな。
サイトの更新頻度からして技術と広報の連携は取れていると見えるだけに、
今までにない新しい攻撃手法みたいな言い方は、解っててミスリードを誘っているとしか思えねえ。
擁護?正当化? (スコア:1, 興味深い)
問題がIISでもphpBBでもなくDBの設定であるって言うのは、プログラム作者ではなくkakaku.comが悪いと言っているように思うのは気のせいですか。
asahiの記事を読み直した方がいいんじゃないか?と思うのは気のせいですか。
「ソフトの不備ではなく、データベースの安全設定が不十分だった点を悪用された。」(一部引用)
#というより、この記事を読んで擁護や正当化と取る人もいるなんて、このコメントを見るまで思わなかった。
Re:プログラムに欠陥がなくても? (スコア:1)
(正)本当にクラックの方法が記事どおりだとしたら
typoです(T_T)
Re:プログラムに欠陥がなくても? (スコア:1)
バリデーションというよりもサイニタイジングと言わないか?
俺のまわりだけか・・。
バリデーション=数値範囲チェック、仕様に添った型で有るか
サニタイジング="aaa && sendmail hoge@hoge `tail` ..."みたいなトリッキーな文字列を掲示板に投稿するとか検索フォームにPOSTとかしてないかをチェック。
というイメージがあるんですけどね。。
Re:プログラムに欠陥がなくても? (スコア:1)
サイニタイジング の検索結果のうち 日本語のページ 約 63 件中 1 - 4 件目 (0.21 秒)
サニタイジング の検索結果のうち 日本語のページ 約 2,800 件中 1 - 10 件目 (0.04 秒)
英語のスペルはぐぐればすぐ出てきますが、「sanitizing」。
ですので、多分2文字目のイは余分です。
ちなみに、バリデージョンは英語スペルが「Validation」で
「Varidation」のtypoが多いみたいですね。
意味は似てないこともないけど、認証とか保証とか検証とかの
意味があてられているようですね。
#私の言うことは例のクレタ人並みに信用できますので!
Re:プログラムに欠陥がなくても? (スコア:2, おもしろおかしい)
あっこれすごく多いです! きっとこれです!
サニタイズ?何それ (スコア:1)
どういうわけか、入力をサニタイズするという場当たりな対処方法ばかりを宣伝するおかしなセキュリティ屋が多いですが、彼らはプログラミングの素人なんでしょう。ちっちゃいおもちゃCGIプログラムくらいしか作ったことがないとか。
その場にある脆弱なプログラムを取り急ぎ直すのに入力のサニタイズという方法が即効性がある場合もあるのでしょうが、どのように使われるかわからない入力値をどうやって完全にサニタイズするんでしょうか。サニタイズ漏れや、過剰なサニタイズでバグを生んだりしかねないでしょう。
セキュアプログラミングの文脈で「サニタイズ」とかいう言葉を持ち出すセキュリティ屋は信用するな、とまで言ってもいいかもしれない。文脈通りに正しい文字列連結のプログラミングをしていれば、この種の脆弱性は最初から生じないのです。
Re:サニタイズ?何それ (スコア:1)
後学のために正しくはサニタイズとはどういう処理か詳しく教えてください。
Re:サニタイズ?何それ (スコア:1)
ご指摘ありがとうございます。本当に言葉の意味を理解して使っているのかと、自分で反省中です。
Re:プログラムに欠陥がなくても? (スコア:2, おもしろおかしい)
修正しているそばから改ざんする [nikkeibp.co.jp]というレベルの高い攻撃 [impress.co.jp]を仕掛けてくる、スーパーハカーによるサイバーテロ [kakaku.com]だったんだよ!
#んなワケねーだろ
Re:プログラムに欠陥がなくても? (スコア:2, 興味深い)
かかわらず「犯人追跡」だの「侵入経路の特定」だの理由をつけて
サイトの運営を続けていたわけです。
顧客を危険に晒してるのに順番がおかしいです。
ナメきってると思いました。私はもう利用しません。
# 直接の顧客は私のようなサイトの利用者じゃないでしょうけど
私一人なら痛くもかゆくもないでしょうけど、
こう思ってる人がどれくらいいるんでしょうね。
ま、これに懲りて安全なサイトにはなるでしょうけどね。
レイヤ違い (スコア:1, 興味深い)
ただ、asahiの記事で問題にしているのはSQLインジェクションで実行されるDBアカウントを使って、「DBを乗っ取った」ことに関して。
権限がしっかりと制限されていれば、SQLインジェクションを使われても情報流出は最小限に抑えられる。
しかし、権限が制限されていないと、DB内の情報が全て攻撃者に漏れてしまうので危険。
(ユーザIDが流出するだけで済んだはずなのにメールアドレス等の個人情報が流出した等)
という話だと思われるが。
#記事では「SQLインジェクション」と呼ばれる手法を『利用』ではなく『応用』って書かれてる。
#SQLインジェクションが使えるっていうアプリケーションの脆弱性が無ければ侵入はできなかったとは思うが。
#ただ、ここまでの話は「データベースを支配下に置いていった」というasahiの記事が正しければの話。
#単にSQLインジェクションでデータを抜いただけなら話は別。
Re:プログラムに欠陥がなくても? (スコア:1)
Re:プログラムに欠陥がなくても? (スコア:1)
「プログラム」= サーバとか、OSとか、ソフトウェア製品のこと
SQLインジェクションの問題 = データベースの設定の問題
朝日新聞(のデスク)にとって、Webアプリケーションという概念は存在しないのでしょう。
予想される記者とデスクのやりとり:
デスク:プログラムの欠陥を直していなかったのが原因なのか?
記者:いえ、パッチは適用していたそうです。
デスク:じゃあ、なんで起きたんだ。
記者:SQLインジェクションという脆弱性だそうです。
デスク:やっぱり欠陥を直していなかったんじゃないのか?
記者:直すパッチはないんだそうです。
デスク:どうしてないんだ?
記者:kakaku.com だけの問題だからだとか。
デスク:設定がまずかったということか?
記者:そんなとこですかねえ。
報道で伝えるべきは、ソフトウェア製品の脆弱性パッチをあてているだけではだめで、個別に開発したWebアプリケーション固有の脆弱性を、検査するなりして、排除しないといけないということなんですがねえ。
Re:プログラムに欠陥がなくても? (スコア:1)
Re:欠陥じゃない脆弱性だ (スコア:1)
ユーザー「これこれこういう条件だと、アプリがOSごと落ちるんですけど、これってバグですよね?」
メーカー「いえ、仕様です」
というのは欠陥とは言わないのか。
知らなかった。
# s○nyめ……。
不正アクセス禁止「法」 (スコア:2, すばらしい洞察)
ボランティアベースでoffice氏みたいな人がせっせとおせっかいを焼いている以前の状況であれば防げたかもしれないのに。
>「もし」office さんが逮捕されていなかったら、私はおそらく SQL インジェクションができないかどうかチェックしていたでしょうから
(http://bakera.jp/hatomaru.aspx/ebi/topic/2324)
だからって「法律」として整備するなといいたいわけではなく。
*善意から*脆弱性を探す人が今までいっぱい居たわけで、その人たちを生かす形にできなかったのはやっぱり失敗だと思う。
Re:不正アクセス禁止「法」 (スコア:1)
検証される側からするとそれってどうなんでしょう。「脆弱性を見つけても機密情報を手にしてもそれを悪用しない」という確約を取り付ける前に検証されては、される側からすれば”検証後にその成果を教えてくれた”以外には実際に攻撃されたのと同じじゃないですか?(勿論これも大きな違いではあるが、通報者の善意…というか”悪意が無い事”を証明する物ではない)
> office氏みたいな人がせっせとおせっかいを焼いている以前の状況であれば防げたかもしれない
更に言えば、office氏みたいな人がこの事件を引き起こしたかもしれませんね。office氏自身、ACCSの件以前にも数々の脆弱性を発見すると同時に得てきた情報を悪用してないとは限りませんし(今までこの疑いを抱いている人を見た事が無いのですが、office氏って昔はそんなに信用のあった人物なんですか?)。
# という感じの事を前も書きました [srad.jp]。「いきなり検証済み脆弱性を報告してきた人」に企業側ではどんな対応をするのか、どなたか教えて頂けないでしょうか。少なくとも素性も探らないままなんて事は無いと思いますが…
ま~だ~ (スコア:1)
Linux だ (スコア:1)
Re:ま~だ~ (スコア:1)
23:55頃復旧と大予想。
Re:ま~だ~ (スコア:1)
Re:ま~だ~ (スコア:1)
予想を大幅に覆す早さでした。
システムが何で動いてるかは他の人が調べてくれるだろうから省略。
Re:ま~だ~ (スコア:1)
2時間ほど余裕がありましたね:-)
Re:復活したとはいえ (スコア:1)
Re:復活したとはいえ (スコア:1)
「サイト再開のお知らせ [kakaku.com]」によれば、
>・24日午後サービス再開のカテゴリ一覧
> PC関連、家電、カメラ、スポーツ・レジャー、カー用品、
> 携帯電話本体、ゲーム、ブランド、アキバ総研、ローン比較、
> 新製品ニュース、くちコミ掲示板(※閲覧のみ)
だそうです。
#「くちコミ掲示板(※閲覧のみ)」
#悪口書かれちゃうからね、間違いなく
ところで (スコア:1)
Re:ところで (スコア:1, 興味深い)
Re:ところで (スコア:2, 参考になる)
800 何チャラとか言う画面ですね。
ODBCのエラーだったような記憶が・・。
結局ODBC経由で”単純に”作られているアプリならば、
1週間もあれば対応できるのではないでしょうか。
でも、DBの標準の関数(と言うかストアードか)
をSQL内で使っていたら、代換えを作るのに
時間がかかるかも知れませんが・・・。
以前 PostgreSQLで作っていたものをOracleに
かえる時に、TOP使っていたりとか、
逆にOracleでTO_NUMBERと使ってたら、
予算がやっぱり無いからクラサバでACCESS
をローカルでDBに持ってとかで、大変な
目にあいました・・。
SQL内でそのDB専用のものは使うべきでは
無いを痛感・・。
#まっ、コロコロDB環境が変わるような
#客も困りもんだが・・。
Re:ところで (スコア:1)
いや、そんなことはないでしょう。 ここでOSを変えてきたら「ぁーぁ、なんもわかってねーよ」って可能性が比較的高い(ように思える)。
えええ (スコア:1)
最高レベルのセキュリティなんでしょうか。
以前言ってた事とつじつまがあってないじゃないですかカカクコム様(汗
Re:えええ (スコア:1)
またIIS (スコア:1, 余計なもの)
またIIS [netcraft.com]だそうです。
Linux+Apacheだったのは一時閉鎖時だけだった模様。
---
IISは個人的に嫌いです。
Re:またIIS (スコア:2)
脆弱性が問題だったのではなく、ソフトウェアの設定や
開発したプログラムにセキュアでない部分があった)が
本当だったとすると、今まで同様IISでサービスすることは
至極当然でしょう。
トラブルの混乱から、問題でない部分まで変えてしまい
予想外の結果を招くのは、よくありがちな失敗パターンです。
最終的には、今後の結果がすべてを決めるのでしょうが、
とりあえずは賢明な判断だったと考えます。
技術者だけで会社が成立すると思うな (スコア:2, 興味深い)
嘘の肩書き背負わされて営業に連れられて客先へ謝りに行ったり、
御茶汲みをしたり、部屋の隅で応援したり、自宅待機でお祈りしたりしたんだよ。
そう言った人達の支えがあるから我々の仕事が成立する事を忘れてはいけないよ。
Re:技術者だけで会社が成立すると思うな (スコア:2, 興味深い)
Re:全社を挙げて (スコア:2, おもしろおかしい)
Re:全社を挙げて (スコア:1)
そんなにセキュアな環境を1週間や10日でどーんと作り直すのは無理。
侵入の調査は外部に頼んだらしいけど、システム構築も
それなりに金払ってしかるべきところに頼んだんじゃないかなー
と推測。お金だけはあるんでしょ?
Re:全社を挙げて (スコア:1)
ついでに、
SQLインジェクションでやられたっぽいニュース流れているね。
きっと、CGIがDBサーバーにアクセスする前段でのデータの確認が不十分だっただけなんじゃ?
Re:SQLインジェクション (スコア:1)
Re:SQLインジェクション (スコア:1, 参考になる)
Re:あと3時間 (スコア:1)
こういうひとはほぼ100%それまでには終わらないという定説が。
# 他人事だと思っていたのでID
Re:あと3時間 (スコア:1)
年度よろしく日度があるらしい。
alexaによりますと (スコア:1)
比べてみると、/.効果はなさそう
それはそうとこのグラフ、サービス停止中のReachが2.5倍ぐらいになってるのがちょっと面白いです。普段使ってない人も、ニュースになれば見にくるというあたりまえのことですけど。
# もちろんRank [alexa.com]やPage Views [alexa.com]は激減してます。
Re:で結局 (スコア:2, すばらしい洞察)
手口にしたってセキュリティホールmemo [ryukoku.ac.jp]あたりを見れば想像できるんじゃないの?
いくら何でも消費者&技術者&アタッカーをなめてないか?
#1年以内にまたヤラれると思うな~