728x90 반응형 checksec2 DreamHack - basic_exploitation_001 풀이 checksec으로 파일 보호 기법들 확인 NX(No-eXecute) 보호 기법이 활성화되어 있으므로, 쉘 코드는 실행되지 않지만, Stack Canary가 활성화되지 않은 것으로 보아 Return Address Overwrite에 취약하다는 것을 알 수 있다. basic_exploitation_001.c 분석 #include #include #include #include void alarm_handler() { puts("TIME OUT"); exit(-1); } void initialize() { setvbuf(stdin, NULL, _IONBF, 0); setvbuf(stdout, NULL, _IONBF, 0); signal(SIGALRM, alarm_handler); alarm(30); } vo.. 2023. 4. 25. 리버싱 - 바이너리에 설정된 보호 기법 확인(checksec) checksec -f {파일} RELRO(RELocation Read-Only): Read-Only 권한 설정으로 Write 가능한지 여부 Stack Canary: Return Address Overwrite 여부 확인 Stack Canary는 카나리를 통해 스택 오버플로우를 감지한다. NX(No-eXecute): NX를 우회할 수 있는 가장 대표적인 방법은 ROP(Return Oriented Programming) NX(No-eXecute)는 쉘코드 실행을 방지한다. ASLR(Address Space Layout Randomization): 실행될 때마다 데이터 영역(스택, 힙, 라이브러리 등)의 주소를 랜덤으로 변경 Windows용 checksec https://github.com/Wenzel/che.. 2023. 3. 26. 이전 1 다음 728x90 반응형