리버싱 정리 - 공부방법, 정의, PE File

Lofo·2021년 7월 5일
0

Security

목록 보기
1/1

리버싱 이 정도는 알아야지책 리뷰

리버싱 시작하기

리버싱 제대로 알기

  • 리버싱은 "디버거에서 재번역해 준 어셈블리 코드를 잘 읽고, 기능과 역할을 도출하는 것"이다.
  • 리버싱 작언은 디버깅 툴을 이용해서 이루어지고, 프로그램에는 OllyDBG, IDA, WinDBG등이 있다.

공부방법

  • 일단 시작하라. 기본 베이스는 공부하는 동안 "종종" 필요한 것이다.
  • 실제로 동작하고, 분석하다보면 운영체제에 대한 기본 지식도 자연스레 익힐 수 있다.
  • 단, C언어 문법과 네트워크 기초 내용은 어느 정도 숙지하고 시작하라.
  • 트렌드에 현혹되지 말고, 기본에 충실하라.
  • 미련하고, 바보 같이 분석하라. > 처음에는 도구에 얽매이지 않고 분석해보아라.
  • 만들어진 도구들이 어떤 원리로 동작하는지 이해하고, 만들 수 있는 실력을 갖추는 것이 처음 시작하는 사람의 목표가 되어야 한다.

무작성 시작하기

용어정리

  • 운영체제, 파일 시스템, 메인 메모리, 실행파일, 프로세스

PE File

  • Window 실행파일에 데이터가 채워진 방식을 PE File Format이라고 하며, 이는 MS가 정한 규칙에 맞게 채워진 것이다.
  • PE File은 PE Header, text 섹션, data 섹션으로 나눠진다.
  • PE Header: 실행을 위한 필요 정보 기록
  • .text Section: 동작에 대한 필요 코드 기록
  • .data Section: 실행에 대한 부가적인 필요 정보 기록

    printf()를 통해 "안녕"을 출력하는 실행 프로그램 작성시, PE Header에는 실행시 실행파일이 맞는지, 데이터는 메모리의 어느 위치에 올릴 것인지 등을 기록, printf()함수 코드가 text섹션에, "안녕"이라는 문자열 정보가 data 섹션에 기록

profile
Love God, Love People, Love Code.

1개의 댓글

comment-user-thumbnail
2021년 7월 5일

멋있네요.. 구독 버튼 없는게 아쉽습니다.

답글 달기