본문 바로가기
푸닥거리

소프트웨어 보안약점 진단가이드 2021.11

by [김경민]™ ┌(  ̄∇ ̄)┘™ 2022. 4. 8.
728x90

 

A. 설계단계 보안설계 기준
1. 입력데이터 검증 및 표현
1.1 DBMS 조회 및 결과 검증
1.2 XML 조회 및 결과 검증
1.3 디렉토리 서비스 조회 및 결과 검증
1.4 시스템 자원 접근 및 명령어 수행 입력값 검증
1.5 웹 서비스 요청 및 결과 검증
1.6 웹 기반 중요 기능 수행 요청 유효성 검증
1.7 HTTP 프로토콜 유효성 검증
1.8 허용된 범위내 메모리 접근
1.9 보안기능 입력값 검증
1.10 업로드·다운로드 파일 검증
2. 보안기능
2.1 인증 대상 및 방식
2.2 인증 수행 제한
2.3 비밀번호 관리
2.4 중요자원 접근통제
2.5 암호키 관리
2.6 암호연산
2.7 중요정보 저장
2.8 중요정보 전송
3. 에러처리
3.1 예외처리
4. 세션통제
4.1 세션 통제

 


B. 구현단계 보안약점 진단
1. 입력데이터 검증 및 표현
1.1. SQL 삽입
1.2. 코드삽입
1.3. 경로 조작 및 자원 삽입
1.4. 크로스사이트 스크립트
1.5. 운영체제 명령어 삽입
1.6. 위험한 형식 파일 업로드
1.7. 신뢰되지 않는 URL 주소로 자동접속 연결
1.8. 부적절한 XML 외부개체 참조
1.9. XML 삽입
1.10. LDAP 삽입
1.11. 크로스사이트 요청 위조
1.12. 서버사이드 요청 위조
1.13. HTTP 응답분할
1.14. 정수형 오버플로우
1.15. 보안기능 결정에 사용되는 부적절한 입력값
1.16. 메모리 버퍼 오버플로우
1.17. 포맷 스트링 삽입
2. 보안기능
2.1. 적절한 인증 없는 중요기능 허용
2.2. 부적절한 인가
2.3. 중요한 자원에 대한 잘못된 권한 설정
2.4. 취약한 암호화 알고리즘 사용
2.5. 암호화되지 않은 중요정보
2.6. 하드코드된 중요정보
2.7. 충분하지 않은 키 길이 사용
2.8. 적절하지 않은 난수 값 사용
2.9. 취약한 비밀번호 허용
2.10. 부적절한 전자서명 확인
2.11. 부적절한 인증서 유효성 검증
2.12. 사용자 하드디스크에 저장되는 쿠키를 통한 정보 노출
2.13. 주석문 안에 포함된 시스템 주요정보
2.14. 솔트 없이 일방향 해쉬 함수 사용
2.15. 무결성 검사 없는 코드 다운로드
2.16. 반복된 인증시도 제한 기능 부재
3. 시간 및 상태
3.1. 경쟁조건: 검사 시점과 사용 시점(TOCTOU)
3.2. 종료되지 않는 반복문 또는 재귀 함수
4. 에러처리
4.1. 오류 메시지 정보노출
4.2. 오류상황 대응 부재
4.3. 부적절한 예외 처리
5. 코드오류
5.1. Null Pointer 역참조
5.2. 부적절한 자원 해제
5.3. 해제된 자원 사용
5.4. 초기화되지 않은 변수 사용
5.5. 신뢰할 수 없는 데이터의 역직렬화
6. 캡슐화
6.1. 잘못된 세션에 의한 데이터 정보 노출
6.2. 제거되지 않고 남은 디버그 코드
6.3. Public 메소드부터 반환된 Private 배열
6.4. Private 배열에 Public 데이터 할당
7. API 오용
7.1. DNS lookup에 의존한 보안결정
7.2. 취약한 API 사용

 

 

 

 

 

출처: https://www.kisa.or.kr/2060204/form?postSeq=9&page=1 

 

KISA 한국인터넷진흥원

 

www.kisa.or.kr

 

728x90

댓글