前言
登录认证是Web应用程序安全的基础,但常常存在被绕过的漏洞和攻击方法,如暴力破解、CSRF攻击、会话劫持和漏洞利用等。为了提高Web应用程序的安全性,需要采取一系列安全措施,如强密码策略、双因素身份验证、HTTPS加密传输和定期更新会话令牌等。
本文讲继续以DVWA展开讲述登录认证原理及绕过方法,并在文章的最后给出提高 Web 应用程序的安全性的各种方法和策略。
一、登录认证的基本原理-DVWA low level
这里以DVWA 暴力破解的low level举例,源代码中部分代码如下,后台登录认证中取前端表单的认证信息的PHP代码如下。
<?php
if( isset( $_GET[ 'Login' ] ) ) {
// Get username
$user = $_GET[ 'username' ];
// Get password
$pass = $_GET[ 'password' ];
$pass = md5( $pass );
// Check the database
$query = "SELECT * FROM `users` WHERE user = '$user' AND password = '$pass';";
$result = mysqli_query($GLOBALS["___mysqli_ston"], $query ) or die( '<pre>' . ((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error($GLOBALS