web前端黑客余弦的书的简单介绍
作者:hacker | 分类:入侵行业 | 浏览:173 | 日期:2022年10月30日目录:
有哪些信息安全方面的经典书籍
*** 渗透、web攻防
安全焦点: *** 渗透技术 这本绝版web前端黑客余弦的书了web前端黑客余弦的书,图书馆看看或许会有
吴翰清:白帽子讲web安全
余弦:Web前端黑客技术揭秘
漏洞挖掘、逆向破解
王清:0day安全:软件漏洞分析技术
看雪:加密与解密
c++反汇编与逆向分析技术揭秘
微软.NET程序的加密与解密
Reversing:逆向工程揭密
密码学:
密码编码学与 *** 安全
等补充,别的还有,忘了
《Web前端黑客技术揭秘》epub下载在线阅读全文,求百度网盘云资源
《Web前端黑客技术揭秘》(钟晨鸣)电子书网盘下载免费在线阅读
链接:
提取码:WWNF
书名:Web前端黑客技术揭秘
豆瓣评分:7.6
作者: 钟晨鸣 / 徐少培
出版社: 电子工业出版社
出版年: 2013-1
页数: 361
内容简介:
Web前端web前端黑客余弦的书的黑客攻防技术是一门非常新颖且有趣的黑客技术web前端黑客余弦的书,主要包含Web前端安全的跨站脚本(XSS)、跨站请求伪造(CSRF)、界面操作劫持这三大类,涉及的知识点涵盖信任与信任关系、Cookie安全、Flash安全、DOM渲染、字符集、跨域、原生态攻击、高级钓鱼、蠕虫思想等,这些都是研究前端安全的人必备的知识点。本书作者深入剖析了许多经典的攻防技巧,并给出了许多独到的安全见解。
本书适合前端工程师阅读,同时也适合对Web前端各类安全问题或黑客攻防过程充满好奇的读者阅读,书中的内容可以让读者重新认识到Web的危险,并知道该如何去保护自己以免受黑客的攻击。
作者简介:
钟晨鸣,毕业于北京化工大学,网名:余弦。国内著名Web安全团队xeye成员,除了爱好Web Hacking外,还对宇宙学、人类学等保持着浓厚兴趣。2008年加入北京知道创宇信息技术有限公司,现任研究部总监,团队致力于Web安全与海量数据研究,并进行相关超酷平台的实现。如果大家想和我交流,可以私信我微博:weibo.com/evilcos,同时本书的最新动态也会发布在我的微博上。
徐少培,毕业于河北工业大学。网名:xisigr。国内著名Web安全团队xeye成员。2008年加入北京天融信公司,现任北京天融信资深安全专家,重点负责安全研究工作,主要研究领域包括:WEB安全、HTML5安全、浏览器安全、协议分析等。
前后端分离架构下的跨域问题
在前后端分离架构下,难免会遇到跨域问题。但是对于跨域,很多人并没有多么深入的了解。这里我就详细讲一下这个问题。
同源策略与跨域
所谓跨域,英文叫做cross-domain,是 *** 安全领域的一个专有名词。简单点理解就是某些操作越过了域名的界限,访问了别的域名。
如果脚本可以自由访问其他域,就会产生很多安全问题。
比如,假设有一个网上银行系统,你已经登录过了,它支持一个ajax api可以进行转账;有一个论坛系统,人气很高,但是其中有恶意脚本,这个脚本会调用这个ajax api,从当前登录的用户账户中,转1000块到攻击者的账户。这样,当你访问这个论坛的时候,就会被转走1000块,而你一点都不知道!
除此之外,跨域请求还有很多危害。这不是一本关于安全的书,也就不展开讲了,想深入了解的可以买一本余弦编写的《Web前端黑客技术揭秘》。
为了防范跨域攻击,所有现代浏览器都遵循一套同源策略。根据MDN上的定义,“如果两个页面拥有相同的协议(protocol),端口(如果指定),和主机,那么这两个页面就属于同一个源(origin)”。对于违反同源策略的请求,除了img src等少数嵌入操作之外,都会被浏览器阻止。
这里需要注意的是:同源不仅仅要求相同的域名或ip,连协议和端口也必须相同。比如和或就不是同源的,而和是同源的。
我们平常所说的“跨域”其实就是指“发起不同源请求”,而这样的跨域请求会被浏览器阻止。
同源策略对保障互联网安全有着非常重要的作用,很多安全策略都是基于同源策略的。但是,这种同源策略会对前后端分离架构下的开发过程带来很大困扰。比如,即使是本地服务器,也没法和前端开发服务器运行在同一个端口上,这时候,跨域是必然的。而如果要让后端程序同时提供web服务,则很难发挥前端工具链的轻量级优势。那么,如何解决跨域问题呢?
如何解决跨域问题?
*** ONP方式
最初用来解决跨域问题的方式,叫做 *** ONP,它的基本原理是:跨域的“资源嵌入”是被浏览器允许的。所以,可以通过一个script标签来嵌入一段来自其他服务器的脚本。由于这个脚本完全运行在当前域,无法访问第三方服务器的cookie等敏感信息,所以是安全的。
*** ONP的缺点是它只能支持GET操作,没法支持POST等操作,但是由于兼容性好等优点,仍然有很多网站采用 *** ONP的方式公开自己的API供第三方调用。
在Angular中,$http内置了对 *** ONP的支持,它的调用接口也和其他 *** 没什么区别,使用起来非常简单。
反向 *** 方式
要想解决跨域问题,最简单彻底的 *** 当然是把他们拉到一个域下,而这就是该“反向 *** ”发挥作用的时候了。
所谓反向 *** ,就是在自己的域名下架设一个Web服务器,这个服务器会把请求转发给第三方服务器,然后把结果返回给客户端。
这时候,在客户端看来,自己就是在和这台反向 *** 服务器打交道,而不知道第三方服务器的存在。
所以,如果有一个Web服务程序,它同时提供了反向 *** 功能和静态文件服务功能,静态文件服务负责渲染前端页面,反向 *** 则提供对第三方服务器的透明访问。那么前端和后端就变成了同源的,不再受同源策略的约束。
那么,有这样的Web服务程序吗?有,而且不止一个。事实上,几乎所有的主流Web服务器都提供了反向 *** 功能。这里仅以nginx为例来示范反向 *** 的配置方式,其他Web服务器请搜相应的文档自行研究。
server {
listen 80;
server_name your.domain.name;
location / {
proxy_pass ; # 把根路径下的请求转发给前端工具链(如gulp)打开的开发服务器,如果是产品环境,则使用root等指令配置为静态文件服务器
}
location /api/ {
proxy_pass ; # 吧 /api 路径下的请求转发给真正的后端服务器
proxy_set_header Host $http_host; # 把host头传过去,后端服务程序将收到your.domain.name,否则收到的是localhost:8080
proxy_cookie_path /api /service; # 把cookie中的path部分从/api替换成/service
proxy_cookie_domain localhost:8080 your.domain.name; # 把cookie的path部分从localhost:8080替换成your.domain.name
}
}
注意最后这两句话,由于cookie中存在一个path机制,可以对同一个域下的不同子域进行区分。所以,如果后端所使用的路径是/service,而前端使用的路径是/api,那么前端将不能访问后端的cookie,这就导致登录等操作所写入的cookie无法正常传入传出,其表现则是登录始终没有效果。cookie的domain机制也是类似的原理。
现实中的后端服务器,使用path机制的很多,所以这项设置非常实用。
CORS方式
这是W3C提供的另一种跨域方式。作为一项标准的跨域规范,CORS本应该是最值得采用的。 问题在于,老式浏览器不支持CORS,而我们显然还没到可以无视老式浏览器的时候。 所以,只要有可能,就应该优先采用反向 *** 的方式。
CORS的原理是基于服务方授权的模式,也就是说提供服务的程序要主动通过CORS回应头来声明自己信任哪些源(协议+域名+端口)。 由于得到了服务方的授权,浏览器就可以放行来自这些域的请求了。
参考:
前后台分离,node *** 转发请求实现跨域访问 :