CS All in One
NETWORKS문제집공식 자료실

NETWORKS · CHAPTER 04

중급 · 45

웹 보안의 기본

신뢰 경계와 입력 검증

인증·인가·입력 검증을 구분하고 대표 취약점을 예방한다.

CONCEPTS

개념을 문장으로 설명하기

01

인증과 인가

인증은 ‘누구인가’를 확인하고, 인가는 ‘무엇을 해도 되는가’를 판단합니다.

예시

로그인은 인증, 관리자만 성적을 수정하게 하는 것은 인가입니다.

CHECK둘을 같은 체크로 처리하지 않는다.
02

입력 검증

사용자가 보낸 값은 신뢰하지 않고 형식·범위·권한을 서버에서 확인하는 원칙입니다.

예시

프론트엔드에서 버튼을 숨겨도 API의 권한 검증을 생략할 수 없습니다.

CHECK클라이언트 검증은 UX, 서버 검증은 보안이다.
03

출력 인코딩

데이터를 HTML·URL·SQL 등 문맥에 맞게 안전하게 표현하는 처리입니다.

예시

사용자 글을 HTML에 넣을 때 태그로 실행되지 않게 이스케이프합니다.

CHECK문자열 연결 SQL 대신 파라미터를 쓴다.

GUIDED PRACTICE

성적 수정 요청 방어

POST /grades/11 요청에 studentId와 score가 들어옵니다.

  1. 세션·토큰으로 요청자를 인증합니다.
  2. 요청자가 해당 성적을 수정할 권한이 있는지 서버에서 확인합니다.
  3. score의 범위와 타입을 검증하고, 쿼리는 파라미터 바인딩으로 실행합니다.
결론

UI 제한만으로는 부족하며 API 경계마다 인증·인가·검증을 반복해야 합니다.

ACTIVE RECALL · 4 STEPS

가리고, 말하고, 확인하기

읽기만 하지 말고 답을 떠올린 뒤 펼쳐 보세요.

0/4 회상 완료

01 · 정의 회상

“인증과 인가”을(를) 보지 않고 한 문장으로 정의해 보세요.

02 · 비교 설명

“입력 검증”이(가) 필요한 상황을 예시와 함께 설명해 보세요.

03 · 핵심 점검

문자열 연결 SQL 대신 파라미터를 쓴다.

04 · 풀이 재현

“성적 수정 요청 방어”의 결론을 보기 전에 풀이 순서를 3단계로 다시 적어 보세요.

WORKBOOK · STEP BY STEP

개념 확인 문제

정답을 고르고 해설로 사고 과정을 확인하세요.

기록 불러오는 중
01

‘관리자인가?’를 확인하는 것은?

02

SQL Injection을 줄이는 가장 적절한 방법은?

03

클라이언트 측 입력 검증만으로 충분하지 않은 이유는?

SPEAK IT OUT

면접 1분 답변 연습

인증과 인가의 차이, 그리고 서버 측 입력 검증이 필요한 이유를 설명해 보세요.

답변할 때는 정의 → 이유 → 짧은 예시 순서로 말해 보세요.

공식·표준 자료로 더 읽기

OWASP · Input Validation Cheat Sheet원문 열기 ↗입력 검증을 실무적으로 점검하는 공개 보안 가이드입니다.