Skip to content

Question about lies #149

Answered by abrahamjuliot
z0ccc asked this question in Q&A
Discussion options

You must be logged in to vote

These are great questions.

For example, navigator.hardwareConcurrency:

failed undefined properties

How is still a mystery to me, but both novice and advanced object tampering techniques leak subtle differences from the object's native behavior.

// This returns undefined in native engines
Object.getOwnPropertyDescriptor(navigator, 'hardwareConcurrency')
// => undefined

// Let's tamper with the value using a basic method
Object.defineProperty(navigator, 'hardwareConcurrency', { value: 2 })

// Now this returns the descriptor object
Object.getOwnPropertyDescriptor(navigator, 'hardwareConcurrency')
// => {value: 2, writable: false, enumerable: false, configurable: false}

does not match wo…

Replies: 4 comments

Comment options

You must be logged in to vote
0 replies
Answer selected by abrahamjuliot
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
question Further information is requested
2 participants
Converted from issue

This discussion was converted from issue #147 on September 11, 2021 15:06.