취약점 리버싱 요약 노트
1. 리눅스로 파일을 받으면? 1) file 명령어를 통해 파일 정보를 확인한다. - 시그니처를 파싱해서 보여줌. (파일정보, 아키텍처 정보등등) 2) strings 명령어를 통해 파일의 정보를 확인한다. - 라이브러리 함수 같은 정보들도 알 수 있음 2. 대부분의 함수는 libc라이브러리 안에 포함되어있다. - 카피 strcpy, strncpy, memcpy - 비교 strcmp, strncmp, memcmp - 길이 strlen - 메모리 : malloc, free - 기타 : sleep.. 3. IDA에서는 배열, 포인터, 심볼, 라이브러리에 대한 정보는 내가 바꿔줘야 한다. 4. IDA에서 FLIRT를 사용하라. 특정 함수에 대해 알아서 시그니처를 만들어준다 (MS, libc) 5. C++과 별차..
PE파일 구조
PE파일 분석 도구 : 실행파일(Executable File)이란 명령(Operation Codes)에 따라 지시된 작업을 수행하도록 하는 파일을 말한다. 이 파일은 실행 코드, 전역 데이터, Import/Export 함수정보, 리소스 데이터 등으로 구성된다. 포맷 종류는 PE(Windows), ELF(Linux, Unix), Mach-O(OS X,iOS), DEX(Android), MZ(Dos)등이 있다. 이때 PE(Portable Executable)파일은 Windows 3.1부터 지원되는 실행파일 형식이다. 이는 유닉스의 COFF(Common Object File Format)를 기반으로 하고 파일 종류는 실행파일(EXE, SCR), 라이브러리(DLL, OCX), 드라이버(SYS), 오브젝트파일(O..