白帽子讲Web安全2.pdf

XSS构造技巧

利用字符编码:

var redirectUrl="\";alert(/XSS/);";

本身没有XSS漏洞,但由于返回页面是GBK/GB2312编码的“%c1\”成为了一个Unicode字符,忽略掉转义字符\

%c1";alert(/XSS/);//

绕过长度限制:

很多时候产生XSS的地方会有变量长度限制,将代码藏在location.hash中,然后在其他地方调用即可

http://www.a.com/test.html#alert(1)

<input type="text" value="" onclick="eval(location.hash.substr(1))"/>//去掉第一个字符#

用户点击文本框时触发playload

某些环境下,可以利用注释符绕过长度限制

<input id=1 type="text" value=""/>

XXXXXXXXXXXXXX

<input id=2 type="text" value=""/>

第一个文本框输入"><!--

第二个文本框输入--><script>...</script>

将中间的代码注释掉

使用<base>标签:

它的作用是定义页面上的所有使用“相对路径”标签的hosting地址

比如<img src="/intl/en_ALL/logon.png"/>

可以设置

<base href="http://www.google.com"/>

在技术文档中,提到<base>标签只能用于<head>标签内,实际上<base>可以出现在页面的任何地方,并作用于该标签之后的所有标签,XSS可以劫持所有使用相对地址的标签

window.name:window.name对象是没有特殊字符的限制,由于window对象是浏览器的窗体,并非document对象,很多时候window对象不受同源策略的限制,可以实现跨域、跨页面传递数据

在同一窗口www.a.com/test.html中为window.name赋值,跳转到www.b.com/test.html中后window.name的值依然是之前页面的赋值

可以eval(window.name)

之前讲的都是基于HTML的XSS攻击,在Flash中同样可以造成XSS攻击,ActionScript脚本非常强大灵活,甚至可以发起网络连接,在实现XSS Filter时,禁用<embed><object>等标签,如果一定要使用的话,可以将视频转码为flv文件,flv是静态文件,不会产生安全隐患,或者配置相关信息,禁止Flash与页面进行通信

JavaScript框架也会存在一些XSS漏洞

XSS防御:浏览器禁止页面的JavaScript访问带有HttpOnly属性的Cookie;输入检查是否携带非法字符;输出检查,将字符编码和转义如<编码为&lt;

如果网站使用了MVC架构,那么XSS就发生在View层——在应用拼接变量到HTML页面时产生

第4章  跨站点请求伪造(CSRF)

CSRF全名是Cross Site Request Forgery,就是跨站点请求伪造

诱使用户访问一个页面(调用Cookie),就以该用户身份在第三方站点里执行了一次操作

浏览器所持有的Cookie分两种,一种是“Session Cookie”,又称“临时Cookie”;另一种是“Third-party Cookie”,也称“本地Cookie”

Third-party Cookie是服务器在Set-Cookie时指定Expire时间,只有到了Expire时间后,Cookie才会失效(保存在本地),Session Cookie未指定Expire时间,浏览器关闭则失效(保持在浏览器进程的内存空间)

CSRF防御:

验证码

Referer Check最常见的应用是“防止图片盗链”,可以检查请求是否来自合法的“源”

CSRF的本质是攻击者可以猜测到重要操作的参数,如果参数进行加密或者使用随机数

第5章 点击劫持(ClickJacking)


点击劫持是一种视觉欺骗手段,攻击者使用一个透明的、不可见的iframe,覆盖在网页上(控制iframe的长宽,调整top、left的位置,设置透明度为0)

通常可以写一段JavaScript代码,禁止iframe的嵌套,这种方法叫frame busting

if(top.location!=location){

top.location=self.location;  //防止当前页面被嵌套在其他iframe中

}

第6章 HTML5安全

HTML5为<iframe>标签定义了一个新属性sandbox,定义新属性之后<iframe>标签加载的内容将被视为一个独立的“源”(同源策略);

HTML5为<a>、<area>定义了一个新的Link Types:noreferrer

<a href="xxx" rel="noreferrer">test</a>  //不再发送Referer,保护隐私信息

同源策略给Web开发者带来很多问题,由此诞生jsonp、iframe跨域等技巧

HTML5定制了新API:postMessage,它允许每一个window(包括当前窗口、弹出窗口、iframes等)对象往其他窗口发送文本消息,实现跨窗口的消息传递,这个功能不受同源策略限制

在窗口的window对象上调用window.postMessage(document.getElementById("...").value);

另一个窗口监听document.addEventListener("message",function(e){...},false);

Web Storage:

在Web Storage出现以前,浏览器里存储信息方式有Cookie(只包含基本信息)、Flash Shared Object(Adobe公司)、IE UserData(微软公司)

W3C委员会希望在客户端有一个较为强大的本地存储功能,就是Web Storage,它分为Session Storage(关闭浏览器就会失效)和Local Storage(一直存在)

Web Storage就像一个非关系型数据库,由Key-Value对组成

window.sessionStorage.setItem(key,value);  //设置

window.sessionStorage.getItem(key);  //读取

Web Storage也受同源策略约束,每个域所拥有的信息只会保存在自己的域下,其他域访问得到null

白帽子讲Web安全2.pdf,布布扣,bubuko.com

时间: 2024-10-14 01:42:12

白帽子讲Web安全2.pdf的相关文章

白帽子讲Web安全1.pdf

第一章 我的安全世界观 安全是一个持续过程 6种威胁:Spoofing(伪装).Tampering(篡改).Repudiation(抵赖).InformationDisclosure(信息泄漏).Denial of Service(拒绝服务).Elevation of Privilege(提升权限) 一个优秀的安全方案需要: 有效解决问题 用户体验良好 高性能 低耦合 易于升级和扩展 安全策略 Secure by Default原则(最小权限原则):白名单可通过和禁止黑名单,前者限制的范围更大更

读&gt;&gt;&gt;&gt;白帽子讲Web安全&lt;&lt;&lt;&lt;摘要→我推荐的一本书

<白帽子讲Web安全>吴翰清著 刚开始看这本书就被这本书吸引,感觉挺不错,给大家推荐下,最近读这本书,感觉不错的精华就记录下, 俗话说>>>好脑袋不如一个烂笔头<<< 还有,大家也看出来,最近我也要开始写博客了, 万事开头难嘛,先拿来那些nx点的人物的书籍来记录下, 本人文笔确实不怎么滴,思路略混乱,中学时代我的作文就是我们班的一盏亮灯,指引我们全班文笔不要向我的文笔思路靠近 ←```warn```→ 读万卷书,行万里路,以后不做宅男.加油··· 信息不等于

白帽子讲Web安全

在安全圈子里,素有"白帽"."黑帽"一说. 黑帽子是指那些造成破坏的黑客,而白帽子则是研究安全,但不造成破坏的黑客. 白帽子 均以建设更安全的互联网为己任. 不想拿到"root"的黑客,不是好黑客.漏洞利用代码能够帮助黑客们达成这一目标.黑 客们使用的漏洞利用代码,被称为"exploit".在黑客的世界里,有的黑客,精通计算机技术, 能自己挖掘漏洞,并编写 exploit:而有的黑客,则只对攻击本身感兴趣,对计算机原理和各种

白帽子讲Web安全--读书笔记

在安全圈子里,素有"白帽"."黑帽"一说. 黑帽子是指那些造成破坏的黑客,而白帽子则是研究安全,但不造成破坏的黑客. 白帽子 均以建设更安全的互联网为己任. 不想拿到"root"的黑客,不是好黑客.漏洞利用代码能够帮助黑客们达成这一目标.黑 客们使用的漏洞利用代码,被称为"exploit".在黑客的世界里,有的黑客,精通计算机技术, 能自己挖掘漏洞,并编写 exploit:而有的黑客,则只对攻击本身感兴趣,对计算机原理和各种

《白帽子讲Web安全》——第一篇 第一章 我的安全世界观

前些日子定的书单,下放给各淘宝卖家,今天来的第一本就是这本,是一个我完全陌生的领域,然而强烈的好奇心,催使我看完了第一章,其实就是个概述. 1.1 Web安全简史 exploit:黑客们使用的漏洞利用代码. Script Kids:只对攻击本身感兴趣,没有动手能力,对计算机原理和各种编程技术略知一二,因而只能编译别人的代码的黑客,即“脚本小子”. 1. Web安全的兴起 (1)SQL注入 (2)XSS (3)CSRF http://blog.csdn.net/dyllove98/article/

《白帽子讲WEB安全》学习笔记之第1章 我的安全世界观

第1章 我的安全世界观 1.1 web安全简史 1.1.1 中国黑客简史 现在中国乃至全世界的黑客或者说是骇客已经进入了"黑暗时代",因为互联网存在这大量的利益. 1.1.2 黑客技术的发展历程 1.1.3 web安全的兴起 web安全是信息安全领域的一个重要的分支,但是中国目前对web安全的重视程度远远不足. 为什么要攻击Web应用,我认为主要有以下几个原因: q  web应用无处不在. q  相比较与操作系统等的安全防御能力,攻破web更容易一些. q  攻击web可以来无影去无踪

白帽子讲Web安全&mdash;&mdash;我的安全世界观

互联网本来是安全的,自从有了研究安全的人之后,互联网就变得不安全了. 一.安全的本质 安全问题的本质是信任的问题. 一切的安全方案设计的基础,都是建立在信任关系上的.我们必须相信一些东西,必须有一些最基本的假设,安全方案才得以建立:如果我们否定一切,安全方案就会如无源之水,无根之木,无法设计,也无法完成. 把握住信任条件的度,使其恰到好处,正是设计安全方案的难点所在,也是安全这门学问的艺术魅力所在. 二.破除迷信,没有银弹 安全是一个持续的过程. 三.安全三要素 机密性(Confidential

《白帽子讲WEB安全》学习笔记之第12章 WEB框架安全

第12章 WEB框架安全 12.1 MVC框架安全 在Spring框架中可以使用spring security来增加系统的安全性. 12.2 模板引擎与XSS防御 12.3 WEB框架与CSRF防御 在MVC中防御CSRF: q  在Session中绑定token.如果不能保存到数据库中的Session,则使用Cookie. q  在form表单中自动填写token字段 q  在Ajax请求中封装token. q  在服务器端对比POST提交的token与Session绑定的Tiken是否一致.

《白帽子讲WEB安全》学习笔记之第15章 web server配置安全

第15章 web server配置安全 15.1 apache安全 在linux部署安装web Server时候一定主要要使用"最小权限原则".尽量不要使用root部署. 15.2 nginx安全 Nginx 安全配置指南技术手册 PDF 下载 免费下载地址在http://linux.linuxidc.com/ 用户名与密码都是www.linuxidc.com 具体下载目录在 /pub/服务器相关教程/Nginx/Nginx 安全配置指南技术手册/ 参考资料:http://my.osc