lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Thu, 23 Feb 2012 00:25:04 +0100
From: Michele Orru <antisnatchor@...il.com>
To: full-disclosure@...ts.grok.org.uk
Subject: Re: Pros and cons of
 'Access-Control-Allow-Origin' header?

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1



Michal Zalewski wrote:
>> Does 'Access-Control-Allow-Origin' header provide any benefits in
>> defending against cross site scripting attacks?
> 
> No. It's a mechanism to control cross-origin XMLHttpRequests (and some
> other peripheral things), and adding it does not reduce the likelihood
> or exploitability of XSS bugs.
> 
> If you use it incorrectly, you may end up removing most of the
> security assurances provided by the same-origin policy, but that's a
> separate topic.
> 
>> Doesn't 'Access-Control-Allow-Origin' header make any XSS flaw
>> trivially exploitable? For example, if an attacker finds an XSS flaw
>> in a web application, he can now inject a JavaScript with
>> XMLHttpRequest that sends a request to attacker's web server which
>> serves resources with the HTTP header "Access-Control-Allow-Origin:
>> *". The browser would see this header and fetch the resource from the
>> attacker's web server.
> 
> If you have an XSS vulnerability, there are many simpler ways to relay
> data to an attacker-controlled site without the need to use CORS.

@DavidBlanc what Michal said is what I meant before, and what we're
actually doing in BeEF :-)

If you have an XSS of whatever of the 3 types, you are already pwned,
meaning that whoever exploits the XSS loading an external JS is
controlling your browser across the whole domain of the vulnerable
webapp (SOP restrictions applied, unless you don't have a 0day, use
CORS, etc..)

Specifically in BeEF we use Access-Control-Allow-Origin with a wildcard
just because we cannot know in advance all the browsers that will be hooked.

BTW, not to re-quote mz, but his latest book is a great resource to
clarify your questions :D

Cheers
antisnatchor
> 
> /mz
> 
> _______________________________________________
> Full-Disclosure - We believe in it.
> Charter: http://lists.grok.org.uk/full-disclosure-charter.html
> Hosted and sponsored by Secunia - http://secunia.com/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.17 (Darwin)
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJPRXlQAAoJEBgl8Z+oSxe4uxQH/04wZ4Rl1GLiLs+CrV19KqKF
9Ymjs2Rn5gvR5vSjTpIDEcfuw/NX52lxHBkempaXau/i021N4TTUgv2LX3BRo4YT
oUyK3QzN1JuPfGclL+xRalV+3Kl67Kvdngm72Prm5V1Om4zcF4aCGXpCF/iMpp+4
nNRlFK3XKPCT6dZFeV2Skwy9EDVGwGNrEXmFT6xYfUjzAxDxBKr92dGs3icQiWDK
BahWu2Zi70F+wszUPEMDzkw16savz1ra+STVx6uge7797cspvY8HP090CVkPrT4u
PVDfiWSAKPE9xt5u52en98p43Gw+nBeJNThTwdSw/f9gAgPKYtf8WjkvceR+LXU=
=0N+e
-----END PGP SIGNATURE-----

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ