白帽子讲Web安全1.pdf

第一章 我的安全世界观

安全是一个持续过程

6种威胁:Spoofing(伪装)、Tampering(篡改)、Repudiation(抵赖)、InformationDisclosure(信息泄漏)、Denial of Service(拒绝服务)、Elevation of Privilege(提升权限)

一个优秀的安全方案需要:

有效解决问题

用户体验良好

高性能

低耦合

易于升级和扩展

安全策略

Secure by Default原则(最小权限原则):白名单可通过和禁止黑名单,前者限制的范围更大更安全

Defense in Depth原则(纵深防御):在各个方面,各个深度形成整体进行有效防御

数据与代码分离原则:应当注意代码与数据的边界,将用户数据当作代码执行导致安全问题发生

第二章 浏览器安全

同源策略:限制来自不同源的"document",对当前"document"读取或设置某些属性

浏览器提出了"Origin(源)"的概念,影响“源”的因素有:host(域名或IP地址,如果是IP地址则看作一个根域名)、子域名、端口、协议,在浏览器中<script>、<img>、<iframe>、<link>等标签可以跨域加载资源,不受同源策略限制,这些带"src"属性的标签加载时,实际上是由浏览器发起一次GET请求,不同于XMLHttpRequest,通过src属性加载的资源,浏览器限制了JavaScript权限,使其不能读、写其中返回的内容

对于浏览器来说,除了DOM、Cookie、XMLHttpRequest受到同源策略限制以外,一些加载的第三方插件Flash、Google Gears等都有自己的控制策略

浏览器采取多进程构架,Google Chrome将主要进程分为浏览器进程、渲染进程、插件进程、扩展进程,各个进程相互隔离,互不影响

IE8也采取了多进程构架,每一个Tab页即一个进程

Sandbox即沙箱,现今泛指“资源隔离类模块”的代名词,Sandbox设计目的是为了让不可信的代码运行在一定的环境中,限制代码访问隔离区之外的代码,或者是通过一定的数据通道(封装的API)

多进程构架相对于单进程构架的好处在于发生崩溃时,其他进程不会受到影响

恶意网址拦截:浏览器周期性地从服务器端获取恶意网址名单,访问这些网址时弹出一个警告页面

第三章 跨站脚本攻击(XSS)

跨站脚本攻击,全称Cross Site Script,为了区别于CSS(Cascading Style Sheet),称为XSS

XSS根据效果不同,可以分为以下几类

反射型XSS:只是简单地把用户输入的数据“反射”给浏览器,黑客往往需要诱使用户“点击”一个恶意链接才能攻击成功,也称作“非持久型XSS”

存储型XSS:把用户输入的数据“存储”在服务器端,具有很强的稳定性,比如一篇博客里包含恶意代码,所有访问该博客的用户都会在浏览器中执行这段恶意代码,也称“持久型XSS”

DOM Based XSS:这种类型并非按照“数据是否保存在服务器端”来划分,它从效果来说也是反射型XSS,通过修改页面的DOM节点形成的XSS(通过闭合之前的标签,//注释掉之后的内容,中间插入<script>)

XSS攻击进阶

攻击者对页面植入恶意脚本,这些恶意脚本被称为“XSS Payload”,常见的XSS Payload就是通过读取浏览器的Cookie对象,发起“Cookie劫持”攻击,Cookie一般加密保存了当前用户的登陆凭证,攻击者可以不通过密码直接登陆用户账户,在后面的章节讲Cookie防御

构造GET与POST请求:假设Sohu博客所在域的某页面存在XSS漏洞,可以通过一张图片发起一个GET请求

var img=document.createElement("img");

img.src="http://blog.sohu.com/manage/entry.do?m=delete&id=156713012";

document.body.appendChild(img);

只要让博客作者执行这段JavaScript代码就可以把这篇文章删除

XSS代码还可以模拟浏览器发送GET、POST请求

例如获取QQ邮箱sid编码后模拟浏览器请求

识别用户端信息

在IE中可以通过判断ActiveX控件的classid是否存在来推测用户是否安装了该软件,然后选择对应的浏览器漏洞植入木马(下例检测是否安装了迅雷软件)

第三方软件可能会泄漏一些信息,比如Flash有一个system.capabilities对象,能够查询客户端电脑中的硬件信息

Firefox的插件(Plugins)列表存放在一个DOM对象中,通过查询DOM可以遍历出所有的插件navigator.plugins对象

获取用户IP:JavaScript本身没有获取本地IP地址的能力,XSS可以借助第三方软件来完成,比如客户端安装了Java环境,XSS就可以通过调用Java Applet的接口获取客户端的本地IP地址

有安全研究者将XSS Payload功能封装起来,成为XSS攻击平台,主要目的在于演示XSS的危害

Attack API

BeEF

XSS-Proxy

终极武器:XSS Worm

2005年,19岁的Samy Kamkar发起了对MySpace.com的XSS Worm攻击,当时的MySpace过滤了很多危险的HTML标签,只保留了<a><img><div>等安全标签,所有的事件如“onclick”也被过滤了,却允许CSS,如

<div style="background:url(‘javascript:alert(1)‘)">

通过拆分法避开JavaScript的敏感词

一般来说,存在储存型的XSS,比较容易发起XSS Worm攻击

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

时间: 2024-12-22 14:43:17

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

白帽子讲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) <

读&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