aslr

ASLR이 활성화된 상태에서 애플리케이션이 실행되고 있는지 확인하세요.
aslr

ASLR이 활성화된 상태에서 애플리케이션이 실행되고 있는지 확인하세요.

내 시스템에는 다음을 사용하여 여러 응용 프로그램이 실행되고 있습니다. /bin/setarch linux32 -R <application + params> 또는: /bin/setarch linux32 <application + params> 주소 공간 레이아웃 무작위화를 활성화/비활성화합니다. 메모리 맵을 보지 않고 특정 애플리케이션이 ASLR을 사용하는지 확인할 수 있는 방법이 있습니까? ...

Admin

Linux는 ELF를 실행할 때 로딩 주소와 진입점을 어떻게 결정합니까?
aslr

Linux는 ELF를 실행할 때 로딩 주소와 진입점을 어떻게 결정합니까?

Linux execve()에 ELF가 있으면 해당 ELF를 프로세스의 메모리 공간에 매핑하고 진입점부터 코드를 실행합니다. 하지만 커널은 ELF의 로드 주소와 진입점을 어떻게 결정합니까? .p_vaddrASLR이 비활성화된 경우 각 PT_LOAD 세그먼트 를 찾고 .e_entryELF 헤더를 진입점으로 사용합니다. 하지만 ASLR이 활성화되면 어떻게 될까요? 커널은 단순히 위의 모든 항목에 무작위 이동을 추가하지만 상대 위치는 유지합니까? ELF의 내용이 커널 동작에 영향을 줍니까? PT_LOA...

Admin

Linux의 메모리 무작위화
aslr

Linux의 메모리 무작위화

나는 간단한 C 프로그램을 만들었고 그것을 GDB에 로드할 때마다 프로그램 명령어에 할당된 동일한 메모리 주소를 봅니다. 예를 들어, 함수는 what()항상 메모리 위치 0x000055555555472d에 로드됩니다. 실제로 스택은 매번 정확히 동일합니다(스택의 내용뿐만 아니라 rsp가 가리키는 메모리 주소도 마찬가지입니다). "/proc/sys/kernel/randomize_va_space"를 0으로 설정하여 Linux에서 ASLR을 비활성화할 수 있다는 것을 알고 있지만 내 Debian 시스템에...

Admin