php - 我的管理控制面板是可破解的,我不知道为什么

标签 php protection

我的管理面板上有以下设置:

  • /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>';
}
?>

因此,如果我在没有登录的情况下手动浏览这些页面中的任何一个,它就可以正常工作并将我带回登录页面。

我尝试在网站上运行审计工具 (Acunetix)。

该工具能够识别并向索引和发送邮件页面执行 POST 请求(因此它实际上发送了带有乱码的电子邮件到我的地址)而无需先进行身份验证。

我怎样才能避免这种情况?

提前致谢

最佳答案

不要使用 JAVASCRIPT 进行重定向!使用

header('Location: login.php'); 
exit;

关于php - 我的管理控制面板是可破解的,我不知道为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17069686/

相关文章:

excel - 使用 ws.protect 设置工作表保护 - 但不使用菜单取消保护(查看 - 取消保护工作表)

php - 有没有办法用表格上传 youtube 视频?

c++ - 从 Internet 检索时间(绕过 PC 时钟)?

asp.net - 如何保护 Web 服务器免受反向代理服务器的影响

php - 将数字存储在mysql中并将该数字更改为其他数字?

java - 创建只读文件

perl open() 注入(inject)预防

PHPWord 将一行中的某些单词加粗

php - 用下划线替换 URL 中的空格

php - 正确使用 echo json_encode(array ('error' => false/true.