윈도우 커널 드라이버 공부를 위해
https://github.com/hacksysteam/HackSysExtremeVulnerableDriver
이것을 이용할 계획이다. 취약점(현재 28개였던것같음)이 존재하는 드라이버를 만들어서 공부용으로 올려놓으신것이다.
일단... 사실 이건 이 드라이버를 빌드하기 위해서만 필요한 빌드 환경 구축은 아니고, 계속 뭐 윈도우 드라이버를 만들어서 테스트할 일이 생길 것 같아서 기록한다.
HEVD는 위 깃헙 링크에 보면 이미 빌드되서 릴리즈된 것을 다운로드 받아서 사용할 수 있기 때문에 굳이 따로 빌드하지 않아도 되긴 한다.. 그냥 굳이 한번 해본것
사실 환경구축이랄 것도 없다. 간단하다!
1. Visual Studio 2019 install
일단 최신버전의 비주얼 스튜디오를 설치한다. 최신버전으로 한 이유는 그렇게 해야 SDK, WDK 버전을 다같이 맞추기가 편리해서 그런것이다.
https://visualstudio.microsoft.com/downloads/
2. SDK version check and update
Windows 10 SDK 10.0.19041.1이여야 한다. 위에서 비쥬얼 스튜디오를 다운받으면 기본적으로 SDK가 설치되긴 한다. 그때 installer에서 버전을 확인해서 버전이 다르면, 업데이트를 시켜야한다.
여기서 수정을 눌러서
이렇게 우측에 세부 정보를 확인할 수 있다. 걍 저기 보면 SDK 있긴 한데, 이상태에서는 Windows 10 WDK랑 버전이 안맞아서 설치가 안되는 문제가 있었다. 그래서 저게 버전이 위에 명시된것이랑 다르면 업데이트를 해줘야 한다.
https://developer.microsoft.com/ko-kr/windows/downloads/windows-10-sdk/
여기서 설치 관리자 받아서 업데이트 진행해주면 된다.
3. MSVC install
이부분도 위에 인스톨러에서 확인할 수 있다. 기본적으로 설치되는 것들이 있긴 한데
두번째의 개별 구성 요소 탭을 누르면 이런 창이 뜬다. 여기서
MSVC v142 - VS 2019 C++ ARM build tools (v14.25)
MSVC v142 - VS 2019 C++ ARM Spectre-mitigated libs (v14.25)
MSVC v142 - VS 2019 C++ ARM64 build tools (v14.25)
MSVC v142 - VS 2019 C++ ARM64 Spectre-mitigated libs (v14.25)
MSVC v142 - VS 2019 C++ x64/x86 build tools (v14.25)
MSVC v142 - VS 2019 C++ x64/x86 Spectre-mitigated libs (v14.25)
이렇게가 설치되어있어야한다. 지금 내 상태에서는 v142가 최신 버전인데, 자기가 있는 상태에서 가장 최신버전으로 받아주면 된다.
4. WDK for Windows 10 install
마지막으로 WDK를 설치하면 된다.
여기서 wdksetup.exe를 다운로드 받아서 설치 진행하면 끝이다! 그래도 유의해야할 점이 몇가지 있다. 여기서 체크를 잘 확인해야 visual studio랑 제대로 연결이 된다.
첫번째 유의할점
여기서 지금 위에 체크되어 있는 부분이 안뜨면! 프로그램 추가제거 가서 Windows Driver Kit 삭제하고 다시 설치해야한다 버전 맞춰야 하니까..
그리고 여기서 위에것이 체크가 되어있어야한다..! 이렇게하고나면 뒤에서 뭐 라이센스 설치 뭐시기 웅앵 나오는데 다 해주면 된다.
이렇게 새 프로젝트 만들 때 Empty WDM Driver가 생기면 제대로 다 설치가 된 것이다. 만약 이게 제대로 안뜨면 다시 Windows Driver Kit 삭제 하고 다시 설치 과정을 진행해야 한다.
다 설치하고 나면 이제 환경 설정은 끝났다. 확인은 그냥 드라이버 하나 간단한거 만들어보면 된다.
이건.. 사실 검색해보면 많아서 귀찮으니까 안했다 나는.. ㅎ
이제 이 글의 마지막으로 HEVD 드라이버 빌드하는 법을 쓰겠다.
사실 별거 없고, 맨 위의 깃헙에서 zip파일로 받아서,
C:\Users\****\Desktop\HackSysExtremeVulnerableDriver\Driver\HEVD\Windows
여기 경로에서, HEVD.sln을 켜서 빌드를 진행하거나
C:\Users\****\Desktop\HackSysExtremeVulnerableDriver\Builder
여기 경로에서 비트수 맞춰서 배치파일을 cmd로 실행시켜주면 상위 파일에 build 파일 안에 드라이버가 빌드된다.
그러면 이제 빌드해서 드라이버를 생성하는 과정은 끝이다.
엄청 두서없고 정신없지만.. 나중에 다시 정리하든지 해야지 굿~
'Kernel > Windows' 카테고리의 다른 글
[Windows][HEVD] stack overflow (1) | 2020.09.30 |
---|---|
[Windows] VMware windbg 설정(+ windbg preview) (0) | 2020.08.09 |