IT 학습 공부 기록

[시스템 보안] 각종 시스템 보안위협 및 대응책

열심히하는 시큐개발이 2026. 1. 18. 19:32
반응형

안녕하세요 시큐 개발이 입니다 오늘 배운 내용 정리하겠습니다.

 

📝 오늘 공부한 내용 최종 요점 정리
① 메모리 구조 & 버퍼 오버플로우
• 스택(Stack): 높은 주소 → 낮은 주소로 자란다. (지역변수, RET 저장)
• 힙(Heap): 낮은 주소 → 높은 주소로 자란다. (동적 할당)
• 원리: 입력값 길이 검사를 안 하는 함수(strcpy, gets, scanf)를 이용해 RET를 쉘코드 주소로 덮어씀


② 방어 기술 4대장 (매칭 문제 대비)
1. Stack Guard: 카나리아(Canary) 값 검사.
2. Stack Shield: RET를 다른 곳(Global RET)에 **복사(Copy)**해 둠
3. ASLR: 주소 랜덤화. (뚫는 법: NOP Sled)
4. NX Bit (Non-Exec): 스택에서 실행 권한 제거. (뚫는 법: RTL 공격 - 공유 라이브러리 함수 사용)


③ 포맷 스트링 공격
• 원인: printf(buf) 처럼 서식 문자 없이 사용 시 발생
• 증상: **%x**로 메모리 훔쳐보기(Read), **%n**으로 메모리 조작하기(Write)
• 대책: printf("%s", buf) 처럼 서식 문자를 명시할 것


④ 레이스 컨디션 & 루트킷
• 레이스 컨디션: 검사(Check)와 사용(Use) 사이의 틈(TOCTOU)을 노림. 심볼릭 링크 악용
• 루트킷: 은폐성이 핵심. 시스템 파일(ls, netstat)을 변조해서 관리자 눈을 속임

반응형