SECURITY CH4
시큐어 코딩 핵심 원칙
시큐어 코딩은 개발 단계에서 입력, 출력, 인증, 데이터 처리, 운영 기록까지 취약점이 생기지 않도록 설계하는 방법입니다.
Input
입력값 검증
형식, 길이, 범위, 파일 속성을 서버에서 확인합니다.
Output
출력값 인코딩
사용자 입력이 코드로 실행되지 않게 문맥별로 처리합니다.
Access
인증·인가
로그인과 자원 소유권을 서버에서 매 요청 확인합니다.
Operate
오류·로그·권한
상세 오류를 숨기고 보안 이벤트를 기록하며 최소권한을 둡니다.
SQL Injection
SQL 구조와 입력값이 섞이는 문제
Prepared Statement
XSS
출력 위치에서 스크립트로 실행되는 문제
문맥별 인코딩
IDOR
객체 ID 조작으로 타인 자원 접근
서버 측 인가