본문 바로가기
자격증/보안기사

01_시스템 보안 정리_3

by Choraengyi 2021. 1. 22.
728x90

윈도우 시스템

           plug&play : 다양한 하드웨어를 자동으로 인식하여 사용

           윈도우의 HAL(Hardware Abstraction Layer) 계층이 하드웨어 인식

           Micro kernel

 

- 메모리 확인 명령어 systeminfo | findstr “메모리”

          

- FAT → NTFS 변환, CONVERT C: /FS:NTFS

 

- 윈도우 인증 시스템, GINA, msgina.dll → 검증을 위해 아이디를 LSA에 전달

       

- 인증 프로세스 구성 요소

           * winlogon : 윈도우 로그인 프로세스

           * GINA(msgina.dll) : 사용자가 입력한 계정과 암호를 LSA 에 전달

           * LSA(lsas.exe) : 계정과 암호 검증을 위해 NTLM(암호화) 모듈 로딩하고 검증

                      SRM 이 작성한 감사로그 기록

           * SAM : 사용자 계정정보(해시값)에 저장, 리눅스의 /etc/shadow 역할

           * SRM : 사용자에게 고유 SID 부여 및 SID 에 권한 부여

 

- 윈도우 실행 프로세스 : C:\windows\system32 

           * wininit.exe : 윈도우 시작 프로그램

           * services.exe : 윈도우 서비스 관리

           * lsm.exe : Local Session Manager, 시스템 관리 작업, 주요함수 실행, 컴퓨터와 서버의 연결 관리

           * lsass.exe : Local Security Authority Subsystem Service, 로그인 검사, 비밀번호 변경 관리, 엑세스 토큰 생성, Windows Security Log 작성

           * svchost.exe : 서비스를 관리하기 위한 프로세스

           * conhost.exe : 키보드, 마우스 입력 허용, 문자 출력, 콘솔 API 등의 셸 기본 기능 수행

 

- 윈도우 실행 파일 PE(Portable Execute) 구조

           윈도우 실행파일(*.exe) 의 포맷을 의미

           .text : 코드 저장

           .data : 문자열 및 전역 변수

           .Idata : import된 함수

           .edata : export된 함수

           .rsrc : 이미지 아이콘 같은 자원 정보

 

- 윈도우 사용자 계정

           Users : 기본권한, Domain Users 글로벌 그룹이 구성원

           Account Operators : 사용자 계정, 그룹 생성 및 삭제, 수정할 수 있는 권한

           Printer Operators : 도메인 컨트롤러에 있는 프린터 생성 및 관리

           Server Operators : 도메인 컨트롤러에 있는 자원을 공유 또는 폴더를 백업하고 복구

 

- 유니버셜 그룹 계정

           administrator : 모든 권한과 사용 권한

           users : 기본적인 권한 갖지 않음, 컴퓨터에 생성되는 로컬 사용자 계정 포함

           guest : 관리자에 의해 허락된 자원과 권한만을 사용

           Backup Operators : Windows 백업을 이용해 모든 도메인 컨트롤러에 있는 파일과 폴더를 백업 및 복구할 권한 있음

           Power Users : 시스템에 대한 전체 권한은 없지만 시스템을 관리할 수 있는 권한 부여

 

- NTFS 

           USN 저널, ADS, Sparse 파일, 파일 압축, VSS, EFS, Quotas, Unicode

           * ADS : MAC 파일 시스템 호환성, 다중 데이터 스트림

           * 파일 압축 : LZ77

           * VSS : 파일과 디렉터리 백업 유지하여 복구 지원

           * EFS : 대칭키 기법 암호화

           동적 Bad 클러스터 할당, 대용량 지원(2TB)

 

- 데이터 은닉 기술(ADS = Alternative Data Stream)

           echo ADS test > text.txt:hidden                      //문자열 은닉

           more < test.txt:hidden                      //숨겨진 문자열 확인

 

- NTFS 파일시스템 구조 

          

Volume Boot Record

Master File Table

Data Area

 

           * VBR : 제일 처음 위치, 부트섹터, 부트코드, NTLDR 위치 정보

           * MFT : NTFS 메타정보, 파일 및 디렉터리 등의 정보 관리, 파일위치, 속성, 시간 정보, 크기정보 가짐

 

- 공유폴더, net share 명령

           net share [공유폴더명] /delete → 공유폴더 삭제

           기본적 공유 내용 C$, ADMIN$, IPC$

           * IPC$ : 네트워크 프로그램 간 통신을 위해 파이프 사용, 네트워크 서버 원격 관리

           윈도우가 설치된 서버에 IPC$를 통한 원격접속을 할 때 패스워드를 Null로 설정하여 접속할 수 있는 취약점 공격자가 시스템의 유저명, 공유정보 등을 열람할 수도 있고 일부 레지스트리에 접근할 수 있으며 DoS공격에도 활용 될 수 있음

           공격 가능 여부 확인

           net use \\IP주소\IPC$ * /u:

 

- 레지스트리 : 운영체제 및 응용프로그램 등에 필요한 정보 저장, 관리하기 위한 계층형 데이터베이스

           구성 : Key, Value, Data Type, Data

           * 루트키 : 가장 상위레벨에 있는 레지스트리 키

           - HKEY_CLASSES_ROOT : 확장자 정보, 파일과 프로그램 간 연결 정보

           - HKEY_LOCAL_MACHINE : 설치된 하드웨어, 소프트웨어 설치 드라이버 설정 정보

           - HKEY_USERS : 사용자에 대한 정보

           - HKEY_CURRENT_CONFIG : 디스플레이, 프린트 설정에 관한 정보

          

           * 하이브(Hive) 파일 : 레지스트리 정보를 가진 물리적 파일

                      C:\Windows\System32\config

                      regidit.exe 파일은 하이브 파일을 읽어서 보여주거나 변경

                      하이브 셋(Hive Set) 하이브 파일의 목록

                      * 구성

                      SYSTEM : 부팅에 필요한 전역 구성 정보, SOFTWARE : 소프트웨어 정보

                      SECURITY : 보안정책, 권한 할당 정보, SAM : 로컬 계정 정보, 그룹 정보

                      HARDWARE : 하드웨어 장치, 드라이버 매핑 정보

                      COMPONENTS : 컴포넌트 관련 정보

                      BCD00000000 : 부팅관련 데이터 관리

           # 하이브 파일 추출

                      forecopy_handy -g [경로]

 

# 윈도우 버전 정보 레지스트리 키 

           HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion

# 컴퓨터 이름 레지스트리 키

           HKLM\SYSTEM\ControlSet00X\Control\ComputerName\ActiveComputerName

 

# 윈도우 시작 프로그램 레지스트리 키 , autoruns 프로그램

           * 악성 코드 시도 → 시작에 등록된 백신 삭제, 악성코드 등록, 여러개로 나누어 은닉

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce → 한번만 실행

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices → 서비스에 대한 시작 프로그램

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce

 

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices

 

#최근 실행한 명령어 레지스트리 키

HKU\사용자\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRU

 

- 윈도우 이벤트 로그 : 이벤트 뷰어를 사용하여 확인 가능, 확장자 .evt

           * 윈도우 로그 종류 

           - 응용프로그램 로그 : 응용프로그램들이 기록할 이벤트

           - 보안 로그 : 로그온 횟수, 로그인 오류 정보, 파일 생성, 파일 열기, 삭제 등 리소스 사용 관련

           - 시스템 로그 : 윈도우 시스템 구성요소에서 기록

           # 이벤트 로그 파일 추출

           forecopy_handy -e [경로]

 

- 웹 아티팩트 분석, 사용자의 웹사이트 이용 흔적 분석

           * 웹 브라우저 캐시

           - 캐시 데이터 : 다운로드 받은 이미지 텍스트 파일, 아이콘 등

           - 캐시 인덱스 : 다운로드 URL, 다운로드 시간, 데이터 크기 등

           * 히스토리 분석 : 방문 URL, 방문시간, 횟수, 사이트 제목 등

           * 웹 브라우저 쿠키 : 호스트 정보, 경로, 수정시간, 만료시간 등

 

           #IE에 대한 아티팩트 수집 데이터

           - windows XP, 7 등 → index.dat → 캐시, 히스토리, 쿠키등 정보가 나뉘어 별도 파일 구성

           - windows 10 → WebCacheV01.dat 또는 WebCacheV24.dat → 통합되어 관리

           forecopy_handy -i [경로]

 

- 컴퓨터 바이러스 유형

           * 1세대 원시형 바이러스 : 프로그램 구조 간단, 분석 쉬움

                      예루살렘, 돌 바이러스

           * 2세대 암호화 바이러스 : 바이러스 암호화, 복호화 방식 동일

                      cascade, slow 바이러스

           * 3세대 은폐형 바이러스 : 감염된 부분을 검사하면 감염되기 전의 내용 보여줌

                      맥가이버, 브레인, 512 바이러스

           * 4세대 갑옷형 바이러스 : 다양한 암호화, 은폐 기법, 백신 진단 어려움

                      다형성, 자체 변형, BlueSky, Whale 바이러스

           * 5세대 매크로 바이러스 : OS 상관 없이 응용프로그램에서 동작

                      Melisa, Laroux, Nimda 바이러스

 

- 감염대상 기준 바이러스

           1. 부트바이러스 : 부트섹터에 바이러스 감염시켜 부팅 오래걸리거나 안됨

                      브레인, 미켈란 젤로

           2. 파일바이러스 : 사용자가 사용하는 일반 파일에 감염

                      기생형, 겹쳐쓰기형, 산란형, 연결형 바이러스

           3. 부트 및 파일바이러스 

                      게킬라, 나타스, 침입자 바이러스

 

- 윈도우 DDE(Dynamic Data Exchange)

           애플리케이션 간 데이터 전송 위한 프로토콜, 공유 메모리 사용

           MS Word 에서 텍스트의 마우스 오른쪽 → 필드 코드 토글 선택

           예시)           {DDEAUTO C:\windows\system32\\cmd “\k calc.exe”}

           * 자동연결 업데이트 해제하여 방어 → MS Word 의 경우 “문서를 열때 자동 연결 업데이트” 해제

 

- 셸코드와 Heap Spray

           * 셸코드 : 명령 셸을 실행시켜 피해자의 컴퓨터를 통제, 어셈블리어 작성, 기계어 번역

                      msfvenom 도구를 통해 생성 가능

           * Heap Spray 는 셸코드를 Heap 영역에 뿌림

                      전역변수 선언 후 대임, DEP(Data Execution Prevention) 를 해제 후 컴파일

 

- ASLR : 메모리 주소 난수화

           리눅스 설정 → sysctl -w kernel.randomize_va_space = 1

 

- 버퍼오버플로우

           * 스택(Stack) : 지역변수 저장, 복귀주소 가짐, 인자 값

           * 힙(Heap) : malloc 과 free 통해 할당 및 해제

           * 데이터 : 전역 변수, 정적 변수

           * 코드 : 읽기만 가능한 메모리 영역, 프로그램 코드

 

- 스택 버퍼 오버 플로우 : 스택에 저장된 복귀주소가 지역변수에 의해 침범 당함

           취약 함수 : strcpy, strcat, getwd, gets, fscanf, scanf, sprintf

           방지 함수 : strncat, strncpy, fgets, vfscanf, snprintf, vsnpirintf

 

- 버퍼 오버런 : 메모리공간에 할당된 것보다 더 큰 데이터 입력하면 프로그램 오류

 

- 힘 버퍼 오버플로우 : 하위→ 상위주소 메모리할당, 경계값 검사 안하면 경계 초과

 

- 경쟁 조건(race condition)

           다중프로세스 환경, 두개 이상의 프로세스가 동시에 수행될 때 발생하는 비정상적 상태

           -백도어 생성, setuid 설정, 심볼릭링크 생성(백도어), 심볼릭 링크 실행

 

- APT(Advanced Persistent Threat)

           특정 기법 및 조직을 대상으로 다양한 공격 기법을 지속적으로 하는것

           SNS를 통한 정보 수집, Zero Day Attack, Mail APT, 백도어 APT

           * 공격 단계

           침투 → 탐색 → 수집/공격 → 유출

 

#바이너리 디핑

           Zero Day Attack 을 찾을 수 있는 기법, 디핑 기술로 바이너리 함수 정보 획득

           자동으로 Malware 탐지, 오픈소스 라이선스 준수 여부 확인

 

참고 서적 : www.yes24.com/Product/Goods/89220771

728x90
반응형

'자격증 > 보안기사' 카테고리의 다른 글

02_네트워크_3  (0) 2021.01.23
02_네트워크_2  (0) 2021.01.23
02_네트워크_1  (0) 2021.01.22
01_시스템 보안 정리_2  (0) 2021.01.21
01_시스템 보안 정리_1  (0) 2021.01.21

댓글