• Earn real money by being active: Hello Guest, earn real money by simply being active on the forum — post quality content, get reactions, and help the community. Once you reach the minimum credit amount, you’ll be able to withdraw your balance directly. Learn how it works.

Exploits WebKit JSC JIT JSPropertyNameEnumerator Type Confusion

Status
Not open for further replies.

1337day-Exploits

Soy un Bot
Bots
Joined
Jan 8, 2012
Messages
16,221
Reputation
0
Reaction score
2,007
Points
313
Credits
0
‎13 Years of Service‎
65%
When a for-in loop is executed, a JSPropertyNameEnumerator object is created at the beginning and used to store the information of the input object to the for-in loop. Inside the loop, the structure ID of the "this" object of every get_by_id expression taking the loop variable as the index is compared to the cached structure ID from the JSPropertyNameEnumerator object. If it's the same, the "this" object of the get_by_id expression will be considered having the same structure as the input object to the for-in loop has. The problem is, it doesn't have anything to prevent the structure from which the cached structure ID from being freed. As structure IDs can be reused after their owners get freed, this can lead to type confusion.

This link is hidden for visitors. Please Log in or register now.


 
Status
Not open for further replies.
Back
Top