Montagar wrote:I have decided to post just the actual script code that is contained in overlay.xul
The code contains no formatting, so it's just one long string.
Here is the pastebin link:
http://pastebin.com/f55f211e9
Dang it. Somebody sure covered their tracks nicely. Heavily obfuscated, all the way... although de-obfuscating it shouldn't be too hard. I posted a link to a de-obfuscating article recently, just need to find it...
Montagar wrote:I have run gooredfix to make sure that nothing remains of this malware.
I have also checked for any suspect dlls and I have used autoruns as well.
Sounds good. Glad to hear you're safe now...
Monty, I know you're worried about finger-pointing; would you be willing to PM me (and Tom said he's interested in any PM's you might send his way, too) the name of the addon this code appears to belong to? I would be very happy to make some (highly discreet) analysis of my own, and I sure as heck want to avoid this "legit" addon like the plague if it's guilty... I'm sure everyone else will echo this sentiment.
Tom T. wrote:Wow, that is one *long* string, all right! Good choice not to post it here with code tags.

It will be interesting searching through.
Interesting is right. I'd better break out Sandboxie and Tracemonkey...
Tom T. wrote:Glad you're safe now. Still need to find out *how* it arrives.
Ditto. Montagar, probably the only way we're going to figure this out is with the name of the addon this belongs to... please would you drop us the name in a PM? As always, your PM will be kept strictly confidential...
Tom T. wrote:Edit: As suspected, "innoshot" does not appear in that blob. So even a search of file contents wouldn't have located it.
True. The obfuscation we suspected is there, all right...
Tom T. wrote:Well, here's the smoking gun: (broken into lines so it doesn't run out the screen and into the next room)
Code: Select all
loc=doc.location.href;if(loc_bar.match(/google.*\/(search|cse).*[&\?]q=/)|
|loc.match(/\/search\.yahoo.*search.*[&\?]p=/)|
|loc.match(/ask.com.*\/web.*[&\?]q=/)||loc.match(/bing.com\/search.*[&\?]q=/)|
|loc.match(/aol\/search.*(query|q)=/)){src.search(/(http:\/\/[^\/]+\/)/);var
The smoking gun, indeed.
More confirmation this is a goored variant - I saw goored code just like this today.
Tom T. wrote:D'oh, all of us. Instead of searching for "innoshot", we should have been searching for files containing the affected search engines. Google, Yahoo, Bing, Ask, AOL .

True... but we had no way of knowing that.
As my Psych teacher used to say, "human hindsight is 20/20; human foresight is much worse"
therube wrote:Free Javascript Obfuscator - Protects JavaScript code from stealing and shrinks size
Sure, looks about right.
Montagar wrote:Tom T. wrote:D'oh, all of us. Instead of searching for "innoshot", we should have been searching for files containing the affected search engines. Google, Yahoo, Bing, Ask, AOL .

Tom... that was the point of my "I feel dumb" post, I was mad at myself once I saw that the search engines were listed in plain text. We all had figured that the innoshots part would be hidden, but I did search after search after search for bing figuring that would be the most unique not knowing that the OS didn't search the contents of .xul files (and a bunch of others it turns out!).
So ultimately we were searching for the right items, just let down by limited knowledge of the limitations of the Windows XP search function.
And that was the point of my D'oh post, as I know about the Windows Search limitations... I just never thought to apply that knowledge here.

OT: As I was struggling with the Windows search engine again today (this time with NSIS scripts), does anybody know of a better search engine? Everything only searches file & folder names, so that won't work... (or would locate32 do the trick?)
Oops, missed one.
[quote="therube"So is this ZIP'd, posted someplace yet?
Montagar posted the source for overlay.xul on pastebin...
http://pastebin.com/f55f211e9
therube wrote:Oh, & to search for file (names), there is nothing like Everything search engine!
Locate32 is really nice too, but Everything is just, EVERYTHING.
(Both Windows only. Everything needs NTFS drives.)
Unfortunately, Everything only searches file names... does Locate32 search file contents too? (Sorry, can't check right now - I'm in a bit of a hurry)
therube wrote:The quote nesting is getting a little crazy
A little? Heh.
Well, with 145 posts or so on the same topic, what would you expect?
L8R, guys!
PRE-SUBMISSION EDIT: therube just posted again, better reply as I can maybe save everyone some time.
therube wrote:Don't know if this can help
JavaScript Deobfuscator so that you won't have to manually decode each section?
you know, I actually have that addon... haven't used it as I haven't needed it, but now would be a good time.

I'll see if I can get that to work on that overlay.xul file - it might not, but then again, who knows...
(and yes, I'll be using Sandboxie... I'm actually still a little afraid of this thing, which is probably just as well)
With great power comes great responsibility.
Learn something new every day, and the rest will take care of itself.
Life is a journey, not a destination. Enjoy the trip!
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5