|
It's true that HACK doesn't have call and return, but they can be simulated, as we do when translating the VM code to HACK machine code. Specifically, the jump to address in HACK is always in register A, so one can influence what happens next by somehow inserting a different value there.
But it's true, that buffer overflow attacks don't work well on HACK. Firstly, all the code is in ROM, so one can't change it from within the program. Also, buffer overflow is often used to obtain root (or admin) access to the machine. HACK has only one run level, no storage and no networking, so such attack would be pointless in that platform.
|