個人ユーザと中小企業向けの自衛策 〜パーソナルファイアウォール〜(最終回) | ScanNetSecurity
2024.04.18(木)

個人ユーザと中小企業向けの自衛策 〜パーソナルファイアウォール〜(最終回)

<実験3:LeakyTooトロイ・スタイル>
・実験の目的
 デスクトップ起動以前のリークテストへの反応を見る。特に各PFがインタフェースを持たない状態で受けた通信をどう処理するかを検証する。

特集 特集
<実験3:LeakyTooトロイ・スタイル>
・実験の目的
 デスクトップ起動以前のリークテストへの反応を見る。特に各PFがインタフェースを持たない状態で受けた通信をどう処理するかを検証する。

・実験方法
 実験2のLeakyTooにトロイ式(*6)のインストール・実行スタイルを加味した自作プログラムを使いリークテストを行う(*7)。LeakyTooのリーク機能を持ったプログラムをADS(*8)を利用した隠しファイルとしてインストールし、アクティブ・セットアップ手法を使ったスタートアップ起動で実行する(*9)。この起動手法では、シェルより先に割り込み、その起動を止めて処理を実行することが可能になる。そのためデスクトップ画面に至る前に確実に処理を行うことができる。

*ZA
 実験1から分かるように、このタイミングではZAが既に起動しており、フィルタも有効に機能している。ZAの場合はインタフェースがない状態でもフィルタ通りに動作している。ただしIEがAskモードであった場合、ルールが未設定の場合は、デフォルト・ブロックを適用しダイアログは表示されない。いずれにせよブロックした場合は、それがログに記録されている。

 実験2にあるようにこのスタイルのエクスプロイトには対応していないためIEに許可ルールがある場合はリークが防げない。

*SPF
 実験1ではやや起動時のフィルタ有効化まで時間がかかると分かったSPFだが、この時点ではほぼ確実に起動完了している。そのため設定されているルールがそのまま適用される。SPFの場合、インタフェースがない状態で受けた通信についても、デスクトップが起動した後にそれをダイアログで表示するようになっている。既に通信のタイミングから大きく遅れているので、あまり制御上の意味はないが、ユーザがイベントを確認することはできる。ルールがない場合やAskモードの場合は、当然デフォルト・ブロックが適用されパケットは止められている。

 実験の結果は2に準じるもので、通信は止められている。

*Outpost
 実験1にあるように、シェル起動以前には全くフィルタが有効になっていない。監視も行われておらず、ログにも残らない。ルールの有無に関わらず、この実験の通信は可能である。

*NPF
 NPFは実験1にある通り既に起動しているので、設定されているフィルタ・ルールが適用される。この場合はIEのフィルタを使うので、IEの通信許可ルールが既に設定されている場合は、実験2同様に通信可能になる。

 ただしこのようにインタフェースのない段階の通信では、プログラム・ルールの自動作成は行われないようだ。そのためルールが未設定の場合は、普段は自動で許可するIEであっても、デフォルト・ブロックを適用し通信を止め、ログに残すようになっている。ユーザの目に触れずルール作成から通信まで行うということはできないということだ。


<実験の総評>
 フィルタ起動のタイミングについては、個々のPFに差が見られた。優秀であったのはNPFで、このレベルであれば、PFがソフトウェア型ファイアウォールであるからといって必ずしも起動タイミングの脆弱性を持つわけではないと言って良いと思う。ZAもそれに次ぐが、場合によってはその隙間がやや問題になるかもしれない。SPFは未起動時の通信制御を行うなど対応をきちんと機能として形にしているところに好感が持てるが、現行バージョンでは起動処理の遅れにより、そのせっかくの機能がスポイルされている。SPFは約4ヶ月間隔で定期的に更新されているので、今後のバージョンでの改善に期待したい。以上の3製品はこの点において決定的と言えるまでの問題は抱えていなかったが、Outpostは明らかに起動タイミングが遅く脆弱である。ログオン画面で放置されたような場合にフィルタが効かないため外部からの接続が通る可能性があるだろう。


*6
トロイ(トロイの木馬)とはトロイ戦争の故事にちなんで名付けられた不正プログラムの一種別。無害を装って外部から持ち込まれ内部で悪意ある活動を開始するプログラムのこと。その性格上、ユーザの目からの隠蔽、スタートアップ起動手法などに特徴をもつものが多い。

*7
ここで使用したプログラムは以下のページにある。
LeakyToo Trojan Style
http://www.geocities.jp/bruce_teller/security/leakytrojan.htm

*8
ADS(Alternate Data Streams)
http://www.geocities.jp/bruce_teller/adsmngr/helpfiles/aboutads.htm

*9
レジストリの"HKEY_LOCAL_MACHINESOFTWAREMicrosoftActive Setup
Installed Components"以下に"StubPath"という名称で文字列値(ファイル・パス)を設定することでシェル以前に目的のプログラムを起動させることができる。詳しくは*7のページで解説する。


<執筆>
Personal Firewall Reviewサイト運営  SalB
E-MAIL: bruce_teller@yahoo.co.jp
HP URL: http://www.geocities.jp/bruce_teller/security/

(詳しくはScan本誌をご覧ください)
http://www.vagabond.co.jp/cgi-bin/ct/p.cgi?m-sc_netsec
《ScanNetSecurity》

Scan PREMIUM 会員限定記事

もっと見る

Scan PREMIUM 会員限定記事特集をもっと見る

カテゴリ別新着記事

「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」
「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」

ページ右上「ユーザー登録」から会員登録すれば会員限定記事を閲覧できます。毎週月曜の朝、先週一週間のセキュリティ動向を総括しふりかえるメルマガをお届け。(写真:ScanNetSecurity 名誉編集長 りく)

×