/HIGHENTROPYVA(64비트 ASLR 지원)
실행 가능 이미지가 높은 엔트로피 64비트 ASLR(주소 공간 레이아웃 불규칙화)을 지원하는지 여부를 지정합니다.
구문
/HIGHENTROPYVA
[:NO
]
설명
/HIGHENTROPYVA
ASLR이 전체 64비트 주소 공간을 사용할 수 있는지 여부를 나타내기 위해 실행 파일(예: a .dll
또는 .exe
파일)의 헤더를 수정합니다. 효과를 주려면 실행 파일과 해당 모듈이 의존하는 모든 모듈 모두에 대한 옵션을 설정합니다. 그런 다음 64비트 ASLR을 지원하는 운영 체제는 64비트 임의 가상 주소를 사용하여 로드 시 실행 이미지의 세그먼트를 다시 지정할 수 있습니다. 이처럼 큰 주소 공간을 사용하는 경우 공격자가 특정 메모리 영역의 위치를 추측하기가 어려워집니다.
기본적으로 /HIGHENTROPYVA
64비트 실행 파일 이미지에 대해 사용하도록 설정됩니다. 이 옵션을 사용하려면 64비트 이미지에도 기본적으로 사용하도록 설정되어 있어야 합니다 /LARGEADDRESSAWARE
. /HIGHENTROPYVA
는 링커가 옵션을 무시하는 32비트 실행 이미지에는 적용되지 않습니다. 이 옵션을 명시적으로 사용하지 않도록 설정하려면 .를 사용합니다 /HIGHENTROPYVA:NO
.
/HIGHENTROPYVA
로드 시 /DYNAMICBASE
효과를 발휘하려면 사용하도록 설정해야 합니다. /DYNAMICBASE
는 기본적으로 사용하도록 설정되어 있으며 Windows Vista 이상 운영 체제에서 ASLR을 사용하도록 설정해야 합니다. 이전 버전의 Windows에서는 이 플래그를 무시합니다.
Visual Studio에서 이 링커 옵션을 설정하려면
프로젝트 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 컴파일러 및 빌드 속성 설정을 참조합니다.
구성 속성>링커>명령줄 속성 페이지를 선택합니다.
추가 옵션에서 입력하거나 을 입력
/HIGHENTROPYVA
합니다/HIGHENTROPYVA:NO
.