インストーラアタック
Date 2007-06-03 06:40:29 | Category: XOOPS
|
XOOPS (Cube2.1も) でinstallフォルダを残しておくと、管理画面で警告が出ます。 というのも、installフォルダを経由すれば、DBパスワードなどがダダもれになってしまうからです。
ただ現実に、アップグレード時にintallフォルダもアップロードしてしまうとか、installフォルダを簡単なリネーム(_installとか)だけして放置しておく、なんてことは当然考えられます。
その対策って、とても簡単であることにふと気づきました。 '_INSTALL_CHARSET' という定数が定義された状態で、mainfile.php を実行されることは、インストーラ以外にないのです。この定数は、X2,本家2.2, XCLegacy 2.1 いずれでも共通なので、そのまま使えます。
だから、Protectorのprecheckにおいて、この定義があった時点で強制終了するだけでOKです。この方法であれば、_install などの簡単なリネームがバレたケースにも対応できます。もし、なんらかの理由で、本当にインストーラを利用したければ、Protectorを一時的に外せば良いでしょう。
少なくともインストール後、Protectorさえちゃんとインストールすれば、後からinstallフォルダをアップロードしてしまう等のミスをやっても情報漏洩はある程度防げます。(インストール途中で放置しちゃったケースでは対応できませんが、まあ、まだサービス開始もしていないサイトならDBパスワードなどを一通り変更して、もう一度最初からやり直せば良いでしょう)
というわけで、Protector-3.03にそのチェックを入れました。定数定義のチェックが1行あるだけなので、速度的な影響はほとんどないはずです。
|
|