面试题2

解决前端安全性问题

xss

定义:跨站脚本。计算机安全漏洞,允许恶意web用户将代码植入到提供给其他用户使用的页面中。

特点:能注入恶意的html/javascript 代码到用户浏览的网页上,从而达到cookie资料窃取、会话劫持、钓鱼欺骗等攻击。

示例

原因

浏览器本身就不安全能解析执行js等代码不会判断改数据和程序代码是否恶意。

输入输出没有做好安全防护。

xss灵活多变。

防范

将重要的cookie标记为http only 这样的话Javascript中的document.cookie语句就不能获取的到cookie了。

表单数据规定值得类型比如年龄就只能是int name是字母数字组合。

过滤或转移特殊的html标签,例如

过滤javsript事件的标签,例如:“οnclick=” “onfocus”

CSRF

定义:跨站请求伪造。xss 利用站点内部的信任用户,csrf 通过伪造来自受信任用户的请求来利用受信任的网站。

防范

  • 通过referer、 token(令牌)
    验证码来检测用户提交。劫持用户信息发来的请求没有服务器发给用户的令牌。referer在本页面发送过来的就有refer不是就没有。没有refer就是这个发送过来的是伪造的。
  • 尽量不要在页面的链接中暴露用户隐私信息。
  • 对于用户修改删除操作最好使用post操作
  • 避免全站通用的cookie严格设置cookie的域。

圣杯布局、双飞翼布局

都是左右两边固定 中间自适应。

圣杯布局:

面试题2面试题2

双飞翼布局:

面试题2