スポンサーリンク

mod_securityで出力をフィルタする

SecFilterOutput On
SecFilterSelective OUTPUT "<?php" log,deny

ソースコードは、web rootの外に置く

web の root には、コードをできるだけおかず、ロジックやセンシティブなコードは、別の場所に配置する。例えば、/usr/local/shar/pear/this_serviceとかに。

web rootには、下記のようなincludeだけのソースコードを配置する。
仮にソースがブラウザに表示されてしまったとしても、最小限のコードの流出に押さえることができる。
<?php
include ('this_service/index.inc');
?>

デフォルトファイルタイプを変更する

デフォルトでは、Apacheはファイルをtext/planとして扱う。

httpd.confにおいて下記設定をする。
DefaultType application/x-httpd-php

webrootの外は、すべてのDenyにする

/ ディレクトリは、すべて Deny にし、webroot(ここでは /home/www)のアクセスを許可する。

httpd.conf か .htaccess において下記設定をする。

<Directory />
Order Deny,Allow
Deny from all
Options None
AllowOverride None
</Directory>

<Directory /home/www>
Order Allow,Deny
Allow from all
</Directory>

まとめ

ソースは、webの見えるところには、可能な限りおかないことが、ソースの流出の可能性や流出量を下げる。しかし、この設定や方法だけに限らず、OSコマンドインジェクションやパストラバースなどにも注意する必要があることを忘れてはならない。

スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

はてなの人気のブックマーク

スポンサーリンク
 

過去ログ

2019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー