论坛风格切换
您好,欢迎光临本站!   登录 注册新用户
  • 34782阅读
  • 106回复

[本月活动]《Web之困:现代Web应用安全指南》有奖试读活动 [复制链接]

上一主题 下一主题

发帖
1478
黑豆
2391
威望
5301
贡献值
0
交易币
0
红豆
5
只看该作者 10 发表于: 2013-10-29
首先感谢本论坛和出版社给这次试读的资格,本人就这本书的试读章节做了一个总结,不仅详细和专业还请指导。
本书详细的解剖了关于web的相关知识,从进程开始和操作系统开始。第一部分解剖了现代浏览器的工作原理,包括URL、HTTP协议、HTML语言、CSS、文档格式、浏览器插件等内容;第二部分从浏览器的设计角度深入分析了各种现代Web浏览器(Firefox、Chrome、IE等)所引入的重点安全机制,例如同源策略、源的继承、窗口和框架的交互、安全边界、内容识别、应对恶意脚本、外围的网站特权等,并分析了这些机制存在的安全缺陷,同时为Web应用开发者提供了如何避免攻击和隐私泄露的应对措施;第三部分对浏览器安全机制的未来趋势进行了展望,包括新的浏览器特性与安全展望、其他值得注意的浏览器、常见的Web安全漏洞等。本书主要的说浏览器与安全之间的关系。
  但在浏览器的世界里,却压根不存在这种隔离:文档和代码就交织在同一个HTML文件里,完全无关的应用之间最多只能算部分隔离(实际上所有网站使用的是同一个全局JavaScript运行环境),除了要遵守寥寥几个灵活的浏览器级别的安全控制框架,不同网站之间各种交互都是隐式默许的。

从某种程度来说,Web的这种模型与那些没有强壮的内存保护、CPU抢占或多用户支持的非多任务操作系统(如CP/M、DOS等)相类似。但明显不同的是,这些早期系统不太可能出现同时运行多个不受信任且易被攻击的应用的情况,自然也无需特别顾虑安全上的问题。

所以在老系统里不太可能发生文本文件窃取电子邮件这种事情,但令人恼火的是,类似情况在Web上却屡见不鲜。实际上,所有的Web应用都曾为不请自来的恶意跨域访问,付出过沉重的代价,最后只能用一些笨拙的方法勉强分离代码和要显示的数据。所有的Web应用都在这个事情上败下阵来,只是时间早晚而已。许多内容相关的安全问题,如跨站脚本(cross-site scripting)或跨域请求伪造(cross-site request forgery)在Web领域都很常见,但在专用客户端的架构里,却极少碰到类似的情况。
浏览器碰到这类协议,会根据URL的匹配情况,把具体的处理转给外部的某个应用程序,就可以实现类似媒体播放、文档浏览或IP电话等功能。到这一阶段,就已经无需浏览器的参与了(大多数情况下如此)。

到今时今日,已经有几十个这类协议处理程序了,要把它们都说清楚只怕还得再写一本厚厚的书。一些最常见的协议包括:acrobat:,看字面就知道是用于触发Adobe Acrobat的pdf阅读器;callto:和sip:则用于各种即时通信工具和电话软件;daap:、itpc:和itms:用于苹果公司的iTunes软件;mailto:、news:和nntp:用于邮件和Usenet新闻网客户端软件;mmst:、mmsu:、msbd:和rtsp: 是流媒体播放器专用的,反正诸如此类还有很多。浏览器自身有时候也在这个列表里。譬如之前提到的firefoxurl:协议就会在另一个浏览器里启动Firefox程序;而cf: 协议则可以在IE里调用Chrome。

再次感谢出版社和论坛给这次试读机会。我真的非常想得到这本书

发帖
3
黑豆
10
威望
8
贡献值
0
交易币
0
红豆
0
只看该作者 11 发表于: 2013-10-29
才来学习,俺来晚了哈.没办法起步晚啊....
发帖
257
黑豆
449
威望
308
贡献值
0
交易币
0
红豆
0
只看该作者 12 发表于: 2013-10-30
非常感谢红黑和出版社提供这次试读的机会,
本书非常详细的介绍了与安全相关web知识,第一部分剖析了与Web网页相关知识,包括url,http协议,html语言,css,js脚本等内容;第二部分重点介绍浏览器安全机制,如同源策略、源的继承、窗口和框架的交互等,并分析了这些机制的优势和存在的缺陷,同时提供了如何避免出现安全缺陷的应对措施和安全速查表;第三部分对浏览器安全机制的未来趋势做了简要的介绍,最后一章还介绍了常见的Web安全漏洞等。
  互联快速发展的今天,越来越多的程序开始基于B/S架构来开发和部署,也就是以WEB接口来面向用户(以前更多的是C/S架构)。基于这样快速发展的趋势,必定要求基于WEB的安全也要快速的跟上WEB2.0的发展的步伐。从上世纪八九十年代到现在,互联网也走过了三十多年,从诞生到现在安全事件一直伴随着,大大小小的事件发生无数,但安全事件并没有显示出减弱的程度,反而呈现出上升的趋势。个人认为出现这种情况有几种原因1.web技术的快速发展,而相对应的web安全技术的发展会稍显滞后,2.安全意识淡薄,(1)web开发人员,测试人员安全意识淡薄 (2)公司领导安全意识淡薄,对员工安全培训,安全管理等方面重视不够,而这本书使我们web安全技术能够进一步提高和巩固。试读章节主要有URL和HTTP协议的介绍,URL中的涉及的漏洞注入SQL注入,比如:.php?id = 1 ' or 1 = 1, XSS(反射居多).php?id = 1 <script>alert('xss')</script>, ,CSRF(多涉及token等).php?id = 1 & token = pem3f23g23g23gg2f222f3.类似的构造方式和情形。HTTP协议设计的漏洞也差不多,但攻击方式更多的以更改get或post请求,从而获取攻击者想要的结果。个人觉得攻击方式可以手工和工具相结合,这样效果会更好。期待后面章节。
希望能获得此书,从而细细阅读书中细节。
发帖
24
黑豆
11
威望
15
贡献值
0
交易币
0
红豆
0
只看该作者 13 发表于: 2013-11-02
XSS
SQL各种注
各种安全配置错误(目录遍历、暴漏后台、文件上传下载等等)
失效的会话连接与管理
。。。就是OWASP
还有程序自身解析漏洞(中间件)。。。
发帖
1
黑豆
0
威望
0
贡献值
0
交易币
0
红豆
0
只看该作者 14 发表于: 2013-11-02
支持,顶!

内容来自[手机版]

发帖
205
黑豆
1698
威望
23
贡献值
0
交易币
0
红豆
5
只看该作者 15 发表于: 2013-11-03
1、常见的Web安全漏洞有哪些?

非法输入
在数据被输入程序前忽略对数据合法性的检验是一个常见的编程漏洞。随着OWASP对Web应用程序脆弱性的调查,非法输入的问题已成为大多数Web应用程序安全漏洞方面的一个普遍现象。
失效的访问控制
大部分企业都非常关注对已经建立的连接进行控制,但是,允许一个特定的字符串输入可以让攻击行为绕过企业的控制。
失效的账户和线程管理
有良好的访问控制并不意味着万事大吉,企业还应该保护用户的密码、会话令牌、账户列表及其它任何可为攻击者提供有利信息、能帮助他们攻击企业网络的内容。
跨站点脚本攻击
这是一种常见的攻击,当攻击脚本被嵌入企业的Web页面或其它可以访问的Web资源中,没有保护能力的台式机访问这个页面或资源时,脚本就会被启动,这种攻击可以影响企业内成百上千员工的终端电脑。
缓存溢出问题
这个问题一般出现在用较早的编程语言、如C语言编写的程序中,这种编程错误其实也是由于没有很好地确定输入内容在内存中的位置所致。
等等....

3、试读图书章节后谈谈您的感想
像处理某些常见但又异常复杂的编程任务,如何尽量防范内容检测漏洞,这样的问题都可以在本书中找到答案.
只是试读章节有限,希望获得此书
感谢红黑联盟
发帖
8
黑豆
11
威望
3
贡献值
0
交易币
0
红豆
0
只看该作者 16 发表于: 2013-11-03
希望能走大运!
发帖
8
黑豆
11
威望
3
贡献值
0
交易币
0
红豆
0
只看该作者 17 发表于: 2013-11-03
web漏洞什么的3楼说的差不多了  
就会个简单的sql注入 xss跨站攻击什么的
还有没有技术含量的cc  ddos  
试读图书章节后谈谈您的感想
本书侧重基础,能够弥补我基础的不足, 如上楼 能走大运吧!! 给铁粉一杯技术渔具吧
发帖
1
黑豆
0
威望
0
贡献值
0
交易币
0
红豆
0
只看该作者 18 发表于: 2013-11-04
浏览器缓存问题应该也是一个漏洞
发帖
3
黑豆
6
威望
6
贡献值
0
交易币
0
红豆
0
只看该作者 19 发表于: 2013-11-05
收集整理了一下:

常见的Web应用安全漏洞:

已知弱点和错误配置

已知弱点包括Web应用使用的操作系统和第三方应用程序中的所有程序错误或者可以被利用的漏洞。这个问题也涉及到错误配置,包含有不安全的默认设置或管理员没有进行安全配置的应用程序。一个很好的例子就是你的Web服务器被配置成可以让任何用户从系统上的任何目录路径通过,这样可能会导致泄露存储在 Web服务器上的一些敏感信息,如口令、源代码或客户信息等。



隐藏字段

在许多应用中,隐藏的HTML格式字段被用来保存系统口令或商品价格。尽管其名称如此,但这些字段并不是很隐蔽的,任何在网页上执行“查看源代码” 的人都能看见。许多Web应用允许恶意的用户修改HTML源文件中的这些字段,为他们提供了以极小成本或无需成本购买商品的机会。这些攻击行动之所以成功,是因为大多数应用没有对返回网页进行验证;相反,它们认为输入数据和输出数据是一样的。
后门和调试漏洞

开发人员常常建立一些后门并依靠调试来排除应用程序的故障。在开发过程中这样做可以,但这些安全漏洞经常被留在一些放在Internet上的最终应用中。一些常见的后门使用户不用口令就可以登录或者访问允许直接进行应用配置的特殊URL。



跨站点脚本编写

一般来说,跨站点编写脚本是将代码插入由另一个源发送的网页之中的过程。利用跨站点编写脚本的一种方式是通过HTML格式,将信息帖到公告牌上就是跨站点脚本编写的一个很好范例。恶意的用户会在公告牌上帖上包含有恶意的JavaScript代码的信息。当用户查看这个公告牌时,服务器就会发送 HTML与这个恶意的用户代码一起显示。客户端的浏览器会执行该代码,因为它认为这是来自Web服务器的有效代码。



参数篡改

参数篡改包括操纵URL字符串,以检索用户以其他方式得不到的信息。访问Web应用的后端数据库是通过常常包含在URL中的SQL调用来进行的。恶意的用户可以操纵SQL代码,以便将来有可能检索一份包含所有用户、口令、信用卡号的清单或者储存在数据库中的任何其他数据。



更改cookie

更改cookie指的是修改存储在cookie中的数据。网站常常将一些包括用户ID、口令、帐号等的cookie存储到用户系统上。通过改变这些值,恶意的用户就可以访问不属于他们的帐户。攻击者也可以窃取用户的cookie并访问用户的帐户,而不必输入ID和口令或进行其他验证。



输入信息控制

输入信息检查包括能够通过控制由CGI脚本处理的HTML格式中的输入信息来运行系统命令。例如,使用CGI脚本向另一个用户发送信息的形式可以被攻击者控制来将服务器的口令文件邮寄给恶意的用户或者删除系统上的所有文件。



缓冲区溢出

缓冲区溢出是恶意的用户向服务器发送大量数据以使系统瘫痪的典型攻击手段。该系统包括存储这些数据的预置缓冲区。如果所收到的数据量大于缓冲区,则部分数据就会溢出到堆栈中。如果这些数据是代码,系统随后就会执行溢出到堆栈上的任何代码。Web应用缓冲区溢出攻击的典型例子也涉及到HTML文件。如果HTML文件上的一个字段中的数据足够的大,它就能创造一个缓冲器溢出条件。

直接访问浏览指直接访问应该需要验证的网页。没有正确配置的Web应用程序可以让恶意的用户直接访问包括有敏感信息的URL或者使提供收费网页的公司丧失收入。