focuslightsの満たされない日々

日々の恨みつらみなど。文句などありましたら、コメントへどうぞ

SQLインジェクション対策くらいしようよ

ネットニュースを見ていたら、IT関係の判決例が紹介されていました。

itlaw.hatenablog.com

SQLインジェクション対策不備の責任 東京地判平30.10.26(平29ワ40110)

SQLインジェクション対策をしていなかったことについて開発会社の責任が問われた事例。
Xは,Yに対し,Xの提供する車・バイクの一括査定システム(本件システム)の開発を約320万円で委託し,平成24年9月に納品を受けた。
(略)
平成24年当時に対策が不十分であったということは責任を認める方向に作用しますし,当時の文書にもSQLインジェクション対策に言及されていたことからすると,Yを免責することは困難であったように思われます。

平成24年ということは、2012年ですよね?
それでSQLインジェクション対策していないなんて、損害賠償どころか、重過失賠償でもおかしくないですか?



自慢ではないですが・・・
2010年頃に、とあるシステム(Saas)選定で、私が選定担当者(ユーザー代表)として選ばれたときのこと。
某大手SIベンダーの営業さんが、システムのデモのため来社されました。

で、ご自由に触ってみてくださいといわれたのでちょっとテスト。

「テスト環境なので、どんなことしても構わないですよ」と言われたので・・・
プロジェクターで投影されている中、自社、先方の社員が見ている前で、とりあえずSQLインジェクション
さすがに、サニタイジングされていて、何も起きませんでしたが、自社のIT担当や先方の技術営業はドン引きしてました(笑

ちなみに、立て続けに
ディレクトリートラバーサルを試したけど無問題。
ところが・・・
入力枠に、クオーテーションを入れてからJavaスクリプトを埋め込むと実行されてしまい、画面の文字がすべて真っ赤に。
さらに、トップページにクロスサイトスクリプティングを仕掛けたら、システムにログインした瞬間にyahooに移動するという事態に。

全一般ユーザーはおろか、Admin権限でもログインした瞬間にyahooに遷移してしまって、一切設定変更できなくなってしまいました。
結局、テストサーバーをフォーマットして、OSから再インストールしたそうな。

契約時には、「稼働開始までにシステム脆弱性を解消すること。」という文言が入れられましたとさ(笑
UAT(User Acceptance Test)ならこれくらいしなくちゃね。

最近、そういう仕事はなくなりましたが・・・
いまなら、脆弱性確認ツールくらい走らせるんだろうな。と思うfocuslightsでした。