6P by neo 1달전 | favorite | 댓글과 토론

소개

  • x86 강좌

    • Part 1: 목표
    • Part 2: 기술
    • Part 3: 악성코드의 종류
    • Part 4: x86 어셈블리 소개
    • Part 5: 이진수 시스템
    • Part 6: 16진수 시스템
    • Part 7: 트랜지스터와 메모리
    • Part 8: 바이트, 워드, 더블 워드 등
    • Part 9: x86 기본 아키텍처
    • Part 10: 범용 레지스터
    • Part 11: 세그먼트 레지스터
    • Part 12: 명령 포인터 레지스터
    • Part 13: 제어 레지스터
    • Part 14: 플래그
    • Part 15: 스택
    • Part 16: 힙
    • Part 17: 리눅스 설치 방법
    • Part 18: vim 텍스트 편집기
    • Part 19: 어셈블리 학습 이유
    • Part 20: 명령 코드 처리
    • Part 21: 프로그램 컴파일 방법
    • Part 22: ASM 프로그램 1 [즉시 데이터 이동]
    • Part 23: ASM 디버깅 1 [즉시 데이터 이동]
    • Part 24: ASM 해킹 1 [즉시 데이터 이동]
    • Part 25: ASM 프로그램 2 [레지스터 간 데이터 이동]
    • Part 26: ASM 디버깅 2 [레지스터 간 데이터 이동]
    • Part 27: ASM 해킹 2 [레지스터 간 데이터 이동]
    • Part 28: ASM 프로그램 3 [메모리와 레지스터 간 데이터 이동]
    • Part 29: ASM 디버깅 3 [메모리와 레지스터 간 데이터 이동]
    • Part 30: ASM 해킹 3 [메모리와 레지스터 간 데이터 이동]
    • Part 31: ASM 프로그램 4 [레지스터와 메모리 간 데이터 이동]
    • Part 32: ASM 디버깅 4 [레지스터와 메모리 간 데이터 이동]
    • Part 33: ASM 해킹 4 [레지스터와 메모리 간 데이터 이동]
    • Part 34: ASM 프로그램 5 [레지스터를 통한 간접 주소 지정]
    • Part 35: ASM 디버깅 5 [레지스터를 통한 간접 주소 지정]
    • Part 36: ASM 해킹 5 [레지스터를 통한 간접 주소 지정]
    • Part 37: ASM 프로그램 6 [CMOV 명령어]
    • Part 38: ASM 디버깅 6 [CMOV 명령어]
    • Part 39: ASM 해킹 6 [CMOV 명령어]
    • Part 40: 결론
  • ARM-32 강좌 1

    • Part 1: 삶의 의미
    • Part 2: 숫자 시스템
    • Part 3: 이진수 덧셈
    • Part 4: 이진수 뺄셈
    • Part 5: 워드 길이
    • Part 6: 레지스터
    • Part 7: 프로그램 카운터
    • Part 8: CPSR
    • Part 9: 링크 레지스터
    • Part 10: 스택 포인터
    • Part 11: ARM 펌웨어 부팅 절차
    • Part 12: 폰 노이만 아키텍처
    • Part 13: 명령 파이프라인
    • Part 14: ADD
    • Part 15: ADD 디버깅
    • Part 16: ADD 해킹
    • Part 17: ADDS
    • Part 18: ADDS 디버깅
    • Part 19: ADDS 해킹
    • Part 20: ADC
    • Part 21: ADC 디버깅
    • Part 22: ADC 해킹
    • Part 23: SUB
    • Part 24: SUB 디버깅
    • Part 25: SUB 해킹
  • ARM-32 강좌 2

    • Part 1: 삶의 의미 Part 2
    • Part 2: 숫자 시스템
    • Part 3: 이진수 덧셈
    • Part 4: 이진수 뺄셈
    • Part 5: 워드 길이
    • Part 6: 레지스터
    • Part 7: 프로그램 카운터
    • Part 8: CPSR
    • Part 9: 링크 레지스터
    • Part 10: 스택 포인터
    • Part 11: 펌웨어 부팅 절차
    • Part 12: 폰 노이만 아키텍처
    • Part 13: 명령 파이프라인
    • Part 14: 헬로 월드
    • Part 15: 헬로 월드 디버깅
    • Part 16: 헬로 월드 해킹
    • Part 17: 상수
    • Part 18: 상수 디버깅
    • Part 19: 상수 해킹
    • Part 20: 문자 변수
    • Part 21: 문자 변수 디버깅
    • Part 22: 문자 변수 해킹
    • Part 23: 불리언 변수
    • Part 24: 불리언 변수 디버깅
    • Part 25: 불리언 변수 해킹
    • Part 26: 정수 변수
    • Part 27: 정수 변수 디버깅
    • Part 28: 정수 변수 해킹
    • Part 29: 부동소수점 변수
    • Part 30: 부동소수점 변수 디버깅
    • Part 31: 부동소수점 변수 해킹
    • Part 32: 더블 변수
    • Part 33: 더블 변수 디버깅
    • Part 34: 더블 변수 해킹
    • Part 35: SizeOf 연산자
    • Part 36: SizeOf 연산자 디버깅
    • Part 37: SizeOf 연산자 해킹
    • Part 38: 전위 증가 연산자
    • Part 39: 전위 증가 연산자 디버깅
    • Part 40: 전위 증가 연산자 해킹
    • Part 41: 후위 증가 연산자
    • Part 42: 후위 증가 연산자 디버깅
    • Part 43: 후위 증가 연산자 해킹
    • Part 44: 전위 감소 연산자
    • Part 45: 전위 감소 연산자 디버깅
    • Part 46: 전위 감소 연산자 해킹
    • Part 47: 후위 감소 연산자
    • Part 48: 후위 감소 연산자 디버깅
    • Part 49: 후위 감소 연산자 해킹
  • x64 강좌

    • Part 1: 사이버 혁명
    • Part 2: 트랜지스터
    • Part 3: 논리 게이트
    • Part 4: 숫자 시스템
    • Part 5: 이진수 덧셈
    • Part 6: 이진수 뺄셈
    • Part 7: 워드 길이
    • Part 8: 일반 아키텍처
    • Part 9: 호출 규약
    • Part 10: 불리언 명령어
    • Part 11: 포인터
    • Part 12: 유효 주소 로드
    • Part 13: 데이터 세그먼트
    • Part 14: SHL 명령어
    • Part 15: SHR 명령어
    • Part 16: ROL 명령어
    • Part 17: ROR 명령어
    • Part 18: 부트 섹터 기본 [Part 1]
    • Part 19: 부트 섹터 기본 [Part 2]
    • Part 20: 부트 섹터 기본 [Part 3]
    • Part 21: 부트 섹터 기본 [Part 4]
    • Part 22: 부트 섹터 기본 [Part 5]
    • Part 23: 부트 섹터 기본 [Part 6]
    • Part 24: 부트 섹터 기본 [Part 7]
    • Part 25: 부트 섹터 기본 [Part 8]
    • Part 26: 부트 섹터 기본 [Part 9]
    • Part 27: x64 어셈블리 [Part 1]
    • Part 28: x64 어셈블리 [Part 2]
    • Part 29: x64 어셈블리 [Part 3]
    • Part 30: x64 어셈블리 [Part 4]
    • Part 31: x64 어셈블리 [Part 5]
    • Part 32: x64 어셈블리 [Part 6]
    • Part 33: x64 어셈블리 [Part 7]
    • Part 34: x64 C++ 1 코드 [Part 1]
    • Part 35: x64 C++ 2 디버그 [Part 2]
    • Part 36: x64 C++ 3 해킹 [Part 3]
    • Part 37: x64 C & 생명의 기원
    • Part 38: x64 네트워킹 기본
    • Part 39: 왜 C인가?
    • Part 40: 헬로 월드 해킹!
    • Part 41: 변수 해킹!
    • Part 42: 분기 해킹!
    • Part 43: 포인터 해킹!
  • ARM-64 강좌

    • Part 1: 삶의 의미
    • Part 2: 개발 환경 설정
    • Part 3: "헬로 월드"
    • Part 4: "헬로 월드" 디버깅
    • Part 5: "헬로 월드" 해킹
    • Part 6: 기본 I/O
    • Part 7: 기본 I/O 디버깅
    • Part 8: 기본 I/O 해킹
    • Part 9: 문자 원시 데이터 타입
    • Part 10: 문자 원시 데이터 타입 디버깅
    • Part 11: 문자 원시 데이터 타입 해킹
    • Part 12: 불리언 원시 데이터 타입
    • Part 13: 불리언 원시 데이터 타입 디버깅
    • Part 14: 불리언 원시 데이터 타입 해킹
    • Part 15: 부동소수점 원시 데이터 타입
    • Part 16: 부동소수점 원시 데이터 타입 디버깅
    • Part 17: 부동소수점 원시 데이터 타입 해킹
    • Part 18: 더블 원시 데이터 타입
    • Part 19: 더블 원시 데이터 타입 디버깅
    • Part 20: 더블 원시 데이터 타입 해킹
  • Pico 해킹 강좌

    • Part 1: 이유와 방법
    • Part 2: 헬로 월드
    • Part 3: 헬로 월드 디버깅
    • Part 4: 헬로 월드 해킹
    • Part 5: char
    • Part 6: char 디버깅
    • Part 7: char 해킹
    • Part 8: int
    • Part 9: int 디버깅
    • Part 10: int 해킹
    • Part 11: float
    • Part 12: float 디버깅
    • Part 13: float 해킹
    • Part 14: double
    • Part 15: double 디버깅
    • Part 16: double 해킹
    • Part 17: "절대 권력은 절대적으로 부패한다!", 입력의 비극적 이야기
    • Part 18: "800년 동안 나는 제다이를 훈련했다!", 입력의 힘
    • Part 19: 입력
    • Part 20: 입력 디버깅
  • Reverse Engineering For Everyone!

    • 역공학이란 무엇인가?
      • Wikipedia에 따르면, 역공학은 인공 객체를 분해하여 설계, 아키텍처, 코드 등을 밝히거나 객체에서 지식을 추출하는 과정임. 이는 자연 현상을 연구하는 과학적 연구와 유사함.
      • 이 튜토리얼 세트는 역공학을 가능한 한 쉽게 만들기 위해 존재함.
      • 이 포괄적인 역공학 튜토리얼 세트는 x86, x64, 32비트 ARM 및 64비트 아키텍처를 다룸.
      • 초보자에게는 역공학의 기본 개념을 익히는 데 도움이 되며, 개념을 복습하려는 사람들에게도 유용함.
      • PDF 또는 MOBI 형식으로 전체 튜토리얼 세트를 다운로드할 수 있음.

GN⁺의 정리

  • 이 기사에서는 x86, x64, ARM-32, ARM-64 및 Pico 해킹 강좌를 포함한 다양한 역공학 튜토리얼을 다룸.
  • 초보자부터 중급 수준의 역공학 기술을 익히고자 하는 사람들에게 유용한 자료임.
  • 사이버 보안 분야에서 역공학 기술은 매우 중요함.
  • PDF 및 MOBI 형식으로 튜토리얼을 제공하여 접근성을 높임.
  • 유사한 기능을 가진 프로젝트로는 "Practical Reverse Engineering"과 "Reversing: Secrets of Reverse Engineering"이 있음.