DVWA—Weak Session IDs (弱会话)
low
<?php
$html = "";
if ($_SERVER['REQUEST_METHOD'] == "POST") {
if (!isset ($_SESSION['last_session_id'])) {
$_SESSION['last_session_id'] = 0;
}
$_SESSION['last_session_id']++;
$cookie_value = $_SESSION['last_session_id'];
setcookie("dvwaSession", $cookie_value);
}
?>
setcookie()
函数向客户端发送一个 HTTP cookie。如果用户 SESSION 中的 last_session_id
不存在就设为 0,生成 cookie 时就在 cookies 上 dvwaSessionId + 1。这种生成方式过分简单了,而且非常容易被伪造。
首先在网页生成 cookie,可以见到 cookie 的格式异常简单,“dvwaSession=” 再加上个 id 数字。
![image-20220608030915160](https://cdn.jsdelivr.net/gh/whyff/MylmageHost/image-20220608030915160.png)