0
int main(int argc, char **argv)
{
personality(ADDR_NO_RANDOMIZE);
if (fork())
{
return 0;
}
printf("Hook me")
연습에서이 코드가 발생했습니다. 내 계산에 따르면, 이것은 자식 프로세스에서 ASLR을 비활성화해야합니다. 그러나 LD_PRELOAD를 사용하여 printf에서 바이너리를 잠 그어 그 시점에서 gdb로 연결했습니다. 이 시점에서 스택 주소에 따라 ASLR이 활성화 된 것으로 나타났습니다. Aslr은 부모 프로세스에서 확실히 활성화됩니다.다음 코드는 ASLR을 비활성화합니까?
자식 프로세스에서 ASLR을 비활성화해야합니까? 분기 된 자식에서 ASLR이 사용 중지되는 것을 방지하는 코드의 문제점은 무엇입니까?