모두CBT

스택 버퍼 오버플로우 공격의 수행절차를 순서대로 바르게 나열한 것은?ㄱ… | [정보보안기사 필기] 16년 2회차 기출문제 상세 페이지

1[정보보안기사 필기] 16년 2회차

스택 버퍼 오버플로우 공격의 수행절차를 순서대로 바르게 나열한 것은?

ㄱ. 특정 함수의 호출이 완료되면 조작된 반환 주소인 공격셸 코드의 주소가 반환된다.
ㄴ. 루트 권한으로 실행되는 프로그램 상에서 특정 함수의 스택 버퍼를 오버플로우시켜서 공격 셸 코드가 저장되어 있는 버퍼의 주소로 반환 주소를 변경한다.
ㄷ. 공격 셸 코드를 버퍼에 저장한다.
ㄹ. 공격 셸 코드가 실행되어 루트 권한을 획득하게 된다.
1
ㄱ→ㄴ→ㄷ→ㄹ
2
ㄱ→ㄷ→ㄴ→ㄹ
3
ㄷ→ㄴ→ㄱ→ㄹ
4
ㄷ→ㄱ→ㄴ→ㄹ
해설

공격은 셸 코드 적재 → 반환 주소 변조 → 함수 반환 시 셸 코드 실행 → 루트 권한 획득 순으로 진행되므로 ㄷ→ㄴ→ㄱ→ㄹ이 된다.

먼저 공격 셸 코드를 버퍼에 넣어 두어야 반환 주소를 덮어쓸 목표 주소가 생긴다. 그다음 루트 권한으로 실행되는 프로그램의 스택 버퍼를 넘치게 해, 저장돼 있던 반환 주소를 그 버퍼 주소로 바꾼다.

이후 해당 함수의 호출이 끝나면서 조작된 반환 주소가 복원되어 실행 흐름이 셸 코드로 넘어가고, 그 프로그램의 권한인 루트 셸을 얻게 된다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.