Note to Hive7: When people say "Viral", they don't mean worms. (Part 2)
Posted by todd Thu, 25 Jan 2007 17:47:00 GMT

As I explained in the previous post, Hive7.com sounds fantastic on paper. Also, I want to point out that the problems I'm about to explain *could* be resolved, making the service far better (and not destined to be destroyed by a worm).
Normally i'd be inclined to simply email these issues to the company but since they clearly know javascript inside and out; it's hard to imagine they don't know the problem exists. Unfortunately the issue is deeply integrated into the service, and fixing it is going to break a lot of existing work.
Problem #1: Tricking users into spamming their entire contact list.
Hive7 has a neat feature which allows you to create a new user using you Gmail/AOL IM/etc... accounts. It makes perfect sense and if you are trying to build a social platform, making it simple to invite your friends is clearly important. Hive7 has taken simple a bit too far though.
When you create your account, the next screen that pops up is a list of your contacts from Gmail. The heading seems simple enough: "Search for friends: See which of your friends are already on Hive7 and invite new ones."
I clicked this button, presuming Hive7 would search their userbase and tell me who had already signed up. Instead it sent an email to every contact in my email account.
Thanks guys.... you just invited several of my business contacts, not to mention ex-girlfriends, to a chat room with action figure avatars. It looks like i'm playing with dolls.
Honestly that got me angry enough that I'd never use the service again as a user. Still curious about the technology, I stuck around to create a few objects in my "home". What I saw next was stunning.
Problem #2: Holy hell you can upload unscrubbed javascript!
Now, I don't code professionally anymore. If you asked my friends they would argue that I never wrote code "professionally". I'm an admitted hack, but even *I* know better than to let users write code that gets executed unchecked. Also, I'm pretty good at breaking things, so this shouldnt take long.
A bit of background: Cross site scripting attacks are a huge issue in the "Web 2.0" world of AJAX andheavily interactive websites. The problem is also well documented. Generally what happens is a site accidently forgets to scrub some input field and allows the execution of javascript that a sneaky user uploaded. It's a bug.
This bug is one of the CORE FEATURES of Hive7. It's not an accident. They ASK YOU to upload your own javascript.
Within 45 minutes my friend and I had created an object that logged the Hive7 UserId, SessionID, and ChatID cookies of any user who entered the room.
That's all it took. About 3 lines of code and it was possible to hijack the sessio n of any user who entered the room. You could become that user without ever logging in, granting you access to upload/modify objects as that user. More troubling, since it had previously spammed all my contacts, this hijacked account could be used to read my contact list.
With these pieces creating a Hive7 worm would be trivial:
1) Hijack a session.
2) As the user you hijacked, upload the worm script.
3) Hijack sessions of any users who enter the captured room.
4) Repeat.
Cmon guys. Seriously.

Predicted values in template editing can be done through any PHP script?
Question about logs - are they saved somewhere on the server?
Hello there, so nobody can answer my question?
Great thread with input from some of the heaviest memcached users out there
Logs are usually saved in the folder admin specify for, so ask him.
How much time does it take to update this kind of blog?
Cool stuff. Very inspirational, indeed. My preferred follow-up would be: Could you give us a couple of examples of things you’ve changed and how you went about it.
How to arrange multilanguage visible pages in reading articles?
Hello, newbie here, have a question - can you advice me freehosts where i can set up free blog?
how to save actions in photoshop? i really don't know how - help me please.
How is it possible to switch off magic_quotes_gpc? i have some error in linking on my blog
Yes, you better contact admin if you don't know how, or in httacces file.
First one in the university, first one in my life!
If there is no access to admin - you can leave only that value "php_flag register_globals" - it should help
Which syntax does blogs use in message encrypting?
Please explain me how to exclude double posting?
Echo variables used in wp (wpress) can be cancelled by editing in template section
Did you ever tested you blog in safari? it's a mac browser
I apologise for nut understanding, but how to transfer blog files from 1 domain to another?
Hello everyone, how are you? does anyone writes on php? need to complete my homework.
Hello there from Aria. Please explain me how does ajax updates on the server without refreshing page?
where do you register domain and host it?
Using self-writed macroses can effect your blog view! be careful!
it's so hard nowadays to find some original admin tools for blogs that are free to use, can anyone advice any to form multi language posts?
is there any mass edit plugs section? want to change my blog script - it's wp now.
making it in ruby or in rails will not give you any opportunity!
Have you already tried windows vista? how is it?
For normal matrix degenerate own values is the freedom to define the eigenvector corresponding quaternion own values related to the replacement of any linear combination!
I am afraid it is impossible to rewrtite code on PHP in this way :(
I am curious how do you manage all posts? is there a html editor fur ruby or rails?
Advice me please mass podcast site for free usage
Common mistake is not checking just created sites in all possible browsers, in order to see everything is correct!
Programming is so exciting, you should definetely try it!
i want to ask if it is possible to create different mysql base and keep there old not needed messages?
Recommend me please some validator, so that i could optimize my html!
Try validator.w3.org should help
I still can't find the way to edit templates :-(
Is it possible to make more useful articles please?
博客营销 电子商务动态