ROV(Return-Oriented Vulnerability)은 **Return-Oriented Programming (ROP)**과 밀접한 관계가 있습니다. **ROP(리턴 지향 프로그래밍)**는 메모리의 기존 코드 조각을 악용하여 임의의 동작을 수행하게 만드는 익스플로잇 기술로, 특히 DEP(Data Execution Prevention) 같은 방어 기법을 우회하는 데 사용됩니다.ROP(Return-Oriented Programming) 개념:기존 코드 조각 재사용: ROP는 공격자가 시스템 메모리에 있는 기존 코드 조각들을 재사용하여 악성 동작을 수행합니다. 이때 코드 조각은 작은 부분, 즉 **가젯(gadget)**이라고 부르는 기계어 명령의 모음입니다. 각 가젯은 RET(return) 명령으로 ..
ASLR(Address Space Layout Randomization)은 시스템 보안을 강화하기 위한 기법 중 하나로, 프로세스가 메모리에 로드되는 주소를 무작위로 배치하여 공격자가 특정 메모리 주소를 예측하기 어렵게 만드는 기술입니다. 주로 메모리 기반 공격, 특히 버퍼 오버플로우 공격으로부터 시스템을 보호하는 데 사용됩니다.ASLR의 주요 개념:메모리 주소 무작위화: ASLR은 실행 중인 프로세스가 사용하는 메모리 공간(예: 실행 파일, 라이브러리, 스택, 힙 등)의 위치를 매번 무작위로 배치합니다. 이를 통해 공격자가 미리 특정 메모리 주소를 파악하고 악성 코드를 주입하는 것을 방지할 수 있습니다.재배치되는 요소:프로그램 코드: 실행 파일의 코드가 메모리 내에서 예측 불가능한 위치에 로드됩니다.동..
Windows DEP(Data Execution Prevention)는 시스템 메모리의 특정 영역에서 코드가 실행되지 않도록 방지하는 보안 기능입니다. DEP는 주로 메모리에서 발생할 수 있는 악성 코드의 실행을 차단하여 시스템의 보안성을 강화하는 역할을 합니다.DEP의 주요 개념:실행 방지 메모리 영역: DEP는 시스템 메모리의 일부를 "실행 불가"로 표시합니다. 즉, 그 메모리 영역에서는 데이터만 저장할 수 있으며, 코드를 실행할 수 없습니다. 이러한 메모리 보호는 주로 버퍼 오버플로우 공격과 같은 악성 코드 실행을 방지합니다.하드웨어 기반 DEP: 하드웨어 기반 DEP는 CPU의 기능을 사용하여 메모리 영역을 보호합니다. 하드웨어에서 제공하는 NX(Non-Executable) 비트 또는 XD(eXe..
임계영역 설정 방법 및 C++ 예제 1. 임계영역(Critical Section)이란? 임계영역(Critical Section)은 멀티스레드 프로그램에서 공유 자원에 대한 접근을 제어하기 위해 사용되는 코드 블록입니다. 여러 스레드가 동시에 임계영역에 접근하게 되면 데이터가 손상되거나 일관성이 깨질 수 있기 때문에, 한 번에 하나의 스레드만 임계영역에 접근할 수 있도록 동기화 메커니즘을 적용합니다. 2. 임계영역 보호 기법의 종류 뮤텍스(Mutex): 상호 배제를 통해 한 번에 하나의 스레드만 자원에 접근할 수 있게 합니다. 스핀락(Spinlock): 스레드가 잠금을 얻기 위해 계속 루프를 돌며 대기하는 방식입니다. 세마포어(Semaphore)..

문서 끝문자 형식 문제 해결: "LF" vs "CRLF"리눅스 및 유닉스 환경과의 호환성을 위해 소스 코드는 LF(Line Feed) 형식을 사용하여 관리해야 합니다.Git 설정 추가모든 파일의 끝문자 형식을 일관되게 관리하기 위해 다음과 같은 Git 설정을 추가합니다.git config --global core.autocrlf true이 설정의 동작 방식은 다음과 같습니다:체크아웃(Checkout):리포지토리에서 파일을 체크아웃할 때, 줄 끝 문자가 LF인 파일을 CRLF로 변환합니다. 이는 Windows 환경에서 작업할 때 편리합니다.커밋(Commit):파일을 커밋할 때, CRLF 줄 끝 문자가 포함된 파일을 LF로 변환하여 리포지토리에 저장합니다. 이는 리눅스 및 유닉스 환경과의 호환성을 보장합니다..

warning C4819: 현재 코드 페이지(949)에서 표시할 수 없는 문자가 파일에 들어 있습니다. 데이터가 손실되지 않게 하려면 해당 파일을 유니코드 형식으로 저장하십시오."경고 C4819: 현재 코드 페이지(949)에서 표시할 수 없는 문자가 파일에 들어 있습니다. 데이터가 손실되지 않게 하려면 해당 파일을 유니코드 형식으로 저장하십시오."라는 메시지는 소스 코드 파일에 현재 코드 페이지에서 지원되지 않는 문자가 포함되어 있을 때 발생합니다. 이 문제를 해결하려면 해당 파일을 유니코드 형식으로 저장해야 합니다. 다음은 이 문제를 해결하기 위한 단계입니다:파일을 유니코드 형식으로 저장하기Visual Studio에서 파일 열기경고가 발생한 파일을 Visual Studio에서 엽니다.다른 이름으로 저장..
- Total
- Today
- Yesterday
- C
- C# 고급 기술
- 패턴
- Thread
- C#
- 블루버블다이브팀
- 스쿠버다이빙
- 제주도
- PowerShell
- 울릉도
- Build
- 성산블루버블
- 블루버블
- 현포다이브
- ip
- 서귀포블루버블
- OpenSource
- 서귀포
- Windows
- 블루버블다이빙팀
- Linux
- 윈도우
- 암호화
- C++
- CMake
- DLL
- C#.NET
- 리눅스
- 스쿠버 다이빙
- 외돌개
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |