![]() |
![]() |
| ||||||||||||||||||||||||
|
||||||||||||||||||||||||||
CGIを使うようになると、パーミッション(許可属性)というものを理解する必要があります。
この設定をおろそかにすると危険です。 今年の夏に実際にあった事件ですが、某テレビ局のお天気お兄さんが作っている天気予報のページの天気図が、ヌード写真と入れ替えられてしまいました。
[ パーミッションとは ] サーバに置くファイルは、HTML文書でも、イメージ画像でも、CGIでも、すべて、パーミッションという属性を持っています。 この属性によって、そのファイルを誰が読み書きできるのか決まります。 個人で使っているパソコンでは、すべてのファイルを読んだり更新したりできますが、みんなで使うサーバでは、すべてのファイルを誰もが読み書き出来てしまったのでは大変です。 そこで、誰がどこまで使えるかを指定しておきます。 [ パーミッションの設定ではファイルを使う人を3種類に分けます ] (1) Owner : 所有者 (猿島インターネットのアカウント p00001 さんが test.html というファイルをサーバに転送した場合、test.html の所有者は p00001 さんです) (2) Group : グループ (猿島インターネットでは、ユーザの皆さんは user グループに属しています。) (3) Other : 他人 (所有者でもなく、(2)のグループにも属さない人) [ 上記の分類ごとに以下の許可を与えます ] (1) R : 読込許可 (そのファイルを読むことができるかどうか) (2) W : 書込許可 (そのファイルの内容を更新する事ができるかどうか) (3) X : 実行許可 (そのファイルを実行する事ができるかどうか。CGIなどの場合に使います。) 例えば、p00001 さんが作った test.html というHTML文書には、所有者である p00001 さんだけが更新できて、その他の人は、読む事だけが許可されるように設定しておきます。 もし、誰でも読み書きできるようにしておくと、先頭に書いてあるような事件が発生する危険があります。 [ パーミッションの表記法 ] パーミッションは、次のように表示されます。 (1) 文字による表記 (例) RWXR--R-- この表記では、先頭から3文字が所有者のパーミッション、次の3文字が所属グループのパーミッション、最後の3文字が他人のパーミッションで、3組の3文字でパーミッションを表します。 3文字の組み合わせの中で、 1文字目はRか−です。Rであれば読込許可。−であれば読込不許可。 2文字目はWか−です。Wであれば書込許可。−であれば書込不許可。 3文字目はXか−です。Xであれば実行許可。−であれば実行不許可。 例えば、RW-R--R-- であれば、所有者は読込・書込ができて、グループや他人は読込のみ可能。これは、HTML文やイメージ画像などの安全なパーミッションです。 RWX------ であれば、所有者のみ読込・書込・実行ができて、グループや他人は何もできません。これは、CGIの安全なパーミッションです。 (2) 数字による表記 (例) 744 この表記では、先頭の数字が所有者のパーミッション、次の数字が所属グループのパーミッション、最後の数字が他人のパーミッションで、3つの数字でパーミッションを表します。 各数字の意味を文字表記との対で説明すると、 7:RWX (読込可・書込可・実行可 すべて可能) 6:RW− (読込可・書込可・ ) 5:R−X (読込可・ ・実行可) 4:R−− (読込可・ ・ ) 3:−WX ( ・書込可・実行可) 2:−W− ( ・書込可・ ) 1:−−X ( ・ ・実行可) 0:−−− ( ・ ・ すべて不可) 例えば、644 であれば、所有者は読込・書込ができて、グループや他人は読込のみ可能。これは、HTML文やイメージ画像などの安全なパーミッションです。 700 であれば、所有者のみ読込・書込・実行ができて、グループや他人は何もできません。これは、CGIの安全なパーミッションです。 [ ディレクトリのパーミッション ] ディレクトリのパーミッションは、次のように設定して下さい。 RWXR-XR-X (755) ディレクトリのパーミッションでは、Wは書込許可というよりは、新しいファイルを作ったり、既にあるファイルを削除できるかという事を表し、Xは実行許可では無くて、そのディレクトリを扱えるかという意味になります。 よって、これ以外のパーミッションを与えると危険です。 [ フリーのCGIを使う場合の注意 ] フリーのCGIを使う場合に、その説明書きに、CGIファイルのパーミッションを755にする等、書いてあることがありますが、上記を読んでもらえれば分かる通り、鵜呑みにすると、セキュリティ上かなり危険です。 十分ご注意下さい。 当社としては、以下のようなパーミッションに設定する事を、お願い致します。 一般のHTMLやイメージ画像などのファイルは、RW-R--R-- (644) CGIファイルは、RWX------ (700) CGIで使用するデータファイルなどは、RW------- (600) (あまり危険なパーミッションになっている場合、当社で変更させていただく場合もありますので、ご了承下さい。) 茨城県猿島郡境町伏木 1262-1 TEL:0280(87)6211 FAX:(87)6020 info@dreams.ne.jp |