Re: [websec] Richard Barnes' Discuss on draft-ietf-websec-x-frame-options-09: (with DISCUSS and COMMENT)
Richard Barnes <rlb@ipv.sx> Mon, 19 August 2013 13:46 UTC
Return-Path: <rlb@ipv.sx>
X-Original-To: websec@ietfa.amsl.com
Delivered-To: websec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2C71B11E827E for <websec@ietfa.amsl.com>; Mon, 19 Aug 2013 06:46:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.82
X-Spam-Level:
X-Spam-Status: No, score=-2.82 tagged_above=-999 required=5 tests=[AWL=0.156, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eMEocFJLj5Tv for <websec@ietfa.amsl.com>; Mon, 19 Aug 2013 06:46:40 -0700 (PDT)
Received: from mail-ob0-f182.google.com (mail-ob0-f182.google.com [209.85.214.182]) by ietfa.amsl.com (Postfix) with ESMTP id 35C6B11E8115 for <websec@ietf.org>; Mon, 19 Aug 2013 06:46:40 -0700 (PDT)
Received: by mail-ob0-f182.google.com with SMTP id wo10so5438774obc.13 for <websec@ietf.org>; Mon, 19 Aug 2013 06:46:39 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=hJYTEaNe3Ff3v/UfLJt9qupg+PmrnxYvKwiGQ8hC2m0=; b=HbgHYnSgJrE78HDD3daEQ774ga5EuMDDyq9cgnApBxg1EoxwCvyZnn80tLsX4pt7Gi PU9N03OuLnMJTY9oXzTgIFbF9aE4XGNySM8Covo5CAh0cjw+0NQUKRlN6X+/ljF6F2T6 Fz92UHK+uQ9+qMruQyKDyU125nOZ/zCM22UsjYRiEDPvTQEEgK5ZOOWS6rKI5X76WQbQ IH5XiFm2lHNKVOLzXwHEra/OIEOOSS+HxmOW5ssUs5R+S0CR+rOARK3jglvnVecYIvza owwsQCHX3qz2a3dZXDLdLQ+zcVyiq+jENleFgZ2o8Mu/mG+o998vOo0wtRilDSG8T4U4 R3Pg==
X-Gm-Message-State: ALoCoQkc2NlqyzBpoweNjpm8XPf35s0iVknC/wnhx1aDxjX5gxkCX+WCuPpeCLF8lbqPlzwVbX4F
MIME-Version: 1.0
X-Received: by 10.182.18.9 with SMTP id s9mr13367783obd.15.1376919999720; Mon, 19 Aug 2013 06:46:39 -0700 (PDT)
Received: by 10.60.31.74 with HTTP; Mon, 19 Aug 2013 06:46:39 -0700 (PDT)
X-Originating-IP: [192.1.255.218]
In-Reply-To: <CAL02cgQSQWAfeZNtEwtNrbajSx8Q7ACyjZ0gEaYB8Oj0HL0jOA@mail.gmail.com>
References: <20130815014121.17800.33179.idtracker@ietfa.amsl.com> <370C9BEB4DD6154FA963E2F79ADC6F2E27BAD2A7@DEN-EXDDA-S12.corp.ebay.com> <CAL02cgQSQWAfeZNtEwtNrbajSx8Q7ACyjZ0gEaYB8Oj0HL0jOA@mail.gmail.com>
Date: Mon, 19 Aug 2013 09:46:39 -0400
Message-ID: <CAL02cgRyywSoz2mhcaGc+d1eQS4gFo3RruGieXQm+wNHJLPnrg@mail.gmail.com>
From: Richard Barnes <rlb@ipv.sx>
To: "Hill, Brad" <bhill@paypal-inc.com>
Content-Type: multipart/alternative; boundary="001a11c2d6a077c19904e44d2b69"
Cc: "draft-ietf-websec-x-frame-options@tools.ietf.org" <draft-ietf-websec-x-frame-options@tools.ietf.org>, "websec@ietf.org" <websec@ietf.org>, The IESG <iesg@ietf.org>, "websec-chairs@tools.ietf.org" <websec-chairs@tools.ietf.org>
Subject: Re: [websec] Richard Barnes' Discuss on draft-ietf-websec-x-frame-options-09: (with DISCUSS and COMMENT)
X-BeenThere: websec@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Web Application Security Minus Authentication and Transport <websec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/websec>, <mailto:websec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/websec>
List-Post: <mailto:websec@ietf.org>
List-Help: <mailto:websec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/websec>, <mailto:websec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 19 Aug 2013 13:46:46 -0000
On Mon, Aug 19, 2013 at 9:38 AM, Richard Barnes <rlb@ipv.sx> wrote: > > > > On Fri, Aug 16, 2013 at 7:44 PM, Hill, Brad <bhill@paypal-inc.com> wrote: > >> Additional comments inline. >> ________________________________________ >> >> >> (D3) Shouldn't ALLOW-FROM be followed by an origin, not a URI? In other >> words, what does it mean to send "X-Frame-Options: ALLOW-FROM >> https://example.com/this/is/a/path?query#fragment"? >> >> [Hill, Brad] Agreed. > > > Great. > > > >> (D3) In the ALLOW-FROM: what does "top level context" mean? Do you >> really mean the top level here, as opposed to the next one up? For >> example, suppose A loads B in an iframe, and B loads C, and then C sends >> an X-Frame-Options header with ALLOW-FROM. Is the ALLOW-FROM origin >> compared to B or A? In either case, you should also note the attacks >> that remain. For example, if the answer is B, then B needs to use >> X-Frame-Options as well, or else, A can maliciously frame A within B. Or >> if the answer is A, then C is trusting A not to load any malicious >> intermediate frames B. >> >> [Hill, Brad] This really does mean the top/final origin value in a frame >> ancestor >> chain walk. Browsers have implemented X-Frame-Options to check the >> Origin context that is topmost in the window or tab. (the _top target, >> representing the full, original browsing context, not just the immediate >> parent frame) This could be clarified perhaps, but is not incorrect. >> > > OK, that's fine. Could you please just note the risk that an intermediate > frame in a nested scenario could do bad things? For example, in the > Security Considerations: > """ > When SAMEORIGIN or ALLOW-FROM values are used, there is some residual risk > in nested framing scenarios. For example, suppose that A loads B in an > iframe; B loads C; and C sends an X-Frame-Options header with the value > "ALLOW-FROM A". The browser will allow this setup, because the ALLOW-FROM > origin sent by C matches the top-level origin. However, the intermediate > framing page B may still be able to perform clickjacking attacks against A. > Thus, sites using this mechanism should keep in mind that by emitting an > X-Frame-Options header with value SAMEORIGIN or ALLOW-FROM, they are not > only granting permission to the indicated origin (the same origin, or the > ALLOW-FROM origin), but also to any origins included as frames within that > origin. > """ > Update: Feel free to ignore this suggestion (or steal text if you think it's helpful). I think Tobias is on the right track with what he suggested. That's what I get for responding to email in chronological order :) --Ricahrd > > Thanks, > --Richard > > > >
- [websec] Richard Barnes' Discuss on draft-ietf-we… Richard Barnes
- Re: [websec] Richard Barnes' Discuss on draft-iet… Hill, Brad
- Re: [websec] Richard Barnes' Discuss on draft-iet… Tobias Gondrom
- Re: [websec] Richard Barnes' Discuss on draft-iet… Barry Leiba
- Re: [websec] Richard Barnes' Discuss on draft-iet… Yoav Nir
- Re: [websec] Richard Barnes' Discuss on draft-iet… Richard Barnes
- Re: [websec] Richard Barnes' Discuss on draft-iet… Richard Barnes
- Re: [websec] Richard Barnes' Discuss on draft-iet… Richard Barnes
- Re: [websec] Richard Barnes' Discuss on draft-iet… Richard Barnes
- Re: [websec] Richard Barnes' Discuss on draft-iet… Tobias Gondrom
- Re: [websec] Richard Barnes' Discuss on draft-iet… Tobias Gondrom
- Re: [websec] Richard Barnes' Discuss on draft-iet… Richard Barnes
- Re: [websec] Richard Barnes' Discuss on draft-iet… Barry Leiba
- Re: [websec] Richard Barnes' Discuss on draft-iet… Hill, Brad
- Re: [websec] Richard Barnes' Discuss on draft-iet… Richard Barnes
- Re: [websec] Richard Barnes' Discuss on draft-iet… Tobias Gondrom
- Re: [websec] Richard Barnes' Discuss on draft-iet… Richard Barnes