zhaoace
2017-02-27 11:27:40 +08:00
有些基本概念可能需要厘清一下。
1. 浏览器的 console 的 document 改的是什么?
2. 浏览器和对方服务器是怎么交互的?
3. XSS 攻击的几个条件。
我也是二把刀,只能讲下自己的理解。
1. console 这里改动的都是你客户端本地机器渲染出来的内容。你可以用脚本去 setValue ,但是这都是你本地浏览器里的内容,和对方服务器无关。
2. 浏览器和服务器交互一般来说是页面的 http get/post 这个样子,再多一层就是 ajax 的 http get/post 。虽然有 socket 之类的应该不是你想问的内容。在你的例子里,你的改动不经过 http 请求是发不到服务器端的,所以也不存在攻击了别人网站这回事情。
3. XSS 攻击要求 a.把你的脚本上传到服务器上, b. 别人读取服务器内容是顺便读取了你上传的脚本, c.别人的浏览器执行了你的脚本。 这样造成的结果就是别人不知情的情况下用他的浏览器运行了你的脚本,是为跨站+脚本+攻击。同样,在你的例子里,你的 Scripts 没有传到服务器上别人是读不到你的 Scripts 的,同时你的脚本没有攻击性,所以既不是跨站,也不是脚本攻击,和 XSS 没有关系。。。
我觉得大家吐槽大概是觉得这些东西解释起来太麻烦了吧。。。应该不是恶意的。。。
我为啥这么闲的蛋疼解释呢?因为我年假快过期了今天在家里蹲着休假呀!