iwebsec-xss 04 xss修复示例
01、题目分析
这一题就不是解题了,是教如何实现防范xss漏洞的,因此我们重点分析源码,是如何实现防范xss的
02、xss
按照第一关的xss方式去访问,可以明显发现没有出弹窗,而是把js代码作为文字输出到界面上
03、源码分析
<?php require_once '../header.php'; ?>
<html>
<head>
<title>XSS修复示例</title>
</head>
<h2>XSS修复示例</h2>
<div class="alert alert-success">
<p>/04.php?name=iwebsec </p>
</div>
<body>
<table class='table table-striped'>
<?php
// 检查是否接收到名为"name"的GET参数
if(isset($_GET['name'])){
// 如果接收到"name"参数,则将其赋值给变量$name
$name=$_GET['name'];
// 使用htmlspecialchars将$name的值转义为HTML实体,以防止XSS攻击
echo "<h2>"."Hello ".htmlspecialchars($name)."<h2>";
}else{
// 如果没有接收到"name"参数,则退出脚本
exit();
}
?>
</table>