Windows Internals 7/e Vol  2 : 마이크로소프트 윈도우 커널 공식 가이드
저자

안드레아알레비외

(AndreaAllievi)
15년이상의경력을가진시스템레벨개발자이자보안분야전문가다.2010년,밀라노비코카대학교(UniversityofMilano-Bicocca)에서컴퓨터공학학사학위를취득했다.논문을위해모든윈도우7커널보호(패치가드및드라이버서명적용)를무력화할수있는64비트MBR(마스터부트레코드)부트킷을개발했다.커널모드코드부터유저모드코드까지운영체제내부를담당하는리버스엔지니어이기도하다.먼저UEFI부트킷(연구목적으로개발했으며2012년에발표),여러패치가드바이패스및기타여러연구논문과기사를작성한최초개발자다.멀웨어및지능형지속적인스레드제거에사용되는여러시스템도구및소프트웨어의저자이기도하다.또한다양한컴퓨터보안회사,이탈리아의TG소프트,세이퍼바이트(현멀웨어바이트),시스코시스템즈의탈로스그룹경력이있다.2016년에마이크로소프트위협인텔리전스센터(MSTIC)그룹의보안연구엔지니어로마이크로소프트에입사했다.2018년1월부터는마이크로소프트의커널보안코어팀에서수석핵심OS엔지니어로일하면서주로NT및보안커널의새로운기능(예를들어리트폴린또는추측완화기능)을유지관리하고개발하는업무를담당하고있다.보안연구커뮤니티에서활발히활동하고새로운커널기능에대한기술보안연구커뮤니티에서활발히활동하고있다.마이크로소프트의새로운커널기능에대한Recon및MicrosoftBlueHat과같은여러기술콘퍼런스에서강연하고있다.트위터(현X)(@aall86)를팔로우하라.

목차

8장.시스템메커니즘
__프로세서실행모델
____세그먼테이션
____작업상태세그먼트
__하드웨어사이드채널취약점
____비순차적실행
____CPU분기예측기
____CPU캐시
____사이드채널공격
__윈도우의사이드채널공격완화
____커널가상주소섀도우
____하드웨어간접분기제어(IBRS,IBPB,STIBP,SSBD)
____리트폴린과임포트최적화
____STIBP페어링
__트랩디스패칭
____인터럽트디스패칭
____라인기반인터럽트와메시지기반인터럽트
____타이머처리
____시스템작업자스레드
____예외디스패칭
____시스템서비스핸들링
__WoW64(윈도우안의윈도우)
____WoW64코어
____파일시스템리다이렉션
____레지스트리리다이렉션
____AMD64플랫폼에서x86시뮬레이션
____ARM
____메모리모델
____ARM64플랫폼에서ARM32시뮬레이션
____ARM64플랫폼에서X86시뮬레이션
__객체관리자
____이그제큐티브객체
____객체구조체
__동기화
____High-IRQL동기화
____Low-IRQL동기화
__고급로컬프로시저호출
____연결모델
____메시지모델
____비동기작업
____뷰,영역,섹션
____속성
____블롭,핸들,리소스
____핸들전달
____보안
____성능
____전원관리
____ALPC다이렉트이벤트속성
____디버깅과추적
__윈도우알림기능
____WNF기능
____WNF유저
____WNF상태이름과저장소
____WNF이벤트기반수집
__유저모드디버깅
____커널지원
____네이티브지원
____윈도우서브시스템지원
__패키지애플리케이션
____UWP애플리케이션
____센테니얼애플리케이션
____호스트활동관리자
____상태저장소
____종속성미니저장소
____백그라운드작업및브로커인프라
____패키지애플리케이션설치와시작
____패키지활성화
____패키지등록
__결론


9장.가상화기술
__윈도우하이퍼바이저
____파티션,프로세스,스레드
____하이퍼바이저시작
____하이퍼바이저메모리관리자
____하이퍼V스케줄러
____하이퍼콜과하이퍼바이저TLFS
____인터셉트
____가상인터럽트컨트롤러(SynIC)
____윈도우하이퍼바이저플랫폼API와EXO파티션
____중첩된가상화
____ARM64윈도우하이퍼바이저
__가상화스택
____가상머신관리자서비스와작업자프로세스
____VID드라이버와가상화스택메모리관리자
____가상머신(VM)의탄생
____VMBus
____가상하드웨어지원
____VA-backedVM
__가상화기반보안(VBS)
____가상신뢰수준(VTL)과가상보안모드(VSM)
____VSM에서제공하는서비스와요구사항
__보안커널
____가상인터럽트
____보안인터셉트
____VSM시스템콜
____보안스레드와스케줄링
____하이퍼바이저적용코드무결성
____UEFI런타임가상화
____VSM시작
____보안커널메모리관리자
____핫패치
__격리된유저모드
____트러스트렛생성
____보안디바이스
____VBS기반엔클레이브
____시스템가드런타임증명
__결론


10장.관리,진단,추적
__레지스트리
____레지스트리보기와변경
____레지스트리사용
____레지스트리데이터유형
____레지스트리의논리적구조
____애플리케이션하이브
____트랜잭션레지스트리(TxR)
____레지스트리행위모니터링
____프로세스모니터의내부구조
____레지스트리내부
____하이브개편
____레지스트리네임스페이스와동작
____안전한저장소
____레지스트리필터링
____레지스트리가상화
____레지스트리최적화
__윈도우서비스
____서비스애플리케이션
____서비스계정
____SCM
____서비스제어프로그램
____자동시작서비스시작
____지연된자동시작서비스
____트리거시작서비스
____시작에러
____부팅및마지막정상승인확인
____서비스실패
____서비스종료
____공유서비스프로세스
____서비스태그
____유저서비스
____패키지서비스
____보호된서비스
__작업스케줄링과UBPM
____작업스케줄러
____UBPM
____작업스케줄러COM인터페이스
__윈도우관리도구
____WMI아키텍처
____WMI공급자
____CIM과MOF언어
____클래스연관화
____WMI구현
____WMI보안
__윈도우이벤트추적(ETW)
____ETW초기화
____ETW세션
____ETW공급자
____공급자이벤트
____ETW로그스레드
____이벤트소비
____시스템로그
____ETW보안
__동적트레이스(DTrace)
____내부아키텍처
____DTrace타입라이브러리
__윈도우에러보고(WER)
____유저애플리케이션크래시
____커널모드(시스템)크래시
____프로세스행감지
__전역플래그
__커널심
____심엔진초기화
____심데이터베이스
____드라이버심
____디바이스심
__결론


11장.캐싱과파일시스템
__용어
__캐시관리자의주요특징
____단일,중앙집중형시스템캐시
____메모리관리자
____캐시일관성
____가상블록캐싱
____스트림기반캐싱
____복구가능파일시스템지원
____NTFSMFT작업집합기능향상
____메모리파티션지원
__캐시의가상메모리관리
__캐시크기
____캐시가상크기
____캐시작업집합크기
____물리적인캐시크기
__캐시데이터구조
____시스템전역캐시데이터구조
____파일단위캐시데이터구조체
__파일시스템인터페이스
____캐시로복사/캐시로부터의복사
____매핑및고정인터페이스를통한캐싱
____직접메모리액세스인터페이스를이용한캐싱
__패스트I/O
__미리읽기와나중쓰기
____지능형미리읽기
____미리읽기기능향상
____재기록캐싱과지연라이터
____파일에대한지연라이터비활성화
____캐시로하여금디스크에즉시쓰기강제하기
____맵파일플러시하기
____쓰기조절
____시스템스레드
____비하인드강제쓰기와낮은우선순위지연라이터
____동적메모리
____캐시관리자디스크I/O계정
__파일시스템
____윈도우파일시스템형식
____CDFS
____UDF
____FAT12,FAT16,FAT32
____exFAT
____NTFS
____ReFS
____파일시스템드라이버아키텍처
____로컬FSD
____원격FSD
____파일시스템동작
____명시적파일I/O
____메모리관리자의변경페이지라이터와맵드페이지라이터
____캐시관리자의지연라이터
____캐시관리자의미리읽기스레드
____메모리관리자의페이지폴트핸들러
____파일시스템필터드라이버와미니필터
____네임드파이프및메일슬롯필터링
____리파스포인트의동작제어
____프로세스모니터
__NT파일시스템(NTFS)
____하이엔드파일시스템요구사항
____복구기능
____보안
____데이터중복과내결함성
____NTFS고급기능
____다중데이터스트림
____유니코드기반의이름
____범용적인인덱싱기능
____동적으로수행되는손상클러스터재할당
____하드링크
____심볼릭(소프트)링크와정션
____압축과스파스파일
____로깅변경
____유저별볼륨쿼터
____링크추적
____암호화
____POSIX스타일의삭제의미
____조각모음
____동적파티셔닝
____계층적볼륨에대한NTFS지원
__NTFS파일시스템드라이버
__디스크상의NTFS구조
____볼륨
____클러스터
____마스터파일테이블
____파일레코드번호
____파일레코드
____파일이름
____터널링
____상주와비상주속성
____데이터압축과스파스파일
____스파스데이터의압축
____비스파스데이터압축
____스파스파일
____변경저널파일
____인덱싱
____객체ID
____쿼터추적
____통합보안
____리파스포인트
____스토리지예약및NTFS예약
____트랜잭션지원
____격리
____트랜잭션API
____디스크에서의지원
____로깅지원
__NTFS복구지원
____설계
____메타데이터로깅
____로그파일서비스
____로그레코드유형
____복구
____분석패스
____재실행패스
____취소패스
____NTFS불량클러스터복구
____자가복구
____온라인디스크검사와신속한복구
__암호화파일시스템
____파일최초암호화
____복호화프로세스
____암호화된파일백업
____암호화된파일복사
____비트락커암호화부하분산
____온라인암호화지원
__직접액세스(DAX)디스크
____DAX드라이버모델
____DAX볼륨
____DAX볼륨캐시와넌캐시I/O
____실행가능이미지매핑
____블록볼륨
____파일시스템필터드라이버및DAX
____DAX모드I/O플러시
____큰페이지및대용량페이지지원
____가상PM디스크및저장공간지원
__복원파일시스템(ReFS)
____민스토어아키텍처
____B+트리의물리적레이아웃
____할당자
____페이지테이블
____민스토어I/O
____ReFS아키텍처
____ReFS온디스크구조
____객체ID
____보안및변경저널
__ReFS의고급기능
____파일차단복제(스냅샷지원)와스파스VDL
____ReFS즉시쓰기
____ReFS복구지원
____누수감지
____기와식자기기록(SMR)볼륨
____계층적볼륨및SMR에대한ReFS지원
____컨테이너압축
____압축및고스팅
__스토리지공간
____스페이스내부아키텍처
____스페이스가제공하는서비스
__결론


12장.시작과종료
__부팅과정
____UEFI부트
____BIOS부팅프로세스
____보안부팅
____윈도우부팅관리자
____부팅메뉴
____부팅애플리케이션시작
____측정된부팅
____신뢰된실행
____윈도우운영체제로더
____iSCSI부팅
____하이퍼바이저로더
____VSM시작정책
____보안실행
____커널과이그제큐티브서브시스템초기화
____커널초기화단계1
____Smss,Csrss,Wininit
____레디부트
____자동시작이미지
____종료
____하이버네이션및빠른시작
____윈도우복원환경(WinRE)
____안전모드
____안전모드에서드라이버로드
____안전모드지원유저프로그램
____부팅상태파일
__결론

출판사 서평

◈이책에서다루는내용◈

◆ALPC,객체관리자,동기화,WNF,WoW64및프로세서실행모델을포함해장치드라이버및애플리케이션을제공하기위한시스템메커니즘이해
◆트랩프로세싱,세그먼테이션및사이드채널(sidechannel)보안취약점을포함한기본하드웨어아키텍처분석
◆OS취약점으로부터윈도우가상화및가상화기반보안(VBS)이보호하는방법이해
◆레지스트리,윈도우서비스,WMI,작업스케줄링을포함한주요관리및구성메커니즘이해
◆윈도우이벤트추적(ETW)및DTrace와같은분석서비스이해
◆캐시관리자와파일시스템드라이버가어떻게상호작용해파일,디렉터리및디스크를안정적으로지원이해(NVDIMM(영구메모리)DAX장치포함)
◆NTFS,ReFS및기타윈도우파일시스템이해
◆윈도우시작/종료작업및부팅흐름에관련된OS구성요소분석
◆UEFI기반보안부팅,측정된부팅및보안부팅분석

◈이책의대상독자◈

독자가고급사용자수준의윈도우환경에익숙하고CPU레지스터,메모리,프로세스,스레드와같은운영체제및하드웨어개념을기본적으로이해하고있다고가정한다.함수,포인터및유사한C프로그래밍언어구조에대한기본적인이해가있어야내용을이해하기에유리하다.

◈이책의구성◈

7판은6판과마찬가지로2권으로나뉘며,이책은Vol.2다.
●8장,'시스템메커니즘'에서는ALPC,객체관리자,동기화루틴등운영체제가디바이스드라이버와애플리케이션에주요서비스를제공하는데사용하는중요한내부메커니즘에대한정보를제공한다.또한트랩처리,세분화및사이드채널취약성을비롯해윈도우가실행되는하드웨어아키텍처와이를해결하는데필요한해결방법에대한세부정보를알아본다.
●9장,'가상화기술'에서는윈도우OS가최신프로세서가제공하는가상화기술을사용해사용자가동일한시스템에서여러가상머신을생성하고사용할수있게하는방법을설명한다.또한가상화는새로운수준의보안을제공하고자윈도우에서폭넓게사용한다.따라서9장에서는보안커널및격리된사용자모드를자세히알아본다.
●10장,'관리,진단,추적'에서는관리,구성,진단을위해운영체제에서구현된기본메커니즘을자세히설명한다.특히윈도우레지스트리,윈도우서비스,WMI및작업스케줄링과함께윈도우용이벤트추적ETW및DTrace와같은진단서비스를살펴본다.
●11장,'캐싱과파일시스템'에서는가장중요한'스토리지'구성요소인캐시관리자와파일시스템드라이버가어떻게상호작용해파일,디렉터리및디스크장치에서효율적이고안전한방식으로작동하는지보여준다.또한윈도우에서지원하는파일시스템,특히NTFS와ReFS를자세히알아본다.
●12장,'시작과종료'에서는시스템을시작하고종료할때발생하는작업흐름과부팅흐름에관여하는운영체제구성요소를살펴본다.또한보안부팅,측정부팅및보안실행과같은UEFI의새로운기술도알아본다.