인프런 커뮤니티 질문&답변
어태치 리턴주소
작성
·
299
퀴즈
56%나 틀려요. 한번 도전해보세요!
스택 버퍼 오버플로우의 주된 원인은 무엇일까요?
버퍼보다 더 많은 입력값을 처리할 때 발생하는 버퍼 경계 초과
프로세서의 캐시 메모리 손상
파일 시스템의 접근 권한 오류
힙(Heap) 메모리의 할당 해제 오류
답변 1
0
안녕하세요 저도 관련된 부분에 대해 분석해보지는 않아서 몇 가지 찾아보았습니다.
찾아보니 좋은 글이 있어서 첨부드립니다.
여기에서 스택 주소에 영향을 주는 데는 다음과 같은 사항이 있다고 합니다.
- gdb는 절대 경로 이름으로 프로그램을 호출하므로 argv 배열이 더 큽니다.
- gdb는 두 개의 환경 변수를 설정(또는 이 경우 추가)합니다. 이것은 readline/shell.c:sh_set_lines_and_columns()에서 수행됩니다. 따라서 환경 어레이가 더 큽니다.
참고 URL: https://stackoverflow.com/questions/32771657/gdb-showing-different-address-than-in-code
감사합니다.





