Showing posts with label MySpace. Show all posts
Showing posts with label MySpace. Show all posts

Saturday, February 03, 2007

Samy Sued and Sentanced

Well, today we've found out that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 creater of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 MySpace Samy worm has been sued by MySpace and sentanced: http://www.scmagazine.com.au/news/45262,myspace-superworm-creator-sentenced-to-probation-community-service.aspx

I'm honestly lost for words, that comes as quite a shock to me.

Now clearly he has done something wrong (and now it seems - illegal), but I don't think anyone expected this. Especially considering that while it did spread, it was completely non-malicious.

For cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 moment I'm safe since I've never attacked MySpace, but frankly, I'm just worried that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y're going to come after people who have disclosed vulnerabilities in MySpace next.

Tuesday, January 30, 2007

MySpace doesn't understand browsers (RCSR info)

You know what I hate? Advisories without enough info to verify a bug or PoC code. For example: http://www.info-svc.com/news/01-29-2007/myspace/ provides no information to anyone about what cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 nature of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 issue is, or anything, it just says cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is an issue, and of course once cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y do disclose something cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is no proof that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y did actually find something. And even more than that; I honestly don't care about people declaring that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y've found security issues without giving specifics.

Anyway, I thought I'd go have a look myself, and here is a little snippet which works in both IE and Firefox;



Whecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r this is what Chapin Information Services found is unclear since cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y didn't release anything, but what is clear is that MySpace clearly understand cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Non-Digit-Non-Alpha issue extends to all attributes, nor do cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y seem to understand that IE also allows grave accents (`) to be used instead of (single or double) quotes.

I really don't understand how many times cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y need to fix cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se issues before cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y begin to understand cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m.

Sunday, December 24, 2006

MySpace Non-Alpha-Non-Digit XSS 0day

It seems that MySpace has finally understood cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 issue here, which is good news, but cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 way cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir filter is written is working against cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m, or at least thats what I'm guessing from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 results I'm getting.

Anyway, here's cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 exploit:



As you can see if you run that moz-binding is changed to .., and we are left with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following:



So from this I think we can quite safely assume that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y have a few separate modules which have cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir go at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 code in order, and if something gets changed to something dangerous, but cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 module that would filter that particular dangerous code out has already run (cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 non-alpha-non-digit filtering module), cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 code is allowed through.

Isn't black box auditing fun? You end up making guesses that are quite often so very wrong but fit your results, :p.

Sunday, November 05, 2006

More MySpace XSS

I don't know whecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r to feel sorry for MySpace, or whecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r to laugh. The amount of XSS holes in MySpace is nothing short of outstanding.

And cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 sad thing is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y've clearly tried to fix as many things as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y've been able to find, but some things have fallen just short.

Anyway, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 flaw I found this time around is that MySpace doesn't know that you can have an underscore (_) between an attribute name and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 equals sign, and have it being valid, like so: (Note: This only works on Firefox)



But cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 interesting thing is that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y have got a regex which dissallows everything which looks like on*= (obviously it doesn't look anything like that, but I'm not going to bocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r trying to write regexs), and yet cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y've done it in such a way that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y need to know about what characters are allowed, essentially creating ablacklist of chars which cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y won't let you use between an attribute name and an equals sign. Why anyone would create a blacklist for that amazes me.

Friday, October 27, 2006

Myspace XSS Fragmentation - Again

Well, as Dark Reading reported I believed that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 patch MySpace implemented was near-sighted, and that it was possibly vulnerable to more XSS Fragmentation attacks. And it is.

(The following rewritten for clarity. 28/20/06 11PM GMT)
===========================
MySpace XSS Vulnerability 0day
Released 28/10/06
by kuza55 of w4ck1ng.com
===========================

Contents:

1.0 Introduction
2.0 Analysis
2.1 MySpace's Fix
2.2 Ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r XSS Fragmentation Attacks
3.0 PoC
4.0 Final Notes

===========================
1.0 Introduction
===========================
The vulnerability explained here is an XSS Fragmentation attack. Breifly, and XSS Fragmentation attack is one which works by placing 2 seperately harmless pieces of HTML into two different input field which are rendered on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 same page, which when rendered join to create a dangerous attack vector. More details, along with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous MySpace attack, can be found here: XSS Fragmentation Attacks + Myspace 0day

MySpace found about cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 vulnerability in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 above link and implemented a 'fix', it hasn't held.

===========================
2.0 Analysis
===========================
This section should explain what MySpace did, and why ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r Fragmentation attacks don't work.

===========================
2.1 MySpace's Fix
===========================
This section assumes you already know about cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous vulnerbaility.

Anyway, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 fix that MySpace implemented altered cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir event handler stripping code, which previously removed event handlers if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y were inside a tag. They changed it so that it also removed all event handlers after a single quote, no matter if it was in a tag or not. And while it addressed cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 PoC code in my earlier post, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y did not implement cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 recomended fix, and now again find cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365mselves vulnerable.

The reason this is not enough is because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are considerably more XSS attack vectors than cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 simple one I used. They range from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 simplest (using ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r encapsulation characters - as this attack does) to using style and ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r attributes and tags to execute javascript.

===========================
2.2 Ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r XSS Fragmentation Attacks
===========================
Now, it would have been considerably more interesting to come out with a completely different XSS Fragmentation attack, but sadly that is not possible due to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 way MySpace's filter works.

One of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 requirements for being able to execute an XSS Fragmentation attack is that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 filter must be stateful (or contextual, or however you want to describe it), in that it will allow things that are malicious under some circumstances to be included if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are judged to be being inserted in safe circumstances.

The only part of MySpace's filter which does this is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 event handler code. All th ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r vectors which could be used like javascript in image tags, or javascript in URLs for background images, etc, are all filteredout wherever cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are. For example if you type "moz-binding" in any input field it is automatically filtered out, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 same goes for "expression (", "javascript:", "data:" and several ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rs. In effect this stops XSS Fragmentation attacks in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se altogecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r. And while this seems like its is not a very good solution because it possible for users to need to type those words normally, thats cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 way its been done, and no-one is complaining.

===========================
3.0 PoC
===========================
This PoC is almost identical to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous one, except cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 single quotes (') are changed to grave accents (`). Insert cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se 2 separate pieces of code into 2 separate input fields: (Note: This only works on IE and Netscape 8.1, because ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r browsers don't understand grave accents as encapsulation chracters for HTML tag attributes.)



` onLoad="alert('XSS');">

===========================
4.0 Final Notes
===========================
Well, what can I say? I explained a fix, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y didn't use it, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y ended up being vulnerbale again, what a surprise.

Saturday, October 21, 2006

XSS Fragmentation Attacks + MySpace 0day

===========================
Fragmentation Is Not Just For The Network
XSS Fragmentation Attacks
Written 18/10/06
by kuza55
===========================

Contents:

1.0 Introduction to Fragmentation Attacks
2.0 XSS Fragmentation Attacks
3.0 MySpace 0day!
4.0 Mitigation
5.0 Final Notes

===========================
1.0 Introduction to Fragmentation Attacks
===========================
At cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 simplest level, fragmentation attacks are possible when several fragments, which are by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365mselves not a security risk and can cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365refore be allowed to pass through a filter or firewall, but when cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 fragments reach cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir destination cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 fragments are combined and produce something dangerous.

Fragmentation attacks are usually seen in relation to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 network/session layer where firewalls and IDSs try to filter packets on how dangerous cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are deemed to be, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are also used to sometimes fool those same devices which try to rearrange cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 packets cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365mselves and read cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 streams, but that is not what this article is about, this article is specifically about attacks where cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 whole document is not reassembled and checked.

===========================
2.0 XSS Fragmentation Attacks
===========================
XSS Fragmentation attacks are generally quite rare because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y require eicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r multiple sets of input being displayed on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 same page which have all gone through cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 same (or at least a similar) XSS filter and are not tidied up.

Anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r requirement that must be placed on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 XSS filter is that it must be completely dumb in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 sense that it simply strips away < and > characters, or it is stateful, and allows certain strings in places where it would not allow cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m, e.g. would not be allowed, but onload="alert('XSS');" would be.

The idea behind XSS fragmentation attacks is to have your normally non-dangerous code (e.g. onload="alert('XSS');") placed in a dangerous position.

The simplest place to get your code placed is inside anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r tag and that is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 example I'll go with now.

===========================
3.0 MySpace 0day!
===========================
The example I'll be using is a MySpace 0day I discovered. First of all I’ll give a quick explanation of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system MySpace has. You are not just given a single field to enter your profile into, you are given several fields about yourself, who you'd like to meet, your interests, etc.

Anyway, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 sections we will be attacking are cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 most closely placed sections on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 page, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 interests sections (more specifically cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Music and Film ones), normally your resulting code looks like this:
MusicMusic Goes Here!FilmsFilms Go Here!

The only things separating our 2 fields was this small block of code:
Music Goes Here!Films

Now what interesting things can we see about that code, well we can see that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are no single quotes cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re at all, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 only quotes used are double quotes.

So of course we can do something to encapsulate cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 text in between like so:
MusicFilms Go Here!
and as you can see we have included all that text in between in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 test parameter for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 body tag we've introduced! And as you can also see we have cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ability to write things into our tag in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 second input field and it will be automatically place din a dangerous position! So if we make our Films field look like so:
' onLoad="alert('XSS');">

cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n we have XSS.

This is exactly cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attack used on MySpace, and should work on many ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r sites where input is not cleaned up and dangling tags are allowed to be posted.

Maybe on some sites which allow user comments on articles, etc are vulnerable?
(Note: Wordpress and Blogger aren't vulnerable, see Mitigation)

===========================
4.0 Mitigation
===========================
The root of this problem is that sections are filtered separately, but that problem is one that is probably too time-consuming to bocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r with as fixing anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r requirement needed for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attack to work is much easier to fix.

The easiest fix is to use something many filtering systems already do for ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r reasons: disallow incomplete/unclosed tags. At cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 moment I see no way of being able to exploit cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 above idea if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 filtering engine does not allow eicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r unfinished tags (like in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 example above) or unclosed tags (e.g.