iwebsec-xss 04 xss修复示例

发布时间 2023-08-21 20:31:17作者: 别打扰我摸鱼

01、题目分析

这一题就不是解题了,是教如何实现防范xss漏洞的,因此我们重点分析源码,是如何实现防范xss的

02、xss

按照第一关的xss方式去访问,可以明显发现没有出弹窗,而是把js代码作为文字输出到界面上
image

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>