Javascript 为什么这个xss不工作
我只是想在xss上练习,我想在echo上弹出一个警报框,它应该在echo上工作。我在做基于概念和层次的练习,我错误地使用了htmlspecialchars,这很容易受到xss的攻击。然而,这不是真的工作,我不明白为什么。这是我的密码Javascript 为什么这个xss不工作,javascript,php,security,xss,Javascript,Php,Security,Xss,我只是想在xss上练习,我想在echo上弹出一个警报框,它应该在echo上工作。我在做基于概念和层次的练习,我错误地使用了htmlspecialchars,这很容易受到xss的攻击。然而,这不是真的工作,我不明白为什么。这是我的密码 $name=htmlspecialchars($_GET['myname']); echo "<HTML><body>"; echo '<form action="">'; echo "name: <in
$name=htmlspecialchars($_GET['myname']);
echo "<HTML><body>";
echo '<form action="">';
echo "name: <input type='text' name='myname' ><br>";
echo "<input type='submit' ></form>";
echo $name; // here I want the xss to execute a popup box
echo "</HTML></body>";
$name=htmlspecialchars($\u GET['myname']);
回声“;
回声';
回声“名称:
”;
回声“;
echo$name;//这里我希望xss执行一个弹出框
回声“;
输入脚本如下所示
<script>alert();</script>
alert();
我也尝试过很多选择。脚本在我键入时显示,并且没有警报框
我在做基于概念和层次的练习,我错误地使用了htmlspecialchars,这很容易受到xss的攻击
但你不知道。您使用的htmlspecialchars
与预期使用的完全相同,因此在这里可以防止XSS
我在做基于概念和层次的练习,我错误地使用了htmlspecialchars,这很容易受到xss的攻击
但你不知道。您使用的htmlspecialchars
与预期使用的完全相同,因此在这里可以防止XSS
我错误地使用了htmlspecialchars,它易受xss攻击
对于您所拥有的其余代码,您的使用没有错误,并且对于您所拥有的代码,它不会受到XSS的攻击
仅使用一个参数使用htmlspecialchars
将使用默认设置,使
我错误地使用了htmlspecialchars,它易受xss攻击
对于您所拥有的其余代码,您的使用没有错误,并且对于您所拥有的代码,它不会受到XSS的攻击
仅使用一个参数使用htmlspecialchars
将使用默认设置,使
在html之前,你应该关闭body标签。还要将方法添加到form@Akin没有必要关闭HTML5中的一些标记,如果没有给出方法,则假定GET。为什么这是对htmlspecialchars()
函数的错误使用?看看这个,如果它能帮助你询问它,你应该在html之前关闭body标记。还要将方法添加到form@Akin没有必要关闭HTML5中的一些标记,如果没有给出方法,则假定GET。为什么这是对htmlspecialchars()
函数的错误使用?看看这个,如果它能帮上忙的话。未设置ENT_引号。正确的方法应该是htmlspecialchars($string,entu引号,'UTF-8')@zerodayENT\u引号在这里是不相关的(它只会影响“
和”
如何转义)。仍在转义
字符,使
标记根本无法工作。也无需指定UTF-8,因为它是所有受支持的PHP版本中的默认值。以下是一些假定有效的注入和此视频@zeroday,由于易受攻击代码的特殊性,它们可以工作。请看查看示例,看看entu QUOTES
的作用。您应该很快理解为什么这些链接中的示例易受攻击,以及为什么您的代码不易受攻击。如果没有转义单引号,您的代码不会中断,因此它不易受攻击。指定entu QUOTES
(或仅使用htmlentities
)这是一种最佳做法,因为有时您编写代码时会使用易受攻击的,
。事实并非如此。没有设置ENT\u引号。正确的方法应该是htmlspecialchars($string,ENT\u引号,'UTF-8');@zerodayENT\u引号
在这里是不相关的(它只会影响,
和“
的转义方式)。
字符仍在转义中,从而使
标记根本无法工作。也不需要指定UTF-8,因为它是所有受支持的PHP版本中的默认值。以下是一些假定有效的注入和视频@zeroday,由于易受攻击代码的细节,它们有效。看看这些例子,看看entu QUOTES
的作用。您应该很快理解为什么这些链接中的示例易受攻击,以及为什么您的代码不易受攻击。当单引号未转义时,代码不会中断,因此不易受攻击。指定entu QUOTES
(或仅使用htmlentities
)是一种最佳做法,因为有时您会使用易受攻击的'
编写代码。那么,如何解释这些工作注入和此视频@zeroday-“如何解释这些工作注入?”-我在刚才的回答中解释了这一点!它将值放入一个单引号分隔的属性中,就像我演示的那样!(我不打算去看视频,我没有时间看)。那么如何解释这些有效注射以及@zeroday的视频-“如何解释这些有效注射”-我在刚才给出的答案中解释了这一点!它将值放入一个单引号分隔的属性中,就像我演示的那样!(我不会去看视频,我没有时间看)。
$user_input = "' onmouseover='alert(1)'";
?>
<body data-userinput='<?php echo $user_input; ?>'>