Web信息安全实践_4.1 XSS防御

Posted tianjiazhen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Web信息安全实践_4.1 XSS防御相关的知识,希望对你有一定的参考价值。

XSS 存在的三个条件

  • 网站应用程序必须接受用户的输入信息
  • 用户的输入会被网站用来创建动态内容
  • 用户的输入验证不充分
    • 输入过滤,输出转义:检查用户输入含有攻击信息,尽可能过滤攻击信息;如果不能判断哪些是攻击信息,那么要使得显示的时候不能发送攻击
 

输入过滤

使用黑名单,从用户的输入中删除 <script>
  • 缺点:很难保证完全;限制了用户展示代码
<scr<script>ipt> //若仅过滤一个script,其他不检查
some<<b>script>alert(hello)<</b>/script //在标签中加标签,防止被过滤
// 伪协议javascript
<img src=javascript:alert(Hello)> 
<table background="javascript:alert(‘Hello’)”>
// 伪协议JavaScript
<img src=javascript:alert(Hello)> 
<table background="javascript:alert(‘Hello’)”>
 
// 伪协议JavaScript
<img src=javascript:alert(Hello)> 
<table background="javascript:alert(‘Hello’)”>
// 编码绕过防御措施
%3cscript%3ealert(document.cookie) %3cscript%3e
 
 

 输出转义

 

// www.myzoo.com/users.php
$profile = htmlspecialchars($profile); 
//htmlspecialchars:把特殊字符(如< /)特殊编码,经过特殊编码后script不会被识别成脚本语言,但显示时仍以字符原样显示

XSS 防御: httponly cookie

微软提出,保护cookie策略
? 大多数浏览器都支持 httponly cookie
? 仅在传输 HTTP (或 HTTPS )请求时才使用 httpOnly 会话cookie
? 防止通过 XSS 窃取会话 cookie

以上是关于Web信息安全实践_4.1 XSS防御的主要内容,如果未能解决你的问题,请参考以下文章

20145237《网络攻防》Web安全基础实践

Web信息安全实践_4.0 XSS_知乎1

Exp9 Web安全基础实践 20154308张珊珊

20145207 Exp9 web安全基础实践

2018-2019-2 网络对抗技术 20165228 Exp9 Web安全基础实践

Web信息安全实践_3.4 CSRF防御