본문 바로가기
반응형

Study78

[시스템] gdb 사용법 gdb 사용법 set disassembly-flavor intel gdb는 AT&T 문법이 기반으로 되어 있기 때문에, 올리디버거를 사용한 사람은 불편할 수 있다. 하지만 Intel문법을 사용할 수 있다. set diassembly-flavor intel을 실행하면 intel 문법을 사용할 수 있다. disas main 특정 주소를 디스어셈블링한다. disas 뒤에 함수명이나 주소를 입력하면 된다. run / r 프로세스를 처음부터 실행한다. 디버깅 도중 run을 입력하면 프로세스가 리셋되어 처음부터 실행된다. break / b 브레이크 포인트를 설정한다. 함수명이나 주소를 입력하면 된다. info breakpoints / info b 브레이크 포인트를 확인한다. info registers 현재 레지스터.. 2017. 9. 26.
[시스템] 해커스쿨정리 핵심 키워드 BOF(Buffer Overflow), gets() 함수 문제점, 메모리 값 변조, 스택 영역, setuid BOF (Buffer Overflow) 버퍼(Buffer)란? 어떤 데이터가 한 곳에서 다른 곳으로 이동할 때, 그 데이터가 일시적으로 보관되는 임시 기억 공간을 말한다. EX) - 한 프로그램 내에서 데이터가 이동할 때 - 한 프로그램에서 다른 프로그램으로 데이터가 이동할 때 - 한 프로그램에서 하드웨어(예를 들면 프린터)로 데이터가 이동할 때 - 한 네트워크에서 다른 네트워크로 데이터가 이동할 때 버퍼 오버플로우 (Buffer Overflow)란? 사용자가 입력한 데이터의 크기가 너무 과하여 제한된 버퍼의 용량이 넘쳐버렸다. 제한된 버퍼 영역을 벗어나면 다른 애꿏은 메모리 영역을 .. 2017. 9. 25.
[시스템] 시스템 해킹이란? 시스템 해킹이란? 운영체제, 소프트웨어, 하드웨어를 침투해서 메모리를 원하는 대로 조작할 수 있는 기법들을 의미한다. 시스템 해킹에는 여러가지 기법이 존재한다. Buffer Overflow, Format String Bug, Integer Overflow, Use-After-Free, Type Confusion 등이 있다. 2017. 9. 21.
[리버싱] 안티 디버깅 안티 디버깅(Anti-Debugging)이란? 디버깅을 방지하고 분석을 하지 못하도록 하는 기술이다. 디버깅을 당한다면 해당 디버거 프로그램을 종료시키거나 에러를 발생시키는 방법 등 다양한 방법을 사용하여 분석을 방해한다. 안티 디버깅 기술에는 수많은 방법들이 존재하며 계속 발전하고 있으며 이에 따라 이를 우회하는 기술도 계속적으로 발전하고 있다. 안티 디버깅을 배워야 하는 이유 - 디버깅을 방지하기 위해 - 각종 안티 디버깅 기법들의 동작 원리를 파악한 후 회피하기 위해 - 안티 디버깅 기법을 공부하는 과정에서 저절로 고급 리버싱을 배울 수 있기 때문에 안티 디버깅 종류 static vs dynamic static 디버깅 시작할 때 한 번만 해체를 해주면 해결되는 기법이다. 주로 디버거를 탐지하여 프로.. 2017. 9. 20.
[리버싱] Stolen Byte Stolen Byte란 패커가 위치를 이동시킨 코드로써 보호된 프로그램의 코드 윗부분이다. 이렇게 옮겨진 코드들은 할당된 메모리 공간에서 실행되며, 이와 같은 이유로 패킹된 프로세스가 덤프될 때Stolen Byte를 복구하지 못하면 프로그램은 정상적으로 동작이 불가능하다. POPAD랑 OEP사이에 있는 연속된 PUSH를 Stolen Byte라고 한다. 2017. 9. 19.
[리버싱] 언패킹 언패킹이란? 패킹했던 파일은 푸는 것이다. 압축된 코드가 메모리에 올라가서 실행을 하게 되면 압축을 해제하는 루틴을 거친 다음 원본 소스를 실행하게 되는데 그때 원본 소스 시작점을 잡아서 해당 부분에서 덤프를 뜨는 것이다. 즉, 압축이 해제된 상태의 코드를 덤프 뜨는 것이다. 하지만 시작점을 찾는 다는 것은 강력한 패커일수록 어렵다. 언패킹 동작과정 언패킹을 했음에도 파일이 제대로 실행되지 않는 이유와 해결법 패커가 패킹과정에서 엔트리 포인트 부분의 코드를 다른 부분으로 옮겨두기 때문에 언패킹 할 때 옮겨진 코드를 복구해야 한다. 2017. 9. 19.
반응형