인가와 입력 처리를 코드로 지키기
객체 소유와 관리자 기능 권한, 허용 필드와 스키마 검증, 매개변수 질의, 출력 인코딩과 CSP, 파일 경로 한정, 외부 URL 허용 목록을 다룹니다. 실습마다 작은 서비스의 보안 요구사항을 단위 시험으로 먼저 쓰고, 그 시험이 통과하도록 코드를 고친 뒤, 기존 기능이 그대로인지와 감사 로그를 확인합니다. 마지막에는 여러분의 시험이 그럴듯하지만 틀린 수정을 붙잡는지 채점기가 확인합니다.
중급 · 레슨 18 · 실습 6
커리큘럼
객체 소유와 관리자 기능 권한
허용 필드만 받기와 스키마 검증
- 본문을 붓지 않고, 모양을 확인하고 받는다 reading
- 본문을 붓지 말고 정한 필드만 받는다 lab
- 퀴즈: 허용 필드만 받기와 스키마 검증 quiz
매개변수 질의와 정렬 허용 목록
- 값과 문장을 섞지 않는다 reading
- 검색어는 데이터로, 정렬은 허용 목록에서 lab
- 퀴즈: 매개변수 질의와 정렬 허용 목록 quiz
출력 인코딩과 CSP
- 글자는 글자로, 스크립트는 정한 곳에서만 reading
- 사용자 글자는 글자로, 스크립트는 정한 곳에서만 lab
- 퀴즈: 출력 인코딩과 CSP quiz
파일 경로를 기준 디렉터리 안으로
- 문자열이 아니라 실제 경로로 판단한다 reading
- 링크를 따라간 실제 경로로 판단한다 lab
- 퀴즈: 파일 경로를 기준 디렉터리 안으로 quiz