는 일반적으로 우리 모두가 가지고있는 기본 버퍼 오버 플로우 형식을 참조하십시오 - NOPs + shellcode + return_address
버퍼 오버 플로우 공격 형식
왜 우리가 사용 해달라고, 우리는 쉘 코드의 시작 리턴 어드레스 점을 NOPs + return_address + shellcode?
?
취약점이 main()에있는 경우 스택 세그먼트 외부에 데이터를 쓰려고 시도했을 가능성이 있습니다. 내가 맞습니까? 그게 유일한 이유 야?
오, 그렇습니다. 나는 return-to-libc, ptrace 등을 사용하는 다른 종류의 공격을 언급하지 않고 있습니다. 나는 왜 가장 기본적인 버퍼 오버 플로우 공격이 모든 곳에서 두 번째가 아닌 첫 번째 방법으로 증명되었는지 알고 싶습니다.
감사합니다! –