SQL - 문제 미리보기
문제 1801
easy
다음 중 전형적인 SQL Injection 공격 입력은?
상황: 사용자 ID 입력 필드에 다음 중 어떤 값을 입력하면 모든 사용자 정보가 노출될 수 있는가?
정답: B
⦁ `105 OR 1=1` 공격 분석:
원래 의도된 SQL:
```sql
SELECT * FROM Users WHERE UserId = 105
```
공격 후 실제 실행되는 SQL:
```sql
SELECT * FROM Users WHERE UserId = 105 OR 1=1
```
⦁ `1=1`의 위험성:
⦁ **항상 참(TRUE)**인 조건
⦁ OR 연산자로 인해 모든 레코드 반환
⦁ WHERE 조건을 무력화시킴
⦁ 공격 결과:
⦁ 특정 사용자 1명의 정보 → 전체 사용자 정보 노출
⦁ 로그인 없이 모든 계정 접근 가능
⦁ 사용자명, 비밀번호 등 민감 정보 유출
💡 학습 팁
이 문제를 포함한 SQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.