bi-05 step 02 — Break it, then measure it
Goal
Demonstrate why each property of the real binding layer is load-bearing.
Tasks
- Break wrapper identity — create a new wrapper per access. Show two failures: expandos
vanishing and
===returning false. Say which is worse and why. - Remove world separation — show an "extension" expando becoming visible to "page" code. Write two sentences on what an attacker does with that.
- Measure the crossing. 1e6 iterations: property access through your wrapper vs a plain JS property. Attribute the gap to the four costs (crossing, conversion, checks, side effects).
- Measure conversion specifically. Compare a numeric attribute with a long string attribute. Strings should dominate — explain why.
Done when
- Both identity failures reproduced
- Isolation failure reproduced with an attack sentence
- Measurement table with the gap attributed to named costs