elfs: (Default)
[personal profile] elfs
I have acheived EVIL! EVIL, I tell you! I have successfully created a cross-domain communications channel between a page and a contained iframe even when the domains are not cooperating!

The trick involves javascript injection into the host (in the sense of "parasite and host") browser frame using a bookmarklet, which then starts running a tight-loop timer that watches the ANCHOR portion of the URL.

The parasite frame can then manipulate the ANCHOR portion of the URL, to which it has access with its initialized document.referer. As it does so, the infected host frame checks the ANCHOR every 10 milliseconds, then changes the ANCHOR back (to hide its activities) and uses that change as an ACK to the parasite, which can then send another message.

Using prefix codes, the infected host and parasite browser frames can communicate with each other. Depending upon the length of the URL, you have about a half-kilobyte of bandwidth-- not much it seems, but more than enough for a URL, a title, and maybe some metadata.

I'll hack up an example and post it to the technical blog sometime soon.

Wheee!

Date: 2010-01-04 11:07 pm (UTC)
From: [identity profile] zanfur.livejournal.com
Interesting side channel...

Date: 2010-01-05 12:42 am (UTC)
From: [identity profile] elfs.livejournal.com
About the only one left that hasn't been closed by the browser folks, and it's hard to do so because we expect to be able to open sub-frames, and for sub-frames to be able to address new URLs. I wonder if they'll leave it open. It's difficult to imagine an exploit that doesn't involve a bookmarklet or similar apparatus (like XBL, which has to get into your system in the first place), so this is more a matter of bookmarklet people not violating the user's trust.

As I've been freelancing, though, I'm utterly shocked (naive, innocent me) by how many of my clients are so trustworthy, and say that they've never even thought about using anything but "the stuff that came with the computer when I bought it." That's usually IE.

Date: 2010-01-05 01:01 am (UTC)
ext_3294: Tux (Default)
From: [identity profile] technoshaman.livejournal.com
that is EVIL! And probably fairly CPU-intensive as well... and not even *close* to being ADA-compliant.

Date: 2010-01-05 06:26 am (UTC)
From: [identity profile] ionotter.livejournal.com
How well does it fare against NoScript?

Profile

elfs: (Default)
Elf Sternberg

December 2025

S M T W T F S
 12345 6
78910111213
14151617181920
21222324252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 2nd, 2026 11:06 pm
Powered by Dreamwidth Studios