update consistency comments for CWE-754

This commit is contained in:
Erik Krogh Kristensen
2020-07-08 10:08:51 +02:00
parent 0d64a0f2c8
commit 2235634347
2 changed files with 6 additions and 6 deletions

View File

@@ -4,15 +4,15 @@ let obj = {};
window.addEventListener('message', (ev) => {
let message = JSON.parse(ev.data);
window[message.name](message.payload); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql
new window[message.name](message.payload); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql
window[message.name](message.payload); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql [INCONSISTENCY]
new window[message.name](message.payload); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql [INCONSISTENCY]
window["HTMLElement" + message.name](message.payload); // OK - concatenation restricts choice of methods
window[`HTMLElement${message.name}`](message.payload); // OK - concatenation restricts choice of methods
function f() {}
f[message.name](message.payload)(); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql
f[message.name](message.payload)(); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql [INCONSISTENCY]
obj[message.name](message.payload); // NOT OK
window[ev](ev); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql
window[ev](ev); // NOT OK, but reported by UnsafeDynamicMethodAccess.ql [INCONSISTENCY]
});

View File

@@ -28,13 +28,13 @@
obj[name](); // NOT OK
if (obj.hasOwnProperty(name)) {
obj[name](); // NOT OK, but not flagged
obj[name](); // NOT OK, but not flagged [INCONSISTENCY]
}
let key = "$" + name;
obj[key](); // NOT OK
if (typeof obj[key] === 'function')
obj[key](); // OK - but still flagged
obj[key](); // OK - but still flagged [INCONSISTENCY]
if (typeof fn === 'function') {
fn.apply(obj); // OK