耗子写了篇关于 oauth 的文章,其中第二个bug没有看懂。翻了原文又翻了规范,后来才想通。 原文是 Bug 2. Lack of redirect_uri validation on get-token endpoint 换token(指的是access token)的时候缺少重定向地址的校验。 OAuth 2.0的规范http://tools.
耗子写了篇关于 oauth 的文章,其中第二个bug没有看懂。翻了原文又翻了规范,后来才想通。
原文是 Bug 2. Lack of redirect_uri validation on get-token endpoint 换token(指的是access token)的时候缺少重定向地址的校验。
OAuth 2.0的规范 http://tools.ietf.org/html/rfc6749#div-4.1 也提到必须校验:
(E) The authorization server authenticates the client, validates the
authorization code, and ensures that the redirection URI
received matches the URI used to redirect the client in
step (C).
redirect_uri这个重定向地址是让第三方接收authorization code(授权码) 来换access token的。对于第三方而言,谁给它授权码谁就是合法用户,后续将与之建立http会话回吐用户的信息。所以一旦这个地址被攻击者改了,code就会被拦截,真正的用户被重定向到了攻击者的页面,正常流程因此中断;而攻击者就可以拿着code重新拼装好redirect_uri往浏览器里一贴,无需密码他就成了合法用户,完成了session劫持。
redirect_uri是如此敏感,有个办法可以在它leak(也就是被改掉)之后补救:第三方在换token的时候是拿着用户给的code,加上自己受信的redirect_uri一起提交给服务提供方做验证。如果之前服务提供方在前面返回code的时候,code是基于异常的redirect_uri计算出来的,那么这一步重新校验就可以知道两者不匹配。
Egor在这儿说redirect_uri应该是个常量,看了下各家都严格做了限定。国内的qq和豆瓣是固定用第三方注册时填写的地址;google是可以注册时填多个,但必须使用其中一个;github是必须使用注册时的地址,或该地址的子目录(因此给了攻击者机会)。

用户在使用wallpaperengine时可以下载各种不同类型的壁纸,有很多用户不知道为什么wallpaperengine一直在更新,它是一款创意制作软件,软件中需要时刻更新最新的工具以及素材。为什么wallpaperengine一直在更新1、WallpaperEngine每次使用时都要进行更新,这是正常现象。2、WallpaperEngine是一款创意制作软件,软件中需要时刻更新最新的工具以及素材。3、每次使用都要更新,但更新文件包并不大,更新速度很快。4、订阅的壁纸只要有一个有更新他就跟着更

这篇分析报告探讨了 SUPRA 币在 2025 年的潜在增长潜力,识别了影响其价值的潜在市场因素、技术发展和监管变化。该报告评估了 OKX 生态系统的扩展、DeFi 行业的增长、机构投资、技术创新和监管环境改善等因素,这些因素可能会在未来几年推动 SUPRA 币的上涨。报告还考虑了潜在的下跌因素,包括市场竞争、监管风险、技术问题、市场情绪和经济衰退。

笔记本可以用充电宝供电吗由于笔记本电脑的电池电压、充电电流以及充电接口与充电宝不一致,因此无法使用充电宝给笔记本电脑充电。这是由于技术规格的差异导致的。充电宝通常的输出电压是5V或者5.2V。而笔记本电脑的充电电压要求至少为13.5V,有些甚至需要更高的电压,如19.5V或者20V,才能正常充电。所以,如果想要用充电宝给笔记本电脑充电,需要确保充电宝能够提供足够的电压。当笔记本电脑充电时,通常需要3A以上的电流。然而,充电宝的标称电流只有2.1A。现在市面上的笔记本电脑都使用圆型接口,不同厂家的

锁仓是一种常见的机制,私募币锁仓也是市场上常见的一个策略,指将一定数量的代币锁定在特定的钱包地址或智能合约中,使其在一段时间内无法自由交易或转移。作为投资者可能会好奇是不是市场上的私募币都要锁仓吗?通常来说是要锁仓的,有的投资者就会疑惑为什么私募币都要锁仓?就资料分析来看,锁仓的目的通常是为了促进项目的长期发展,增加代币的价值,同时显示项目方的承诺和信心。接下来小编为大家详细说说这个问题。私募币都要锁仓吗?私募币都要锁仓,私募币锁仓就是投资者在购买私募代币后,需要在一定时期内不得出售或转移这些代

币圈犹如独立岛屿组成的世界,每个区块链(岛屿)拥有独特货币和规则。跨链桥就像一座连接岛屿的桥梁,让用户可以安全地跨链转移代币。它提升了互操作性,促进了价值流动,拓展了应用场景,甚至可以提升效率。不过,跨链桥也存在安全、中心化和技术复杂性等风险,选择信誉良好的跨链桥至关重要。通过跨链桥,币圈得以构建一个更加互联互通的区块链新世界。

比特币自 2009 年发行以来经历了剧烈的价格波动,从 2011 年的 2.01 美元低点飙升至 2021 年的 68,000 美元高点。价格波动受供需关系、监管政策、经济状况和技术创新等因素影响。例如,2017 年,由于需求激增,比特币价格飙升至近 20,000 美元,而 2022 年,美联储收紧货币政策导致价格大幅下跌。

原文标题:WhyAnETHETFMightBeDelayedAfterAll原文作者:SeanSteinSmith原文编译:Yvonne,火星财经鉴于大多数加密资产在今年都取得了突破性的发展,我们有理由认为,加密货币市场还将进一步走向成熟。无论从加密货币行业的哪方面来看,2024年都是价格反弹的一年,机构和散户投资者的信心也随之恢复。市场情绪升温推动舆论围绕ETHETF获批可能性提升。毕竟,经过多年来各类机构申请被拒后,目前已有11只比特币ETF在美国交易。虽然资金流动可能有所放缓,但这一放缓是


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

WebStorm Mac version
Useful JavaScript development tools

Atom editor mac version download
The most popular open source editor

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment
