답변:
기사에 따르면 효과는 ASLR 리눅스 시스템에 어떻게? /proc/sys/kernel/randomize_va_space
인터페이스를 사용하여 Linux에서 ASLR을 구성 할 수 있습니다 .
다음과 같은 값이 지원됩니다.
- 0 – 무작위 화가 없습니다. 모든 것이 정적입니다.
- 1 – 보수적 무작위 화. 공유 라이브러리, stack,,
mmap()
VDSO 및 힙은 무작위입니다.- 2 – 완전 무작위 화. 이전 지점에 나열된 요소 외에도 관리되는 메모리
brk()
도 무작위로 지정됩니다.
따라서 비활성화하려면 다음을 실행하십시오.
echo 0 | sudo tee /proc/sys/kernel/randomize_va_space
다시 활성화하려면
echo 2 | sudo tee /proc/sys/kernel/randomize_va_space
재부팅 후에도 유지되지 않으므로에서에서 구성해야합니다 sysctl
. 다음을 포함하는 파일 /etc/sysctl.d/01-disable-aslr.conf
을 추가하십시오 .
kernel.randomize_va_space = 0
영구적으로 비활성화해야합니다.
brk()
입니까?
/proc/sys/kernel/randomize_va_space
인터페이스는 ASLR의 시스템 전체 제어합니다.
시스템 전체의 변경을 원하지 않으면 ADDR_NO_RANDOMIZE
성격 을 사용하여 ASLR을 일시적으로 비활성화하십시오. 이 특성 플래그 제어 는 명령 앞에 추가 setarch
하고 -R
옵션 ( 맨 페이지 )을 사용 하여 수행 할 수 있습니다 .
다음을 사용하여 완전히 새로운 쉘을 여는 것이 정말 편리하다는 것을 알았습니다.
setarch `uname -m` -R /bin/bash
그러면 모든 하위 프로세스 (이 셸에서 실행되는 프로그램)를 포함하여 ASLR을 비활성화 한 상태로 새 Bash 셸이 열립니다.
그냥 exit
이 완료되면 쉘.
그건 그렇고, i386에서 ulimit -s unlimited
ASLR을 "비활성화"할 수 있습니다.
편집 (2016 년 4 월) :이 ulimit -s unlimited
수정되어 CVE-2016-3672로 지정 되었습니다 .
uname -m
사용할 수도 있습니다 arch
.
arch
는 busybox 애플릿으로 사용할 수 없습니다