最近看了360的前端面试题,其中涉及到了很多web安全的知识,突然意识到自己对这方面知之过少,所以花了一下午时间简单了解梳理了web安全相关的基础知识,在这里记录三种比较『纯』前端的攻击方式及其相应的防御方法
一、xss跨站脚本攻击(Cross Site Scripting)
- 如果网站带有评论功能并将评论内容直接存到服务器中,那么显示评论的时候就可能遭到之前恶意用户恶意评论的攻击
- 原理主要是通过在评论中输入html标签,如标签,就相当于往你的网页中嵌入了一段脚本
- 理论上,所有可输入的地方没有对输入数据进行处理的话,都会存在xss漏洞
例如在评论框中输入:
<script>
while(true) {
alert('Welcome!');
}
</script>
如此一来,当再次刷新页面的时候,你的网站就会一直显示”Welcome”
或者:
<script&