C 코드
int CheckLogin()
{
char* _username = (char*) malloc(32);
char username[32];
scanf("%s", _username);
strcpy(username, _username);
}
📌 주요 문제점
- scanf("%s", _username); → 힙 오버플로우 가능성
→ 입력 길이 제한 없이 32바이트 초과 입력 시 malloc(32) 영역 초과 - strcpy(username, _username); → 스택 오버플로우 가능성
→ _username 길이가 32바이트 초과일 경우 username[32] 범위 초과 - malloc() 실패 시 반환값 NULL → 메모리 접근 위반 가능성
🚫 관련 없는 문제점
- 정수 오버플로우 (integer overflow)
→ 코드 내 산술 연산이 없으므로 관련 없음
✅ 정답: ④ 정수 오버플로우 (integer overflow)
'정보시스템감리사 > 기출문제_21년_22회' 카테고리의 다른 글
117_패스워드기반암호(PBE) (1) | 2025.04.21 |
---|---|
115_프록시서버 (0) | 2025.04.21 |
114_비식별화방법 (0) | 2025.04.21 |
113_XSS_공격유형 (0) | 2025.04.21 |
106_SHA-3_해시함수 (0) | 2025.04.20 |