본문 바로가기

ETC & TIP/정보보호학 전공학습

[시스템보안개론] 계획 및 학습과정

1. 강의개요

학습 과정명 : 시스템보안개론

 

2. 교과목 학습목표

시스템 해킹과 보안의 기본이 되는 운영체제 기본 구조를 이해하고 운영체제를 효율적으로 관리하기 위한

메모리에 대한 이해, 어셈블리어 등을 배우고 대표적인 운영체제인 윈도우와 유닉스/리눅스 운영체제의 구조와 명령어 및 보안 설정 등을 적용함으로써 시스템 내부 결함으로부터 보안을 지킬 수 있는 기술을 설명 할 수 있다.

어셈블리어와 메모리구조에 대한 내용과 제어를 위한 프로그래밍 코딩 연계 실습을 위한 다양한 예제를 학습하고 이해하여 실전에 필요한 보안 대책 및 관련 기술 등을 학습하고 설명 할 수 있다. 시스템에서 서비스 제공을 위한 프로그램 개발과 관련한 보안 이슈와 시스템 운영에 관련한 보안 설정 등에 대해 설명할 수 있다. 보안 도구를 통해서 보안이 중요한 게임프로그램, 백신개발, 시스템 안정화 등의 작업을 실행할 수 있다.

보안 문제가 발생할 경우 시스템을 백업하고 문제점을 추적하여 2차적으로 발생할 수 있는 보안 이슈에 대비할 수 있는 능력을 함양한다.

 

3. 학습 교재 및 참고문헌

정보보안개론과 실습 : 시스템 해킹과 보안 (한빛미디어)

문제풀이로 배우는 시스템 해킹 테크닉 : 해커스쿨 FTZ를 활용한 단계별 해킹 수련법 (위키북스)

 

목표.

운영체제의 개념과 기능에 대해서 설명할 수 있다.

 

운영체제의 인증과 비밀번호 관리에 대해서 설명할 수 있다.

 

레이스 컨디션 공격, 스택 버퍼 오버플로우 공격, 힙 버퍼 오버플로우 공격 방법 과 방어 방법에 대해서

설명할 수 있다.

 

포맷 스트링 공격 방법과 방어 방법, 백도어의 개념 및 특징에 대해서 설명 할 수 있다.

 

강의 계획서

 

운영체제에 대한 이해

  운영체제의 개념과 기능

- 컴퓨터 시스템에 대해 알아본다.
- 운영체제에 대해 알아본다.

- 운영체제의 기능에 대해 알아본다.
- 운영체제의 종류와 특징에 대해 알아본다.
 
학습목표

- 운영체제의 개념 및 기능을 설명할 수 있다.
 
2 윈도우에 대한 이해

- 윈도우의 역사에 대해 알아본다.
- 윈도우의 구조에 대해 알아본다.
- 윈도우의 부팅순서에 대해 알아본다.
 
학습목표 - 윈도우의 구조 및 부팅 순서에 대해 설명할 수 있다.
 
3 리눅스/유닉스에 대한 이해 - 유닉스/리눅스의 역사에 대해 알아본다.
- 유닉스/리눅스의 구조에 대해 알아본다.
- 유닉스/리눅스의 부팅순서에 대해 알아본다.
 
학습목표 - 유닉스/리눅스의 구조 및 부팅 순서에 대해 설명할 수 있다.
 
2 80x86 시스템에 대한 이해 1
80x86 시스템 CPU, 레지스터, 메모리 - 80x86 시스템 CPU의 구조에 대해 알아본다.
- 레지스터의 종류에 대해 알아본다.
- 80x86 시스템의 메모리에 대해 알아본다.
 
학습목표 - 80x86 시스템에 대해 알고, 80x86 시스템 CPU의 구조와 메모리에 대해 설명할 수 있다.
 
2 어셈블리어 기본 문법 - 어셈블리어에 대해 알아본다.
- 어셈블리어의 구조에 대해 알아본다.
- 어셈블리어의 데이터 타입과 리틀 엔디언 방식에 대해 알아본다.
- 어셈블리어의 주소 지정방식에 대해 알아본다.
 
학습목표 - 어셈블리어 데이터 타입과 저장방식,기본 명령에 대해 설명할 수 있다.
 
3 어셈블리어 기본 명령,스택을 통한 명령 처리 과정 - 어셈블리어의 기본 명령에 대해 알아본다.
 
학습목표 - 스택 동작 이해, 셸 코드 생성에 대해 설명할 수 있다.
 
3 계정과 권한 1
리눅스/유닉스의 계정과 권한 - 리눅스/유닉스 계정 체계에 대해 알아본다.
- 리눅스/유닉스 파일 접근 권한 변경에 대해 알아본다.
 
학습목표 - 리눅스/유닉스 계정 및 권한에 대해 설명할 수 있다.
 
2 리눅스/유닉스의 권한 상승 - 리눅스/유닉스 SetUID에 대해 알아본다.
- SetUID를 이용한 해킹 기법에 대해 알아본다.
 
학습목표 - 리눅스/유닉스 SetUID에 대해 설명할 수 있다.
 
3 윈도우의 계정과 권한 상승 - 윈도우의 계정과 권한 체계에 대해 알아본다.
- 윈도우의 권한 상승에 대해 알아본다.
- SYSTEM 권한 획득에 대해 알아본다.
 
학습목표 - 윈도우 계정 및 권한에 대해 알고, 권한상승과 획득에 대해 설명할 수 있다.
 
4 패스워드 크래킹 1
패스워드 크래킹에 대한 이해 - 패스워드 관리에 대해 알아본다.
- 해시와 암호화에 대해 알아본다.
- Salt에 대해 알아본다.
- 패스워드 크래킹 방법에 대해 알아본다.
 
학습목표 - 패스워드 크래킹에 대해 설명할 수 있다.
 
2
윈도우 인증과 패스워드 - 윈도우 인증의 구성 요소에 대해 알아본다.
- 로컬 인증과 도메인 인증에 대해 알아본다.
- 인증 구조에 대해 알아본다.
- 자격 증명에 대해 알아본다.
 
학습목표 - 윈도우 인증 및 패스워드 관리에 대해 설명할 수 있다.
 
3
리눅스/유닉스 인증과 패스워드 - 리눅스/유닉스 인증에 대해 알아본다.
- 리눅스 패스워드 크래킹에 대해 알아본다.
- 리눅스 패스워드 복구에 대해 알아본다.
 
학습목표 - 리눅스/유닉스 인증 및 패스워드 관리에 대해 설명할 수 있다.
 
5 리버스 엔지니어링 1
리버스 엔지니어링 이해 - 리버스 엔지니어링에 대해 알아본다.
- PE 파일에 대해 알아본다.
 
학습목표 - 리버스 엔지니어링에 대해 설명할 수 있다.
 
2
리버스 엔지니어링 툴 - 리버스 엔지니어링 툴에 대해 알아본다.
- 리버스 엔지니어링을 위한 함수에 대해 알아본다.
- 함수의 로직 확인에 대해 알아본다.
- 프로그램의 변수 값 변경 후 디버깅에 대해 알아본다.
- 값 찾기에 대해 알아본다.
- 스택 창 기능에 대해 알아본다.
 
학습목표 - 리버스 엔지니어링 툴에 대해 알고, 리버스 엔지니어링을 위한 함수찾기에 대해 설명할 수 있다.
 
3
리버스 엔지니어링 공격 - 바이너리 파일 수정을 통한 리버스 엔지니어링 공격에 대해 알아본다.
- 프로그램의 검증 로직을 우회하는 공격에 대해 알아본다.
 
학습목표 - 리버스 엔지니어링 공격에 대한 개념을 알고, 바이너리 파일 수정을 통한 리버스 엔지니어링 공격과 프로그램의 검증 로직을 우회하는 공격에 대해 설명할 수 있다.
 
6 레이스 컨디션 1
레이스 컨디션 공격에 대한 이해 - 레이스 컨디션 공격의 기본 아이디어에 대해 알아본다.
- 파일 링크에 대해 알아본다.
- 심볼릭 링크 기능에 대해 알아본다.
 
학습목표 - 레이스 컨디션 공격 및 파일 링크에 대해 설명할 수 있다.
 
2
레이스 컨디션 공격 - 심볼릭 링크와 레이스 컨디션 공격에 대해 알아본다.
- 레이스 컨디션 공격 수행에 대해 알아본다.
- 레이스 컨디션 공격의 다른 경우에 대해 알아본다.
 
학습목표 - 심볼릭 링크와 레이스 컨디션 공격에 대해 설명할 수 있다.
 
3
레이스 컨디션 공격에 대한 대응책 - 레이스 컨디션 공격 사례에 대해 알아본다.
- 레이스 컨디션 공격 대응책에 대해 알아본다.
- 레이스 컨디션 공격 대응을 위한 프로그램 로직에 대해 알아본다.
 
학습목표 - 레이스 컨디션 공격의 다양한 사례들을 학습하고, 수행 및 대응책에 대해 설명할 수 있다.
 
7 버퍼 오버플로우 1
스택 버퍼 오버플로우 공격 - 스택 버퍼 오버플로우에 대해 알아본다.
- gdb 분석을 통한 스택 버퍼 오버플로우에 대해 알아본다.
- 스택 버퍼 오버플로우 수행에 대해 알아본다.
 
학습목표 - 스택 버퍼 오버플로우 공격 개념 및 수행에 대해 설명할 수 있다.
 
2
힙 버퍼 오버플로우 공격 - 힙 버퍼 오버플로우에 대해 알아본다.
- gdb 분석을 통한 힙 버퍼 오버플로우에 대해 알아본다.
- 힙 버퍼 오버플로우 수행에 대해 알아본다.
 
학습목표 - 힙 버퍼 오버플로우 공격 개념 및 수행에 대해 설명할 수 있다.
 
3
버퍼 오버플로우에 대한 대책과 발전된 공격 - 버퍼 오버플로우에 대한 대책에 대해 알아본다.
- rtl 공격에 대해 알아본다.
- rtl 공격 수행에 대해 알아본다.
- canary 동작 확인에 대해 알아본다.
 
학습목표 - 버퍼 오버플로우 공격 및 방어 매커니즘에 대해 설명할 수 있다.
 
8 중간고사
9 포맷 스트링 1
스택 버퍼 오버플로우 공격 원리 - 포맷 스트링 공격에 대해 알아본다.
- 포맷 스트링 공격 원리에 대해 알아본다.
 
학습목표 - 포맷스트링의 공격과 공격원리에 대해 학습하고, 취약점에 대해 설명할 수 있다.
 
2
포맷 스트링 공격 수행 - 포맷 스트링 공격 수행 (1)
- 포맷 스트링 공격 수행 (2)
 
학습목표 - 맷스트링 문자열을 이용한 공격에 대해 설명할 수 있다.
 
3
버퍼 오버플로우와 포맷 스트링 공격 - 포맷 스트링 공격 수행에 대해 알아본다.
- 포맷 스트링 공격에 대한 대응책에 대해 알아본다.
 
학습목표 - 포맷스트링 공격 수행 및 대응책에 대해 설명할 수 있다.
 
10 백도어 1
백도어에 대한 이해 - 백도어 개념에 대해 알아본다.
- 백도어 설치 및 이용에 대해 알아본다.
 
학습목표 - 백도어 개념 및 종류에 대해 구별하여 설명할 수 있다.
 
2
백도어 설치 및 탐지 - 윈도우 백도어 설치 및 이용에 대해 알아본다.
- 리눅스/유닉스 백도어에 대해 알아본다.
- 리눅스/유닉스 백도어 설치 및 이용에 대해 알아본다.
- 백도어 탐지와 대응책에 대해 알아본다.
 
학습목표 - 윈도우 백도어 툴 사용 및 대응책에 대해 모색할 수 있다.
 
3
백도어 제거 - 윈도우 백도어 제거에 대해 알아본다.
- 리눅스 백도어 제거에 대해 알아본다.
 
학습목표 - 리눅스 백도어 설치 및 대응책에 대해 모색할 수 있다.
 
11 윈도우 시스템 보안 설정 1
계정 정책, 로컬 정책 - 계정 정책에 대해 알아본다.
- 로컬 정책에 대해 알아본다.
 
학습목표 - 윈도우 계정 관리에 대해 설명할 수 있다.
 
2
데몬 관리 - 데몬 관리에 대해 알아본다.
- 윈도우 FTP 서비스 보안 설정에 대해 알아본다.
 
학습목표 - 윈도우 네트워크 서비스 관리에 대해 설명할 수 있다.
 
3
터미널 서비스 보안 설정, 접근제어, 파일과 디렉터리 관리, 패치 - 터미널 서비스 보안 설정에 대해 알아본다.
- 접근제어에 대해 알아본다.
- 윈도우 방화벽 규칙 적용에 대해 알아본다.
- 파일과 디렉터리 관리에 대해 알아본다.
- 파일과 디렉터리 권한 설정에 대해 알아본다.
- 패치에 대해 알아본다.
 
학습목표 - 윈도우 네트워크 및 파일 시스템 제어방법에 대해 설명할 수 있다.
 
12 유닉스 시스템 보안 설정 1
계정 관리와 서비스 관리 - 계정 관리에 대해 알아본다.
- 유닉스 관리자 계정 생성에 대해 알아본다.
- 서비스 관리(1)
- FTP Anonymous 접속 설정에 대해 알아본다.
 
학습목표 - 유닉스 계정 관리에 대해 학습하고, 관리자 계정생성 방법과, FTP Anonymous 접속 설정 방법에 대해 설명할 수 있다.
 
2
서비스 관리 - 서비스 관리(2)
- 기타 서비스 관리에 대해 알아본다.
- SSH 접속에 대해 알아본다.
 
학습목표 - 유닉스 서비스 관리에 대해 설명할 수 있다.
 
3
접근 제어, 파일 및 디렉터리 관리 - XDMCP 접근 제어에 대해 알아본다.
- TCP Wrapper를 이용한 접근 제어에 대해 알아본다.
- 파일과 디렉터리 관리에 대해 알아본다.
- 유닉스 시스템 패치에 대해 알아본다.
 
학습목표 - 유닉스 접근 제어 및 파일 시스템 관리에 대해 설명할 수 있다.
 
13 시스템 로그 분석 1
시스템 로그 이해, 윈도우 로그 분석 및 설정 - 로그에 대해 알아본다.
- 윈도우의 로그 분석과 설정에 대해 알아본다.
 
학습목표 - 윈도우 로그의 중요성과 역할을 설명할 수 있다.
 
2
유닉스/리눅스 로그 관리 - 유닉스/리눅스의 로그 분석과 설정에 대해 알아본다.
- FTP 파일 전송 로그에 대해 알아본다.
 
학습목표 - 윈도우와 유닉스 로그 분석 차이점에 대해 구별할 수 있다.
 
3
윈도우 로그 관리, 유닉스/리눅스 로그 설정 - 윈도우 로그 관리에 대해 알아본다.
- 적절한 로깅 환경 설정에 대해 알아본다.
- BSM 툴 설치 및 이용에 대해 알아본다.
 
학습목표 - 유닉스 시스템 로그 분석 및 설정에 대해 설명할 수 있다.
 
14 흔적 제거와 침입 추적 1
침입 사고 발생시 대응 절차, 윈도우 흔적 제거, 윈도우 메모리 덤프 - 침입 사고 발생시 대응 절차에 대해 알아본다.
- 윈도우의 흔적 제거에 대해 알아본다.
- 윈도우의 침입 추적에 대해 알아본다.
- 윈도우 메모리 덤프에 대해 알아본다.
 
학습목표 - 시스템 침입 사고 대응 및 흔적 관리 기법에 대해 설명할 수 있다.
 
2
윈도우 시스템 이미지 획득, 삭제 파일 복구 - 시스템 이미지 획득에 대해 알아본다.
- 삭제 파일 복구에 대해 알아본다.
- 리눅스 시스템 로그 삭제에 대해 알아본다.
 
학습목표 - 윈도우 침입 대응 기법에 대해 설명할 수 있다.
 
3
리눅스/유닉스 침입 대응 - 리눅스/유닉스의 침입 분석에 대해 알아본다.
- 리눅스 시스템 메모리 덤프에 대해 알아본다.
- 리눅스 시스템 이미지 획득에 대해 알아본다.
 
학습목표 - 리눅스/유닉스 침입 대응 기법에 대해 설명할 수 있다.