汇编指令
汇编指令NOP(No Operation) 机器码为0x90,没有操作数,执行这条指令时CPU什么都不干 PUSH将数据压入栈中,指令格式为 push x。 x可取imm8,imm16,r/m16,r/m32,r/m64。(imm代表立即数,r代表寄存器,m代表内存) 栈指针寄存器ESP(RSP)自动递减。 例:push eax POP从栈中弹出数据,指令格式为pop x x可取r/m16,r/m32,r/m64。 栈指针寄存器ESP(RSP)自动递增。 例:pop eax MOV将数据从源操作数移动到目的操作数,指令格式为mov x1,x2。意为从x2移动数据到x1。 x1,x2可以是:1、寄存器到寄存器 2、内存到寄存器,寄存器到内存 3、立即数到寄存器,立即数到内存 注:不能从内存到内存 LEA用于载入有效地址,指令格式为lea x1,x2。 ...
Linux学习
LinuxLinux下的漏洞防御机制1、RELRO:只读重定位 -z norelro(不开) No RELRO -z lazy(部分保护) Partial RELRO -z now(全保护) Full RELRO 2、stack(canary):栈溢出保护 -fno-stack-protector关闭 -fstack-protector开启 -fstack-protector-all全开 3、NX:栈不可执行 -z execstack关闭 NX disabled -z noexecstack打开 NX enable 4、PIE:地址无关可执行文件 -no-pie NO PIE -pie PIE enable