反射型跨站点脚本 例子
1. 反射型跨站点脚本是存在的。
2. 这是因为反射型跨站点脚本攻击是一种常见的网络安全漏洞,攻击者通过在URL参数或输入框中注入恶意脚本代码,使得服务器将恶意脚本返回给用户的浏览器执行,从而获取用户的敏感信息或进行其他恶意操作。
3. 举个例子,假设一个网站有一个搜索功能,用户在搜索框中输入关键词,然后网站将搜索结果返回给用户。
如果该网站没有对用户输入进行充分的过滤和验证,攻击者可以在搜索框中注入恶意脚本代码,当其他用户搜索同样的关键词时,恶意脚本会被返回并在其浏览器中执行,从而导致用户的信息被窃取或其他不良后果发生。
这就是反射型跨站点脚本攻击的一个例子。
为什么要进行url encode
rl转义其实也只是为了符合url的规范而已。因为在标准的url规范中中文和很多的字符是不允许出现在url中的。
看一下php的urlencode的说明了。
urlencode — 编码 URL 字符串
string urlencode ( string $str )
返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的,同时与 application/x-www-form-urlencoded 的媒体类型编码方式一样。由于历史原因,此编码在将空格编码为加号(+)方面与 RFC1738 编码(参见 rawurlencode())不同。此函数便于将字符串编码并将其用于 URL 的请求部分,同时它还便于将变量传递给下一页