2023. 2. 23. 18:10ㆍ정처기 필기/5과목 - 정보시스템 구축 관리
Secure SDLC
* SDLC : 소프트웨어 개발 수명 주기로 개발 팀이 고품질 소프트웨어를 설계하고 구축하는 데 사용하는 비용 효율적이고 시간 효율적인 프로세스이다.
1. Secure SDLC 의 개요
- 보안상 안전한 소프트웨어를 개발하기 위해 SDLC에 보안 강화를 위한 프로세스를 포함한 것
- 요구사항 분석
- 설계
- 구현
- 테스트
- 유지보수
# 분설구테유
2. 보안 요소 #기무가 인부
- 기밀성
: 인가된 사용자에게만 접근 허용
: 전송중 노출되어도 정보를 읽을 수 없음
- 무결성
: 시스템 정보는 인가된 사용자만 수정할 수 있다.
- 가용성
: 인가받은 사용자는 언제라도 사용 가능
- 인증
: 사용자가 합법적인지 확인하는 모든 행위
- 부인 방지
: 증거 제공
소프트웨어 개발 보안 구축
# 세입보시 에코캡A
세션 통제 | - 잘못된 세션에 의한 정보 노출 - 불충분한 세션 관리 |
입력 데이터 검증 및 표현 | - SQL 삽입, 경로 조작 및 자원 삽입, 크로스사이트 스크립팅(XSS), 신뢰되지 않는 URL 주소로 자동접속 연결, 위험한 형식 파일 업로드 |
보안 기능 | - 잘못된 권한 설정, 취약한 암호화 알고리즘 사용, 하드코드 된 암호화 키 사용 |
시간 및 상태 | - TOCTOU 경쟁조건, 무한반복문, 재귀문 |
에러처리 | - 오류 메시지를 통한 정보 노출, 부적절한 예외처리 |
코드 오류 | - 널 포인터 역참조, 부적절한 자원 헤제 |
캡슐화 | 잘못된 세션에 의한 데이터 정보 노출, 제거되지 않고 남은 디버그 코드 |
API 오용 | - 보안에 취약한 API 사용 |
1. 세션 설계시 고려 사항
- 모든 페이지에서 로그아웃이 가능하도록 UI 구성
- 로그아웃 요청 시 할당된 세션이 완전히 제거되도록 한다.
- 세션 타임아웃은 중요도가 높으면 2~5분, 낮으면 15~30분으로 설정
- 아직 세션이 종료되지 않았으면 새 세션이 생성되지 못하도록 설계
- 패스워드 변경 시 활성화된 세션을 삭제한 후 재할당
2. 세션 ID의 관리 방법
- 안전한 서버에서 최소 128비트의 길이로 생성
- 예측이 불가능하도록 안전한 난수 알고리즘 적용
- 노출되지 않도록 URL Rewrite 기능을 사용하지 않는 방향으로 설계
- 로그인 시 로그인 전의 세션 ID를 삭제하고 재할당
- 장기간 접속하고 있는 세션 ID는 주기적으로 재할당되도록 설계
3. 크로스 사이트 스크립팅(XSS : Cross - Site Scripting)
- 웹페이지에 악의적인 스크립트를 삽입해 방문자들의 세션 정보를 탈취하거나 바이러스를 유포한다.
- HTML 태그의 사용을 제한하거나 스크립트에 삽입되지 않도록 < > 등의 문자를 다른 문자로 치환함으로써 방지
4. 부적절한 자원 해제
- 자원을 반환하는 코드를 누락하거나 오류로 할당된 자원을 반환하지 못했을 때 발생하는 보완 약점
- 예외처리에 관계없이 자원이 반환되도록 코딩함으로 방지해야 한다.
'정처기 필기 > 5과목 - 정보시스템 구축 관리' 카테고리의 다른 글
보안 솔루션 / 서버 인증 / 로그 (0) | 2023.02.24 |
---|---|
암호 알고리즘 / 서비스 공격 유형 (0) | 2023.02.23 |
하드웨어 관련 신기술 / 데이터베이스 관련 신기술 (0) | 2023.02.23 |
네트워크 관련 신기술 / 소프트웨어 관련 신기술 (0) | 2023.02.23 |
Secure OS / 회복 및 병행제어, 데이터 표준화 (0) | 2023.02.23 |