Source code for shellcodes.arm64.write_to_stack

# read from file descriptor and write to stack

[docs]def align4(n): m = n / 4 x = n % 4 if x == 0: return n return 4 * (m+1)
[docs]def align8(n): m = n / 8 x = n % 8 if x == 0: return n return 8 * (m+1)
[docs]def generate(in_fd, size): """Writes data to stack Args: in_fd (int/str/reg) = file descriptor size (int/str/reg) = size to write """ if isinstance(size, int) == True: xsize = "%s" % align8(size) else: xsize = size sc = """ sub sp, sp, %s mov x0, %s mov x2, %s mov x1, sp mov x8, 63 svc 1 """ % (xsize, in_fd, xsize) return sc