Javascript protocol fuzz results

Well it seems that Firefox 2.0.0.14 has provided the most interesting results with my protocol fuzzer.

Char: 56320, link: jav&#56320ascript:
Char: 56321, link: jav&#56321ascript:
Char: 56322, link: jav&#56322ascript:
Char: 56323, link: jav&#56323ascript:
Char: 56324, link: jav&#56324ascript:
Char: 56325, link: jav&#56325ascript:
,, ,, ,, ,,

All the way to:-

char: 57343, link: jav&#57343ascript:

and hex entities but with a semi-colon:-

From:
Char: 56320, link: jav�ascript:
 
To:
Char: 57343, link: jav�ascript:

It means code like this works in Firefox 2.0.0.14:-

<a href="jav&#56325ascript:al&#56325ert(1)">test</a>

More oddities were found but nothing as interesting as the above.

The ever changing XML file can be found here which stores the vectors by platform and browser versions:-

Vectors XML

Update…

Opera strangeness too…

Char:2048,Link:javascript&#2048:
Char:2304,Link:javascript&#2304:
Char:3328,Link:javascript&#3328:
Char:3840,Link:javascript&#3840:
Char:4096,Link:javascript&#4096:
Char:4256,Link:javascript&#4256:
Char:4352,Link:javascript&#4352:
Char:4608,Link:javascript&#4608:
Char:4864,Link:javascript&#4864:
 
Plus nbsp is allowed here:-
Char:160,Link:&#160javascript:

There are more, higher ones too :)

Share and Enjoy:
  • Digg
  • del.icio.us
  • Slashdot
  • StumbleUpon

Comments 10

  1. Mikael Gueck wrote:

    Could you make the vectors.xml file downloadable with wget, please?

    Posted 01 Jul 2008 at 5:13 am
  2. Gareth Heyes wrote:

    Easy spoof the user agent e.g.

    curl -A ‘Internet Explorer’ http://www.businessinfo.co.uk/labs/javascript_protocol_fuzzer/vectors.xml

    Posted 01 Jul 2008 at 9:07 am
  3. Mikael Gueck wrote:

    Certainly, but you have to spoof the referer as well.

    Posted 02 Jul 2008 at 3:29 am
  4. Gareth Heyes wrote:

    @Mikael

    I see your point, you now should be able to download the file with wget without spoofing.

    Posted 02 Jul 2008 at 8:40 am
  5. Chris Weber wrote:

    Gareth, I think we’ve been doing some similar testing in this area, might be nice to chat sometime. I’ve got some other interesting results in all the browsers as well. Are you planning to be in Redmond sometime before Bluehat?

    Posted 07 Sep 2008 at 3:54 am
  6. Gareth Heyes wrote:

    Hey Chris awesome blog! I’ve bookmarked it :) I’m from the UK so getting to Redmond before Bluehat would be difficult however I might have time just before or after.

    Posted 07 Sep 2008 at 6:16 pm
  7. Chris Weber wrote:

    Very interesting Gareth - the stuff in Firefox is the entire UTF-16 surrogate range U+DC00 to U+DFFF. Surrogates have no meaning in UTF-8 so this is weird - were you using a meta tag or HTTP header to set charset=utf-8 in your testing?

    The Opera stuff makes no sense at all to me :) Haha, wow, these code points don’t have anything in common in terms of Unicode general categories or binary properties.

    Did you see my post about whitespace in Opera?

    http://lookout.net/2008/08/26/advisory-attack-of-the-mongolian-space-evaders-and-other-medieval-xss-vectors/

    I haven’t tried out your Opera links but plan to see if I can figure out what’s going on there.

    Posted 18 Sep 2008 at 12:01 am
  8. Gareth Heyes wrote:

    @Chris

    That’s a good point I’ve not even tried fuzzing with different charsets, at the moment it isn’t specified. I may include this option.

    Yeah seen your post about that, it’s similar to the direction reversal chars mario found when implementing phpids.

    I’ve not tried the latest version of Opera they could have been fixed because it’s been quite a while.

    Posted 18 Sep 2008 at 7:26 am
  9. Gareth Heyes wrote:

    And as if by magic the fuzzer now contains charsets:-

    http://www.businessinfo.co.uk/labs/javascript_protocol_fuzzer/javascript_protocol_fuzzer.php?charset=UTF-8

    Posted 18 Sep 2008 at 7:48 am
  10. Gareth Heyes wrote:

    Opera now has more :D in the latest version:-
    http://www.thespanner.co.uk/2008/09/18/javascript-protocol-fuzzer-and-opera/

    Posted 18 Sep 2008 at 8:23 am

Post a Comment

Your email is never published nor shared. Required fields are marked *

Comment spam protected by SpamBam