¿Cuál es el método de implementación en PHP para identificar que la URL ha sido manipulada y bloquear el acceso?

En PHP, existen varias formas de identificar y bloquear el acceso a URL manipuladas. A continuación se muestran algunos métodos comunes:

  1. Autenticación básica: la autenticación HTTP básica se puede implementar utilizando PHP $_SERVER['PHP_AUTH_USER']y variables. $_SERVER['PHP_AUTH_PW']Se puede solicitar a los usuarios que ingresen un nombre de usuario y contraseña antes de acceder a una página protegida. Si se proporcionan credenciales no válidas, se puede bloquear el acceso.
if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
    
    
    header('WWW-Authenticate: Basic realm="My Realm"');
    header('HTTP/1.0 401 Unauthorized');
    echo 'Text to send if user hits Cancel button';
    exit;
}

// 检查凭据是否有效
if ($_SERVER['PHP_AUTH_USER'] != 'username' || $_SERVER['PHP_AUTH_PW'] != 'password') {
    
    
    echo 'Access Denied';
    exit;
}

// 允许访问受保护的页面
  1. Validación de formulario: agregue un campo oculto en la página del formulario que requiere que el usuario complete los valores correctos al enviar el formulario. Del lado del servidor, puede verificar que el valor de ese campo oculto coincida con el valor esperado. Si la verificación falla, se puede bloquear el acceso.
// 在表单中添加隐藏字段
<input type="hidden" name="security_token" value="your_security_token">

// 在服务器端验证表单提交
if (empty($_POST['security_token'])) {
    
    
    echo 'Invalid form submission';
    exit;
}

// 验证隐藏字段的值是否与预期值匹配
if ($_POST['security_token'] != 'your_security_token') {
    
    
    echo 'Security token mismatch';
    exit;
}

// 允许访问受保护的页面
  1. Utilice un token: agregue un token único a la URL y proporcione el token correcto cada vez que acceda a ella. Del lado del servidor, se puede verificar la validez del token. Si el token no es válido, se puede bloquear el acceso.
// 在 URL 中添加令牌
$token = generateToken(); // 生成唯一的令牌
$url = 'http://example.com/protected_page?token=' . $token;

// 在服务器端验证令牌
if (empty($_GET['token'])) {
    
    
    echo 'Invalid URL';
    exit;
}

$validToken = generateToken(); // 生成新的令牌进行验证
if ($_GET['token'] !== $validToken) {
    
    
    echo 'Invalid token';
    exit;
}

// 允许访问受保护的页面

Estos métodos pueden ayudar a identificar y bloquear el acceso a URL manipuladas. Tenga en cuenta que estos métodos no son completamente seguros, pero pueden aumentar la seguridad y reducir los riesgos potenciales. En aplicaciones prácticas, se deben combinar otras medidas de seguridad para garantizar la seguridad del sitio web.


@missingsometimes

Supongo que te gusta

Origin blog.csdn.net/weixin_41290949/article/details/132634233
Recomendado
Clasificación