웹 시스템 보안 체크리스트: 공공 프로젝트 기준

공공 프로젝트에서 웹 시스템을 구축할 때 보안 요구사항은 필수 통과 조건입니다. 보안 취약점 점검에서 자주 지적되는 항목과 대응 방법을 정리합니다.

필수 점검 항목

행정안전부 「전자정부 SW 개발·운영자를 위한 소프트웨어 개발보안 가이드」와 OWASP Top 10을 기준으로 합니다.

1. 입력값 검증

취약점대응
SQL InjectionPrepared Statement, ORM 사용
XSS (Cross-Site Scripting)출력 시 HTML 이스케이프, CSP 헤더
Command Injection외부 명령 실행 금지, 화이트리스트 검증
Path Traversal파일 경로 정규화, 상위 디렉토리 접근 차단

2. 인증 및 세션 관리

  • 비밀번호 정책: 최소 8자, 영문+숫자+특수문자 조합
  • 비밀번호 저장: bcrypt, scrypt, PBKDF2 등 단방향 암호화
  • 세션 타임아웃: 30분 이내 자동 로그아웃
  • 세션 고정 공격 방지: 로그인 시 세션 ID 재생성
  • 다중 로그인 제어: 동시 접속 제한 또는 알림

3. 권한 관리

  • 최소 권한 원칙: 필요한 권한만 부여
  • RBAC (역할 기반 접근제어): 관리자, 담당자, 일반 사용자 분리
  • URL 직접 접근 차단: 권한 없는 페이지 접근 시 403 또는 리다이렉트
  • 민감 기능 이중 인증: 삭제, 승인 등 주요 기능에 재인증

4. 데이터 암호화

  • 전송 구간: TLS 1.2 이상 (SSL 3.0, TLS 1.0/1.1 비활성화)
  • 저장 데이터: 개인정보, 비밀번호는 암호화 저장
  • 암호화 키 관리: 키 분리 보관, 정기 교체

5. 로깅 및 모니터링

  • 감사 로그: 로그인, 권한 변경, 데이터 수정/삭제 기록
  • 로그 보존: 최소 6개월~1년 (법령에 따라)
  • 로그 무결성: 로그 위변조 방지
  • 이상 탐지: 반복 로그인 실패, 대량 다운로드 알림

보안 점검 일정

시점점검 항목
설계 단계보안 요구사항 정의, 위협 모델링
개발 중시큐어 코딩 가이드 준수, 코드 리뷰
테스트 단계모의해킹, 취약점 스캔
오픈 전보안성 검토 (공공기관 필수)
운영 중정기 취약점 점검, 패치 관리

공공/기업 웹 시스템 구축을 검토 중이시라면, 아토즈소프트의 웹 개발 서비스를 확인해 보세요.


코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다