일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 포렌식
- hxd
- CSMA/CD
- 로그분석
- WEFA
- 네트워크목적
- 역공학
- 네트워크구성
- 컴퓨터네트워크
- 웹포렌식
- 보안대책
- 버프 스위트
- 디버거
- 리버스 엔지니어링
- 인트라넷
- 허브
- WebGoat
- 프로토콜
- 리소스공유
- 엑스트라넷
- 리버싱
- 프록시
- REGA
- 디컴파일러
- 보안위협
- ISA
- MAC 주소
- 원격접속툴
- 기계어
- 네트워크장비
Archives
- Today
- Total
목록기계어 (1)
IT 따라잡기 시리즈
2. 기계어와 디컴파일러
컴파일러는 우리가 프로그래밍 언어로 소스코드를 작성하면 이를 기계어로 번역합니다. 여기서 기계어는 2진수로 표현되어 CPU는 이를 해석하고 처리합니다. 기계어는 주로 명령을 나타내는 OP 코드와 그 명령의 피 연산자인 오퍼랜드로 정의 됩니다. OP 코드의 길이는 ISA에 의해 정의되며 x86의 경우 4byte의 크기를 가집니다. 문제는 OP코드와 오퍼랜드가 2진수로 이루어져 있기 때문에 우리가 보고 해석하기 힘들다는 것입니다. 때문에 우리는 디컴파일 과정을 거쳐 기계어를 사람이 볼 수 있는 형태로 만듭니다. 우리가 기계어를 해석해야하는 경우는 여러 경우가 있지만, 대표적인 경우는 디버깅입니다. 디버깅은 프로그램을 만들때 그 오류를 찾아 해결하는 과정인데, 이때 기계어를 분석하여 프로그램이 어떻게 흘러가는..
보안 따라잡기/리버스 엔지니어링 따라잡기
2022. 10. 2. 12:42