前端计算与安全防御.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
前端计算 和 安全防御about:me{ name: 佳?辰, nick: EtherDream, from: 阿?里巴巴安全部} 前端开发安全研究Geekerabout:history CPU: 500M RAM: 64M Hello WorldCPU: 2G x 4RAM: 8G今天19952000200520102015前端利?用??网络攻击Great Cannon在线挖矿?比特币、虚拟币科学计算最?大梅森素数、SETI其他 ….分担后端传统不信任客户端的?一切数据,所有计算服务端完成尝试设计合理的机制,利?用前端资源,分担后端?工作案例:富?文本过滤的思考 ……富?文本跨站跨站攻击,第?一次接触??网络安全反思完整的富?文本过滤,应当有如下流程:HTML 字符串 - DOM 树过滤 ?白名单 外的 节点 和 属性DOM 树 - HTML 字符串简化的流程出于性能考虑,?大多在 字符串层?面 过滤HTML 字符串 - 正则HTML 语法复杂能想到的?大?小写、引号、分隔符 …想不到的浏览器私有特征、系统字集、特殊字符 …前端过滤渲染前HTML 字符串 - DOM(交给 DOMParser )AB干净的 DOM富?文本 HTML?用户提交 后端只储存,不过滤?文档启?示浏览器 擅?长的问题,浏览器 ?自?己解决。换?一种?角度跨站攻击难以杜绝,不如增加 预警 机制。可疑元素外链资源本地存储测试痕迹 ……前端监控第?一时间发现问题启?示?用户优势:数量?大、成本低、覆盖??广?高性能计算性能,?一直是脚本语?言的软肋解释执?行动态类型沙箱限制 JavaScript JavaC汇编传统?方案 — Flash计算?方?面,Flash 拥有众多优势 强类型多线程编译型跨平台装机量JIT前沿?方案 — asm.js使?用语法糖,约定?一套 强类型 规范。 asm.jsx|0x 0= =int x uint x通过?工具?生成,例如:emscripten可接近 Native 的性能性能对?比效率?大致对?比 Native asm.js FlashJavaScript100% 80% 60% 40%未来?方案 — WebAssembly标准化的 Web 计算?方案。?二进制格式。更规范,更快,兼容性更强。拭??目以待 ......计算的价值 凭空计算,能否创造价值??无价值: 计算结果没有任何?用途。有价值: 计算过程的?一种认可。耗时 ≠ 价值休眠存储扫描本地Cookie、StorageSleep(5000)?大循环 储扫描本地存Cookie、Storagefor (i = 0 ~ 100 亿)本地存储扫描可预测的问题Cookie、Storagefor (i = 0 ~ 100 亿) result += i ;耗时 = 价值计算 不可预测的问题,答案只能穷举,耗费 ?大量 时间。经典案例求 XMD5(X) = X计算?方散列不可预测,答案只能穷举。(?大量计算)鉴定?方代?入答案即可校验。(计算?一次)难度可控 求 X,使结果前 N 位等于 0 MD5(问题 + X) = 0000………………改变 N 的?大?小,可调整难度实际应?用使?用?工作量,限制发帖频率 编写帖?子问题解答中… 提交带上答案 打开?页?面 获得问题创建计算线程 接收 校验答案是否符合问题对?比验证码?人和机器都能通过 ?工作量 消耗计算?力机器不能通过 验证码 消耗?用户体验限速?工作量其他?用途密码强化密码泄露近年来,拖库 事件频发。 隐私泄露 ?手机、邮箱、?身份证 …. 加密过的密码如果破解明?文密码,可以尝试登录其他账号破解密码知道加密?方式,就可以 暴?力破解字典常?用的词汇组合,增加猜中的?几率。破解速度加密有多快,猜?一次就多快。?大并发使?用多线程、GPU 等可以更快。保护密码提?高加密时间 - 增加破解时间慢加密常?见算法:bcrypt、scrypt、PBKDF2 …可设置加密过程的 ?工作量,想多慢就多慢。缺陷增加服务器计算压?力。前端加密 前端 password = slow_hash( password )后端保持不变注意点不是保护账号数据泄露后,可以?用 Hash 登录,即使不知道明?文密码。?而是保护密码增加攻击者 破解出明?文密码 的难度。账号被盗,密码拿不到。前端加密优点降低?风险明?文密码 离开浏览器 就不存在,减少泄露环节提?高信任??网站?无法储存?用户的明?文密码频率限制登录需要?一定计算量,限制恶意?用户前端加密启?示?用「时间」换「时间」?用户的时间,对抗攻击者破解密码的时间。提问总结前端性能现状 潜?力挖掘?高性能计算?方案?工作量的效率保障 ?工作量证明 硬件限速慢加密计算强化密码富?文本案例前端分担后端前端安

文档评论(0)

2266670 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档