Cross Site Scripting - Level 03 __ Frozen Flame
You can't end it !
Hello thirsty learners ! Welcome back again in the Cross Site Scripting attacking session. As you can see today's blog's heading is, " You can't CLOSE it. " Well, let's talk about the interesting thing about Cross Site Scripting. But, before we start, I want to say that, " I am trying to make a series of XSS . And, if you haven't read the previous blogs, may be you can't understand what I am doing here right now. So, please read the first 3 blogs ( level 0-2 ). And after that, come to this one. "
Well, in the level 1 blog, I have said that, " close it and then, exploit ". But, what if you can't close the tag? Have you thought about that ever ? Let's know more today. Well, in JavaScript, there is a thing called event handler. I am not going to describe the thing in details as there are some awesome sites to understand this things . But, if you want to learn about it, you may go through this blogs,
Exploitation ::
List of some event handlers ::
- FSCommand (attacker can use this when executed from within an embedded Flash object)
- onAbort (when user aborts the loading of an image)
- onActivate (when object is set as the active element)
- onAfterPrint (activates after user prints or previews print job)
- onAfterUpdate (activates on data object after updating data in the source object)
- onBeforeActivate (fires before the object is set as the active element)
- onBeforeCopy (attacker executes the attack string right before a selection is copied to the clipboard - attackers can do this with the execCommand("Copy") function)
- onBeforeCut (attacker executes the attack string right before a selection is cut)
- onBeforeDeactivate (fires right after the activeElement is changed from the current object)
- onBeforeEditFocus (Fires before an object contained in an editable element enters a UI-activated state or when an editable container object is control selected)
- onBeforePaste (user needs to be tricked into pasting or be forced into it using the execCommand("Paste") function)
- onBeforePrint (user would need to be tricked into printing or attacker could use the print or execCommand("Print") function).
- onBeforeUnload (user would need to be tricked into closing the browser - attacker cannot unload windows unless it was spawned from the parent)
- onBeforeUpdate (activates on data object before updating data in the source object)
- onBegin (the onbegin event fires immediately when the element's timeline begins)
- onBlur (in the case where another popup is loaded and window looses focus)
- onBounce (fires when the behavior property of the marquee object is set to "alternate" and the contents of the marquee reach one side of the window)
- onCellChange (fires when data changes in the data provider)
- onChange (select, text, or TEXTAREA field loses focus and its value has been modified)
- onClick (someone clicks on a form)
- onContextMenu (user would need to right click on attack area)
- onControlSelect (fires when the user is about to make a control selection of the object)
- onCopy (user needs to copy something or it can be exploited using the execCommand("Copy") command)
- onCut (user needs to copy something or it can be exploited using the execCommand("Cut") command)
- onDataAvailable (user would need to change data in an element, or attacker could perform the same function)
- onDataSetChanged (fires when the data set exposed by a data source object changes)
- onDataSetComplete (fires to indicate that all data is available from the data source object)
- onDblClick (user double-clicks a form element or a link)
- onDeactivate (fires when the activeElement is changed from the current object to another object in the parent document)
- onmouseover (fires when user put his mouse on the particular text or, some random things. Such as, imgae , link etc.. )
How to use it ??
Now. Go to the main page and, put your mouse on the testingxss text. And, you will see a pop-up box. And, if you are an Android user just like me, touch on the text.
And, another successful attack. 👻