반응형
ASLR
> cat /proc/sys/kernel/randomize_va_space
2
값이 0이면 ASLR 없음, 1이면 stack, library가 랜덤, 2이면 stack, library, heap이 랜덤.
DEP/NX
> gcc -z exestack ...
STACK에 실행권한 줌. DEP/NX 제거라고 봐도 될듯
CANARY
> gcc -fno-stack-protector ... # SSP 해제
> gcc -fstack-protector ... # SSP 설정
PIE
> gcc -no-pie ... # PIE 해제
> gcc -fpie ... # .text 랜덤
> gcc -fpie -pie ... # PIE 설정
RELRO
> gcc -z relro ... # PARTIAL-RELRO 설정
> gcc -z relro -z now ... # FULL-RELRO 설정
> gcc -z norelro ... # NO-RELRO
32bit Compile
> sudo apt install gcc-multilib # 관련 라이브러리 설치 후 사용가능
> gcc -m32 ... # 64bit에서 32bit 컴파일
> gcc -m64 ... # 디폴트이므로 없어도 됨
DUMMY
> gcc -mpreferred-stack-boundary=2 ... # 32bit
> gcc -mpreferred-stack-boundary=4 ... # 64bit
DUMMY 제거
함수 최적화
> gcc -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0 ... # 함수 최적화 제거
단독 링크
> gcc -fno-builtin ... # 라이브러리와 링크되지 않고 단독으로 링크
참고 :
반응형
'Information* > 알면도움됨' 카테고리의 다른 글
티스토리가 마크다운을...! (186) | 2019.03.31 |
---|---|
Xshell 명령어 추가 (0) | 2019.03.18 |
python으로 실행파일 입력 주기 (0) | 2019.03.17 |
zip2john 설치 (0) | 2019.03.13 |
PIL과 Pillow (0) | 2019.03.11 |