Compile Options

Compile options

리눅스 환경에서의 기본적인 컴파일

gcc -o <실행 파일명> <소스 파일명>

Enable ASLR

sudo sysctl -w kernel.randomize_va_space = 2

Disable ASLR

sudo sysctl -w kernel.randomize_va_space = 0

Disable Canary(SSP)

-fno-stack-protector

Disable dummy(stack boundary)

-mpreferred-stack-boundary=2

Disable NX(DEP)

-z execstack

32 bit Compile

-m32

Enable PIE

-fpic -pie

RELRO

  • FULL RELRO = -z relro -z now
  • Partial RELRO = -z relro
  • No RELRO = -z norelro

공유하기