Fascination
article thumbnail
[Dreamhack] Return Address Overwrite
War Game & CTF/Dreamhack 2022. 9. 1. 17:21

Return Address Overwrite Exploit Tech: Return Address Overwrite에서 실습하는 문제입니다. # 문제 분석 - Return Address Overwrite 오버플로우 발생 시 반환 주소(Return Address)를 조작하여 실행흐름을 바꾸는 기법 - checksec - 함수 목록 get_shell 함수를 이용하면 쉘을 획득할 수 있을 것임 - main 함수 scanf는 길이 검증을 하지 않기 때문에 buffer의 크기를 넘어 스택 영역을 덮어 쓸 수 있을 것임 %s는 문자열을 입력받을 때 사용하는 것으로, 입력의 길이를 제한하지 않으며, 공백인 문자로 띄어쓰기, 탭, 개행 문자 등이 들어올 때까지 계속 입력을 받는다는 특징이 있음 정확히 n개의 문자만 입력..

article thumbnail
[DS] Array (배열) & Multi-Dimensional Array (다차원 배열)
Study/Data Structure 2021. 8. 25. 23:14

# 배열 - 자료형이 동일한 원소(element)들의 유한 집합 - 연속적인 메모리상에서 표현되며 각 원소의 값은 고유의 인덱스(index)를 사용하여 접근 - 선형의 1차원 배열, 표 형식의 2차원 배열, 6면체 형태의 3차원 배열이 있음 - 2차원 이상의 배열은 다차원 배열(multi-dimensional array)라고 부름 - 배열의 인덱스는 0부터 1씩 증가하며, 2차원 배열은 (행, 열) 순서쌍으로 인덱스를 표현 - 배열은 선언된 이후에 배열의 크기(원소의 수)를 변경할 수 없기 때문에 필요한 원소의 수를 잘 예측해야 공간 부족 또는 메모리 낭비를 예방할 수 있음 > 1차원 배열: 8개의 원소로 구성되는 배열 > 2차원 배열: 8행 5열로 구성되는 배열 > 3차원 배열: 6행 6열이며 폭의 길..