본문 바로가기

All183

02. OSI 7 Layers 참고 사이트 :- [WIKIPEDIA] OSI model- [위키백과] OSI 모형- [WIKIPEDIA] Logical link control- [WIKIPEDIA] Media access control OSI Reference Model OSI 모형 (Open System Interconnection Reference Model)은 국제표준화기구(ISO)에서 개발한 네트워크 기본 모델(표준)로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. 모든 네트워크 모델과 매칭되며 누구든지 이와 같은 형태로 만든다면 다른 기기들과 통신이 가능하다. 총 7개의 레이어로 나뉘어지며 각 계층마다 데이터를 부르는 이름이 다르다. OSI ModelLayerProtocol data unit (P.. 2016. 6. 7.
OllyDbg (1) 참고 도서 : [리버싱 핵심원리 : 악성 코드 분석가의 리버싱 이야기] 저자 : 이승원출판사 : 인사이트 참고 사이트 :- [위키백과] OllyDbg- [L4DY_8UG] 올리디버거(Ollydbg) 설치 및 사용법 OllyDbg 정식 사이트 : http://www.ollydbg.de/Quick start - version 1.10 : http://www.ollydbg.de/quickst.htm OllyDbg디버깅 프로그램 중 하나로 디스어셈블리와 디버그가 모두 가능한 툴이다. - 바이너리 코드 분석을 위한 x86 디버거- 소스 코드가 없을 때 유용하게 사용됨- 레지스터를 추적- 함수, API 호출, Switch 문, 표 (table), constant 그리고 문자열을 인식- 오브젝트 파일과 라이브러리에서.. 2016. 6. 5.
Assembler 참고 도서 : [리버싱 핵심원리 : 악성 코드 분석가의 리버싱 이야기] 저자 : 이승원출판사 : 인사이트 참고 문헌 : [리버싱 기초]저자 : 심준보작성 날짜 : 2014-01-07 참고 사이트 :- [위키백과] 어셈블러- [위키백과] 어셈블리어- [위키백과] 명령 코드- [위키백과] 역어셈블러 실행 파일을 생성하는 어떠한 프로그래밍 언어라도 빌드 과정을 거치면 모두 기계어로 변환된다. 디버거를 통해서 어떤 실행 파일이라도 어셈블리 언어로 번역해서 볼 수 있기 때문에 리버서는 기본적으로 어셈블리 언어를 잘 알아야 한다. 어셈블리 언어만 잘 익혀놓으면 실행 파일이 어떠한 프로그래밍 언어로 제작되어 있는지 상관없이 디버깅을 통한 코드 분석이 가능해 진다. Assembler어셈블러(assembler)는 어셈블.. 2016. 6. 5.
Debugger 참고 도서 : [리버싱 핵심원리 : 악성 코드 분석가의 리버싱 이야기] 저자 : 이승원출판사 : 인사이트 참고 사이트 : - [위키백과] 디버거- [리버스코어 ReverseCore] 리버싱 현업에서 사용되는 디버거(Debugger)들 개발 도구를 통해 프로그래밍 언어 소스코드를 빌드하면, 실행파일이 생성된다. 이 과정은 결국 사람이 이해하기 쉬운 프로그래밍 언어의 소스코드를 기계가 이해하기 쉬운 기계어로 변환하는 것이다. 이러한 기계어는 사람이 알아보기 어렵기 때문에 좀 더 편하게 보기 위해서 디버거 유틸리티를 사용한다. 디버거에 탑재된 디스어셈블러(Disassembler) 모듈은 이 기계어를 어셈블리(Assembly)언어로 번역해서 보여준다. Debugger디버거 (Debugger) 또는 디버깅 도구(.. 2016. 6. 5.
리버싱 참고 도서 : [리버싱 핵심원리 : 악성 코드 분석가의 리버싱 이야기] 저자 : 이승원출판사 : 인사이트 참고 사이트 :- [위키백과] 리버스 엔지니어링 - [위키백과] 정적 프로그램 분석- [위키백과] 동적 프로그램 분석 Reverse Engineering리버스 엔지니어링 또는 역공학은 장치 또는 시스템의 기술적인 원리를 그 구조분석을 통해 발견해내는 과정이다. 그리고 유지 보수를 위해, 또는 같은 기능을 하는 새 장치를 원본의 일부를 이용하지 않고 만들기 위해 대상의 세부적인 작동을 분석하는 것도 포함한다. Reverse Code Engineering; RCE소프트웨어 분야의 리버스 엔지니어링이라고 생각하면 된다. 사용 이유- 소프트웨어 간의 상호 운용성- 사라진 문서- 상품 분석- 호환성 부품 개발.. 2016. 6. 5.