PHPとJavascriptを使用して小さなファイルブラウジングスクリプトを作成していますが、私は小さな問題に遭遇しました。現在のディレクトリは、URLにGETとして、index.php?dir=/projects/jphp
がベースにあるときに格納されます。ユーザーがそれらthorugh見ることができるようにfielsが表に記載されているように、フォルダは次のようにハイパーリンクされてい秘密../リアルディレクトリにPHP
$scandir = $_GET['dir'];
を:私は、使用してvariabe $scandir
でこれを保管
<td><a style="color: red;" href="edit.php?pid=<?php echo $project['id'] ?>&dir=<?php echo $scandir . "/" . $thisfile; ?>"><?php echo $thisfile; ?></a></td>
変数$thisfile
は人口でありますディレクトリ内のすべてのファイルを通過するループforeach()
を使用します。
ユーザーがファイルアドレスはとても乱雑なり、フォルダやファイルを閲覧するために起動すると、例えば、ファイルの閲覧分後、$_GET['dir'];
は
projects/jphp/js/../js/../../../projects/jphp
のように見える保つためにどのような方法があります上のパスと同じ単純なパスは、
と同じです。projects/jphp
トップを下に隠す方法が分かっていれば、それは素晴らしいことです。私はこれをうまく説明していないかもしれないので、あなたに私が意味を成していないことを知らせてください。
あなたは[RFI]の意味を理解していることを確認してください(http://de.wikipedia.org/wiki/Remote_File_Inclusionリモートファイルインクルージョン) – knittl
ええ、私はそれを動的に/セキュリティの影響を考慮してユーザーの入力で行うことをお勧めします。 – Kzqai
個人的には、地元のアプリが一緒にハッキングすると、問題が発生する可能性があることがわかります。なぜなら、誰かが「よく、ローカルネットワークでここにアクセスしても大丈夫です。自宅や道路からアクセスすることなどが含まれます。しかし、あなたが危険を認識している限り。 – Kzqai