Web信息安全实践_4.0 XSS_知乎1
XSS攻击即为(Cross Site Scripting), 中文为跨站脚本。 之所以它的名字不是CSS而是XSS,是为了区分CSS。 XSS攻击是发生在 目标用户的浏览器 上的,当渲染DOM树的过程中执行了 不该 执行的JS代码时,就发生了XSS攻击。跨站脚本的重点不是“跨站”,而是“ 脚本” 页面执行不该执行的JS 我们首先来看一下,页面执行不该执行的JS是什么意思。譬如我们来看这个代码: // 假设有一个自动回答网站:在框内输入一个问题,这个问题是通过$_GET['q']获取的;网站后台接收用户输入,把用户输入展示在页面上。 Hello, your question is: <?php echo $_GET['q']; ?> // 接下来攻击者可以设计这么一个URL localhost/xss.php?q=<script>alert(1);</script> 大家想一想,这个URL点开一下,效果是什么? 再换一个URL呢? http://localhost/xss.php?q=%3Cscript%3Ealert%28document.cookie%29;%3C/script%3E 因此,所谓执行不该执行的JS代码的意思就是:用户通过各种方法向网站中注入了一些JS代码,而网站没有对用户的JS代码做任何检查,就直接把它有显示在了网站的页面上。因此,导致了用户注入的JS代码的运行。