Difference between browser-supported handlers and Shazzer 'events' list

Chrome logo 20

Shazzer's 'events' list. (118 handlers currently). Opposed to handlers registered in document, document.body and window objects (138 handlers currently). The shazzer's event list is compared with all handlers.

Created by: hansmach1ne

Created on: Sunday, January 5, 2025 at 9:45:13 PM

Updated on: Tuesday, January 7, 2025 at 1:19:02 PM

Vector type: JS

Vector charset: UTF-8

Code used before fuzz:
function listAllEventHandlers() {
    const allHandlers = new Set();
    const objects = [document.body, document, window];
    objects.forEach(obj => {
        for (const prop in obj) {
            if (prop.startsWith('on')) {
                allHandlers.add(prop);
            }
        }
    });
    return Array.from(allHandlers).sort();
}
allBodyHandlers = listAllEventHandlers();

console.log("window, document and document.body contain " + allBodyHandlers .length + " handlers")

const shazzerEvents  = new Set();
Template used:
shazzerEvents.add('$[data1]');
Code used after fuzz:
console.log("Shazzer 'events' contains " + shazzerEvents.size + " events");

function missingHandlers() {
const out = new Set();
    for(let handler of allBodyHandlers) {
        if (!shazzerEvents.has(handler)) {
            out.add(handler);
        }
    }
return out;
}

for(let handler of missingHandlers()){
   log(handler);
}
Your browser was detected as:
Detecting... Detecting... Detecting... Detecting...

Sample payloads

shazzerEvents.add('onbeforecopy');
shazzerEvents.add('onbeforecut');
shazzerEvents.add('onbeforepaste');
shazzerEvents.add('oncopy');
shazzerEvents.add('oncut');
shazzerEvents.add('onfreeze');
shazzerEvents.add('onfullscreenchange');
shazzerEvents.add('onfullscreenerror');
shazzerEvents.add('onpageswap');
shazzerEvents.add('onpaste');
shazzerEvents.add('onpointerlockchange');
shazzerEvents.add('onpointerlockerror');
shazzerEvents.add('onprerenderingchange');
shazzerEvents.add('onreadystatechange');
shazzerEvents.add('onresume');
shazzerEvents.add('onscrollsnapchange');
shazzerEvents.add('onscrollsnapchanging');
shazzerEvents.add('onvisibilitychange');
shazzerEvents.add('onwebkitfullscreenchange');
shazzerEvents.add('onwebkitfullscreenerror');

Fuzz results

Chrome logo
Chrome 131.0.0.0 desktop Windows NT 10.0

Updated

Sun Jan 05 2025
Found 20 results
Loading...