Landscape トップページ | < 前の日 2004-07-15 2004-07-21 次の日 2004-07-23 >

Landscape - エンジニアのメモ 2004-07-21

ファイルアップロードとウィルス対策


* ファイルアップロードとウィルス対策

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [メモ]

ファイルアップロード機能を持つ CGI があるとする。
ファイルをアップロードすると、CGI はそれをデータベース (DB) に保存する。
CGI を置いてあるサーバには、ウィルス対策ソフトがインストールされており、リアルタイムでウィルスに感染したファイルがないかどうかをスキャンしている。

- ウィルス付きファイルをアップロード

このサーバにウィルス付きファイルをアップロードしたとする。サーバ側にはウィルス対策ソフトがインストールされているので感染ファイルを駆除しようとするが、DB に格納済みのデータなので DB が管理しているファイルごと隔離や駆除を行ってしまう。その結果、DB のファイルは整合性がとれなくなり、DB が破壊される。

- 対策

DB のデータディレクトリをウィルス対策ソフトのスキャン対象外にする。
というか、最初から DB のデータディレクトリは除外しておくべきか。リアルタイムでスキャンさせている場合はパフォーマンスも落ちるし、ウィルス対策ソフトが正常なデータを誤認して隔離や駆除を実行されても困る。やっぱりデフォルトでオフが基本かなあ。

あ、でもデータベースサーバを狙った SQL Slammer みたいなワームもあるし、悩むところだな。いくらファイアウォールで守ってても、同じセグメントの他のサーバから感染したりする可能性もあるしね。Unix だったら信頼性が高くて高機能な inetd と TCP wrapper があるのでマシン単体でファイアウォール機能を使えるけど、Windows2000 Server だと OS のファイアウォール機能なんて使い物にならない。

それにパフォーマンスを気にするんだったら DB にファイルを保存するなんてことはしないか。管理が楽だからいくつかの案件ではそういう設計で構築したことあるけど。そのときは必要な性能を達成できたので、トランザクションの制御やバックアップがやりやすい設計を選んだ。テキストにシリアライズしたデータを文字列型のカラムに格納する、なんてこともやった。

すべての記事の見出し (全1029件)
全カテゴリの一覧と記事の数
カテゴリごとに記事をまとめ読みできます。記事の表題だけを見たい場合は、すべての記事の見出し (カテゴリ別表示) へ。

直近30日分の記事
2007-04-23 (Mon)
2007-03-07 (Wed)
2007-02-27 (Tue)
2007-01-17 (Wed)
2007-01-15 (Mon)
2007-01-14 (Sun)
2007-01-08 (Mon)
2006-12-01 (Fri)
2006-11-22 (Wed)
2006-11-20 (Mon)
2006-11-19 (Sun)
2006-09-30 (Sat)
2006-08-29 (Tue)
2006-08-04 (Fri)
2006-07-27 (Thu)
2006-07-23 (Sun)
2006-07-17 (Mon)
2006-07-10 (Mon)
2006-07-06 (Thu)
2006-07-03 (Mon)
2006-06-29 (Thu)
2006-06-28 (Wed)
2006-06-27 (Tue)
2006-06-25 (Sun)
2006-06-19 (Mon)
2006-06-18 (Sun)
2006-06-15 (Thu)
2006-06-11 (Sun)
2006-06-01 (Thu)
2006-05-30 (Tue)
プロファイル
斎藤 宏明。エンジニアです。宇都宮市に住んでいます。
リンク
RSS
スポンサードリンク
Powered by
さくらインターネット

© 斎藤 宏明 Saito Hiroaki Gmail Address
Landscape - エンジニアのメモ http://sonic64.com/
Landscape はランドスケープと読みます。
ひらがなだと らんどすけーぷ です。