드림핵
-
[드림핵] Return Address Overwrite드림핵 2025. 4. 30. 23:57
https://dreamhack.io/wargame/challenges/351 StackStack Frame Stack Overflow Buffer OverflowReturn Address Overwrite Write-Up Stack후입선출(LIFO, Last-In First-Out)의 자료구조저장 Push, 삭제(인출) PopBP(Base Pointer Register) : 스택 메모리의 시작 주소를 저장SP(Stack Pointer Resister) : 스택 메모리의 끝 주소를 저장스택 메모리 할당 → SP값 빼기스택 메모리 정리 → SP값 더하기 Stack Frame 함수가 호출되면 사용하는 스택 영역 (반환 주소, 지역 변수, 매개변수가 저장) 함수의 호출과 함께 할당(기본적으로 1MB), 함..
-
x86 Assembly드림핵 2025. 3. 10. 09:27
명령어(Operation Code, Opcode)와 피연산자(Operand)로 구성명령어데이터 이동(Data Transfer)mov, lea산술 연산(Arithmetic)inc, dec, add, sub논리 연산(Logical)and, or, xor, not비교(Comparison)cmp, test분기(Branch)jmp, je, jg스택(Stack)push, pop프로시져(Procedure)call, ret, leave시스템 콜(System call)syscall피연산자상수(Immediate Value)레지스터(Register)메모리(Memory)[메모리주소]앞에 크기 지정자(Size Directive) TYPE PTR이 추가 가능타입에는 BYTE, WORD, DWORD, QWORD각각 1바이트, 2바..
-
리눅스 메모리 구조 (Memory Layout)드림핵 2025. 3. 10. 09:27
프로세스 가상메모리의 각 구역이 어떤 정보가 저장되어있는가?세그먼트 (Segment)적재되는 데이터의 용도별로 메모리의 구획 분리코드 세그먼트, 데이터 세그먼트, BSS 세그먼트, 힙 세그먼트, 스택 세그먼트로 구분코드 세그먼트 (Code Segment)기계 코드가 위치텍스트 세그먼트 (Text Segment)읽기 권한, 실행 권한 부여 악의적 코드 삽입 방지를 위해, 쓰기 권한 제한데이터 세그먼트 (Data Segment)컴파일 시점에 값이 정해진 전역 변수, 전역 상수읽기 권한 부여실행되면서 값이 변경 가능한 데이터들이 위치 -> data 세그먼트 (쓰기 가능)실행되면서 값이 변경 불가능한 데이터들이 위치 -> rodata(read-only data) 세그먼트포인터로 선언한 문자열 변수에서 문자열은 ..
-
컴퓨터 구조 (Computer Architecture)드림핵 2025. 3. 10. 09:26
컴퓨터의 효율적 작동을 위한, 구성 방법과 구성 요소들 간의 상호작용 설계컴퓨터의 기능 구조에 대한 설계명령어 집합구조마이크로 아키텍처기타 하드웨어 및 컴퓨팅 방법에 대한 설계 등기능 구조 설계연산을 효율적으로 하기 위한 기능들을 설계폰 노이만 구조, 하버드 구조, 수정된 하버드 구조폰 노이만 구조핵심 기능 : 연산, 제어, 저장연산과 제어 - 중앙처리장치(Central Processing Unit, CPU)저장 - 기억장치(memory)데이터 교환 - 전자 통로인 버스(bus)중앙처리장치 (Central Processing Unit, CPU)연산 처리,시스템 관리구성산술논리장치(Arithmetic Logic Unit, ALU) : 산술/논리 연산을 처리제어장치(Control Unit) : CPU를 제어..
-
-
Dream Beginners드림핵 2025. 2. 23. 23:38
해킹 : 타인의 컴퓨터 시스템에 무단으로 침입해서 정보 또는 권한을 탈취하거나, 시스템을 파괴하는 것컴퓨터 시스템에서 취약한 부분을 찾아내는 단계이를 공격하는 단계어떤 대상에서 취약점을 찾아낼 것인지에 따라 분리웹 해킹 (Web Hacking)웹을 대상으로 하는 해킹 및 관련 기술웹 서버와 클라이언트에서 발생하는 각종 취약점들과 이를 공격하는 기법웹 상에서 본래의 의도와 다른 동작을 일으키거나 데이터를 도용, 변조, 시스템을 손상시키는 등의 악의적인 행위시스템 해킹 (System Hacking)포너블, 소프트웨어 해킹소프트웨어의 취약점을 찾아서 이를 공격하는 해킹 분야컴퓨터 프로그램의 행위를 조작하여 공격자가 원하는 행동을 실행하도록 하는 공격 전반프로그램이 시스템 상에서 작동하는 방식프로그램을 분석하는..