BLOG main image
전체 (276)
[Computer] (42)
[Programming] (62)
[DBMS] (26)
[Operating System] (21)
[Study English] (8)
[For money] (28)
[Interest] (89)
«   2009/11   »
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          
77888 Visitors up to today!
Today 80 hit, Yesterday 46 hit
'Reverse Engineering'에 해당되는 글 1건
[폭주기관차, 2007/01/21 18:11, [Programming]/Reverse Engineering]

관련원문글 : http://dual.inxzone.net/blog/3

<사전적의미>
Reverse : n. 반대
Engineering : n. 공학

즉, 반대로 역 분석한다는 뜻.

컴퓨터의 CPU에는 명령어 세트가 저장되어 있습니다. 이 명령어 세트를
기계어 라고 부릅니다. 모든 프로그램은 전부 기계어로 되어 있습니다.
하지만 이 기계어는 0과1의 단순한 규칙 조합이기에
사람이 이것을 가지고 프로그래밍 한다는 것은 상당히 난해 합니다.
그래서 이 기계어를 보기 쉬운 기호로 나타낸것이 어셈블리어 입니다.
어셈블리어는 텍스트 에디터로 작성됩니다. 그리고 그것을 Assembler에게
번역 하라고 하면 Assembler는 우리가 짠 어셈블리어 코드를 기계어 코드로
변환 시키어 줍니다. 이 변환되어 만들어진 OBJ 파일을 Linker에 넣어주면
Linker는 이를 우리가 컴퓨터를 하며 제일 많이 보게 되는 PE파일(ex: EXE 파일)로
만들어 줍니다.
                            - 가져온 글 -

Disassembler라는 것이 있는데 이 것은, Assembler와 Linker를 거쳐 생성된 PE파일을
다시 어셈블리어 코드로 바꾸어주는 프로그램을 말한다.
그러나 이 것은 간단한 작업만 가능하지만, 복잡하고 세밀한 컨트롤까지는 힘들다.

이 것보다 더 정밀하게 분석이 가능한 것이 Debugger이다.
Debugger는 소프트웨어 전공인 사람은 많이 들어봤을 것이다.
프로그램의 버그를 잡기 위해 만들어진 것이다.

이 Debugger를 이용하여 각 코드줄 단위로 Break Point를 걸어 한 줄씩
프로그램을 추적할 수가 있다.

우선 RE(Reverse Enginnering)의 처음 시작의 문을 쉽게 열어주었던 듀얼님께 감사의 말을 전합니다.

듀얼님의 말씀
"내가 남으로 부터 배움을 받은 만큼 그의 보답으로
          배운 지식을 다시 다른 사람에게로 환원한다."
Trackback Address :: http://kongmks.cafe24.com/trackback/27
Name
Password
Homepage
Secret
*1