我在管理员面板上进行了以下设置:
如果用户未登录,则会自动返回login.php。所以他们无法在不记录的情况下访问index.php和sendEmailsToAll.php。
在这两个页面上,我执行以下操作:
require "logincheck.php";
logincheck看起来像这样:
<?php
session_start();
if(!isset($_SESSION['logincheck'])) {
echo '<script language="Javascript">';
echo 'window.location="login.php"';
echo '</script>';
}
?>
因此,如果我在没有记录的情况下手动浏览任何这些页面,它就会起作用,它会将我带回登录页面。
我试图在网站上运行审计工具(Acunetix)。
该工具能够识别并对索引和sendemails页面发送POST请求(因此它实际上是通过乱码将电子邮件发送到我的地址),而无需先进行身份验证。
我怎么能阻止这个?
提前致谢
答案 0 :(得分:16)
不要使用JAVASCRIPT进行重定向!使用
header('Location: login.php');
exit;