일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- LOB
- OS
- Shell code
- Buffer Overflow
- hacking
- 워게임
- 정보보안기사
- webhacking
- stack overflow
- webhacking.kr
- 정보보안기사 실기
- SQL
- System
- Operating System
- 웹해킹
- pwnable
- Spring Framework
- 정보처리기사 실기
- BOF
- 운영체제
- Spring MVC
- Lord of BOF
- 해킹
- wargame
- system hacking
- Pwnable.kr
- Payload
- Spring
- 네트워크
- PWN
- Today
- Total
목록IT 보안/Reversing (5)
DongDD's IT
리버싱 예제 - abex crackme2 Problem 맨 왼쪽은 시작화면이고 Name과 Serial을 입력받을 수 있는 텍스트 창과 버튼 3개로 이루어져있다. 아무것도 입력하지 않았을 시 최소 4자리 이상의 name을 입력해달라는 message가 출력되고 Name을 입력한 후 다시 눌렀을 때는 serial이 일치하지 않는다는 message가 출력된다. 입력한 Name과 Serial이 어떠한 검사를 통해 일치하다는 것이 확인되면 통과할 수 있는 문제인 것 같다. Analysis Ollydbg를 통해 실행하면 Entry point(0x00401238)에서 프로그램이 시작된다. 먼저 Code->Search for -> All referenced strings를 통해 출력되었던 message를 찾아보았고 위 ..
Register 및 어셈블리어 정리 레지스터 IA-32 레지스터- Intel에서 만든 32bit 크기의 레지스터- 32bit(4bytes) 데이터를 한번에 처리 가능- 32bit 크기로 메모리 주소 접근 가능 범용 레지스터 : 연산에 사용되는 레지스터1) EAX : 산술, 논리 연산에 사용되는 레지스터, 함수 리턴 값 전달용도로도 사용된다.2) EBX : 간접 주소 지정 시 사용되는 레지스터3) ECX : 루프문에서 반복 명령 수행 시 반복 횟수를 저장하기 위해 사용하는 레지스터4) EDX : 간접 주소 지정에서 사용되는 레지스터이고 곱셈, 나눗셈 시 보조 연산 레지스터로 사용된다. 포인터 레지스터 : 주소를 가리키는 포인터 용도로 사용되는 레지스터1) ESP(Stack Pointer) : 가장 최근에 ..
리버싱 예제 - abex crackme1 Problem abex crackme1.exe을 실행 시 "Make me think your HD is a CD-Rom"이라는 메시지를 볼 수 있다. 이 상태에서 확인을 누르면 "Nah... This is not a CD-ROM Drive!"라는 창이 나타난다. 즉, CD-ROM을 사용중이지 않기 때문에 Error message가 나오는 것이고 이것을 디버깅을 통해 CD-ROM으로 인식하도록 바꾸는 문제이다. Analysis 먼저 프로그램이 어떻게 작성되어 있는지 확인하기 위해 Ollydbg를 통해 프로그램을 실행시켜보았다.Entry point인 0x401000에서 시작을 하고 처음에 바로 MessageBox를 호출한다. 위에서 보았던 "Make me think ..
리버싱 도구 소개 PEView Download : http://wjradburn.com/software/ - PEView : 윈도우 용 실행 파일인 PE(Portable Executable)의 구조를 분석할 수 있는 프로그램- PE File Header의 내용을 볼 수 있고 여러 정보들을 얻을 수 있다. PEView 실행 시 나오는 초기 화면으로 open할 파일을 선택하여 open하면 PE파일에 대한 정보를 볼 수 있다. 이후에 포스팅할 Reversing을 공부하기 위한 abex시리즈의 첫 번째 예제를 PEView로 열어보았다.앞선 포스팅에서 설명 했던 PE 파일의 구조를 볼 수 있다.PE 파일 설명 : http://dongdd.tistory.com/79 왼쪽에는 PE 파일의 구조가 있고 IMAGE_NT..
리버싱 기초 지식 Reversing - Reverse Engineering(역공학)이라고 불림- 어떤 장치나 시스템 등의 구조, 기능, 동작을 분석하고 원리를 이해하여 단점을 보완하고 새로운 아이디어를 추가하는 작업을 의미한다. 분석 방법1) 정적 분석- 실행 단계가 아닌 파일에 대한 여러 정보를 가지고 분석하는 방법- 디스어셈블러를 통해 내부 코드와 구조를 확인하는 것도 포함된다.2) 동적 분석- 파일을 실행시킨 후 동작을 분석하는 방법- 파일이 실행되면서 변화되는 여러 정보를 파악한다.- Debugger를 통해 프로그램 내부 동작 원리를 분석한다. 컴퓨터의 기본 구성요소 1) CPU2) Memory3) Hard disk : 실행 가능한 파일(exe)이 저장됨-> 윈도우에서는 실행 파일을 PE(Port..