1 - search for good gadgets in the executable chunk. 2 - set rax to 0x3b 3 - set other registers from shellcode using the stack (pop) 4 - syscall from shellcode execve("/bin/sh",NULL , NULL)
Original writeup (https://pwn-maher.blogspot.com/2020/11/pwn13-ret2libc-and-ret2shellcode.html).