管理者の cpanel で次のように設定しています。
- /admincpanel/index.php
- /admincpanel/login.php
- /admincpanel/sendEmailsToAll.php
ユーザーがログインしていない場合、自動的に login.php に戻ります。そのため、ログに記録せずに index.php と sendEmailsToAll.php にアクセスすることはできません。
両方のページで、次のことを行います。
require "logincheck.php";
ログインチェックは次のようになります。
<?php
session_start();
if(!isset($_SESSION['logincheck'])) {
echo '<script language="Javascript">';
echo 'window.location="login.php"';
echo '</script>';
}
?>
そのため、ログに記録せずにこれらのページのいずれかを手動で参照すると、機能し、ログイン ページに戻ります。
Web サイトで監査ツール (Acunetix) を実行しようとしました。
このツールは、最初に認証することなく、index ページと sendemails ページの両方への POST 要求を識別して実行することができました (そのため、実際には意味不明なメールを私のアドレスに送信しました)。
どうすればこれを防ぐことができますか?
前もって感謝します