가. 취약점 개요 - 취약한 패스워드를 사용할 수 있을 경우, 무차별 대입공격을 통해 패스워드가 누출될 수 있는 취약점 → 취약한 비밀번호 허용 - 패스워드 복구 메커니즘이 취약 시, 다른 사용자의 패스워드를 획득/변경/복구가 가능한 취약점 → (취약한 비밀번호 복구) - 하드코드된 패스워드로 내부인증을 하거나, 통신할 경우, 관리자 정보가 노출될 수 있는 취약점 → 하드코드된 비밀번호 나. 요구사항 1. KISA 암호화 정책수립기준의 패스워드 설정 규칙을 적용 2. 패스워드 전송 시 암호화처리 또는 암호화 통신 이용 3. 패스워드 저장 시 솔트가 적용된 안전한 해쉬함수 사용 4. 패스워드 재설정/변경 시 안전하게 변경할 수 있는 규칙 정의 5. 패스워드 관리규칙을 정의 다. 요구사항 별 고려사항 1. ..
가. 취약점 개요 - 로그인 시도 횟수 초과 시 계정 보호조치가 설정되지 않을 경우 패스워드 무작위 대입공격이 시도될 수 있는 취약점 → 반복된 인증시도 제한 기능 부재 나. 요구사항 1. 제한된 로그인 인증시도 초과 시 인증제한 정책 적용 2. 실패한 인증시도에 대한 정보를 로깅 다. 요구사항 별 고려사항 1. 제한된 로그인 인증시도 초과 시 인증제한 정책 적용 - 로그인 인증시도 횟수를 3~5회 이내로 제한 - 인증시도 초과 시 추가 입력값, 자동입력방지 문자(CAPTCHA) 요청 또는 계정잠금 2. 실패한 인증시도에 대한 정보를 로깅 - 반복된 로그인 실패에 대한 로깅정책 설정 - 로그 기록을 통해 로그인 시도를 분석할 수 있도록 설계 - 사용자 DB테이블에 실패횟수, 잠금상태, 마지막 성공/실패 ..
가. 취약점 개요 - 중요기능/리소스 요청 시 인증여부를 확인하지 않고 요청 처리 시 중요정보나 리소스가 노출되는 취약점 → 적절한 인증없는 중요기능 허용 → (DNS Lookup에 의존한 보안결정) 나. 요구사항 1. 중요기능/리소스는 "인증 후 사용" 정책을 적용 2. 안전한 인증방식을 사용하여 인증우회나 권한상승 방지 3. 중요기능에 대해 2단계 인증을 고려 다. 요구사항 별 고려사항 1. 중요기능/리소스는 "인증 후 사용" 정책을 적용 - 중요기능을 분류 후 일괄적으로 인증을 요구하도록 설계 - 중앙집중 식 인증이 되도록 설계 2. 안전한 인증방식을 사용하여 인증우회나 권한상승 방지 - 인증정보는 서버 측에 저장 및 서버에서 인증여부를 확인 - 일회용 패스워드 적용 시 타 서비스/시스템과의 연동이..
가. 취약점 개요 - 서버측에서 실행될 수 있는 스크립트 파일을 업로드 및 직접실행시킬 수 있을 경우 내부명령어 실행 및 시스템 제어가 가능한 취약점 → 위험한 형식 파일 업로드 - 외부입력값에 경로조작이 가능한 문자를 필터링하지 않으면 시스템 정보노출, 서비스 장애 등을 유발할 수 있는 취약점 → (경로조작 문자를 이용한 파일 다운로드 취약점) - 원격으로부터 소스코드 또는 실행파일을 무결성 검사없이 다운로드 및 실행하여, 호스트 서버 변조, DNS 스푸핑, 악성코드 실행을 유발하는 취약점 → 무결성 검사없는 코드 다운로드 나. 요구사항 1. 업로드 파일의 타입, 크기, 갯수, 실행권한을 제한 2. 업로드 된 파일은 외부에서 식별되지 않도록 구현 3. 파일 다운로드 요청 시 파일명 검증 4. 다운로드 ..
가. 취약점 개요 - 쿠키, 환경변수, 히든필드값을 검증없이 사용하여 사용자 권한, 역할을 나타내는 변수를 조작을 통해 권한상승을 유발하는 취약점 → 보안기능 결정에 사용되는 부적절한 입력값 - 정수형 변수가 허용된 가장 큰 값보다 더 커져서 실제 저장 값이 아주 작은 수이거나 음수로 만들어, 반복문 제어, 메모리 할당 및 복사 등의 조건으로 사용될 때 오버플로우를 유도할 수 있는 취약점 → 정수형 오버플로우 - 참조하는 객체가 NULL인 경우 발생하는 예외상황을 이용하여 추후 공격을 계획할 수 있는 취약점 → NULL Pointer 역참조 나. 요구사항 1. 사용자의 역할, 권한을 결정하는 정보는 서버에서 관리 2. 보안기능을 수행하는 함수의 인자에 대한 검증작업 수행 후 제한적으로 사용 3. 쿠키를 ..
가. 취약점 개요 - 스택이나 힙에 할당되는 메모리에 문자열 등의 최초 정의된 메모리 크기를 초과하여 경계갑을 넘는 데이터 또는 메모리를 읽는 취약점 → 버퍼 오버플로우 - 외부입력값에 포멧 문자열을 삽입하여 메모리 내용을 읽거나 쓰기를 통해 프로세스 권한을 취득하여 임의의 코드를 실행하는 취약점 → 포멧스트링 삽입 나. 요구사항 1. 메모리 버퍼의 경계값을 넘어서 메모리를 읽거나 저장하지 않도록 경계설정 및 검사를 수행 2. 메모리 버퍼오버플로우를 발생시킬 수 있는 취약한 API를 사용하지 않도록 통제 다. 요구사항 별 고려사항 1. 메모리 버퍼의 경계값을 넘어서 메모리를 읽거나 저장하지 않도록 경계설정 및 검사를 수행 - 구현단계에 안전한 함수 사용법의 설명을 작성 - 메모리 사용 시 경계값을 검사 ..
가. 취약점 개요 - 개행문자를 포함한 외부입력값이 HTTP 응답헤더에 포함되어 두 번째 응답에 악의적인 코드를 주입하여 XSS 공격을 하는 취약점 → HTTP 응답분할 - 입력값을 외부 사이트 주소로 이용 시 공격자가 사용자를 피싱 사이트 등의 위험한 URL로 접속 유도하는 취약점 → 신뢰되지 않은 URL주소로 자동접속 연결 나. 요구사항 1. 외부입력값을 쿠키 및 HTTP 헤더정보로 사용 시 응답분할을 방지하기 위해 필터링 후 사용 2. 외부입력값을 페이지 이동 URL로 사용 시 허용된 URL목록의 선택자로 사용되도록 구현 다. 요구사항 별 고려사항 1. 외부입력값을 쿠키 및 HTTP 헤더정보로 사용 시 응답분할을 방지하기 위해 필터링 후 사용 - HTTP 응답헤더에 삽입되는 외부입력값을 반드시 개행..
가. 취약점 개요 - 세션탈취, XSS 등을 통해 공격자가 의도한 행위를 인증된 사용자의 권한을 통해 실행되는 취약점 → 크로스사이트 요청위조 나. 요구사항 1. 전송되는 모든 요청에 정상적인 사용자의 유효한 요청인지 판별할 수 있도록 설계 다. 요구사항 별 고려사항 1. 전송되는 모든 요청에 정상적인 사용자의 유효한 요청인지 판별할 수 있도록 설계 - 정상적인 사용자의 정상적인 절차에 의한 요청인지 구분하기 위해 세션별 CSRF 토큰을 생성 및 전달하여 요청의 유효성을 검사 - CAPTCHA 등을 이용하여 사용자와 상호처리 가능한 기법을 통해 위조된 요청을 차단 - 중요기능 처리 시 재인증을 통해 실제 요청여부를 확인 라. 요구사항 별 진단기준 및 방법 0. 공통내용 - 요구사항 정의서에 보안요구항목에..
가. 취약점 개요 - 악의적인 스크립트를 포함하여 웹페이지를 열람하는 접속자의 권한으로 부적절한 스크립트를 실행하여 정보유출 등을 유도하는 취약점 → 크로스 사이트 스크립트 Reflected - 서버에 악의적인 스크립트를 포함한 정보를 저장 후 해당 정보를 조회하는 접속자의 권한으로 부적절한 스크립트를 실행하여 정보유출 등을 유도하는 취약점 → 크로스 사이트 스크립트 Stored 나. 요구사항 1. 사용자 입력값을 동적으로 응답페이지에 사용할 경우, XSS 필터링 수행 후 사용 2. DB조회 결과를 동적으로 응답페이지에 사용할 경우, XSS 필터링 수행 후 사용 다. 요구사항 별 고려사항 1. 사용자 입력값을 동적으로 응답페이지에 사용할 경우, XSS 필터링 수행 후 사용 - 필터를 이용한 입력값 검증 ..
가. 취약점 개요 - 시스템이 보호하는 자원에 임의로 접근하여 자원의 수정, 삭제, 정보노출, 시스템 충돌 등을 통해 권한획득, 설정파일 변경, 시스템 장애 등을 유발하는 취약점 → 경로조작 및 자원삽입 - 입력값에 의해 의도하지 않은 시스템 명령어를 실행하여 권한변경하거나 시스템 동작에 영향을 미치는 취약점 → 운영체제 명령어 삽입 나. 요구사항 1. 허가되지 않은 시스템자원이 사용되지 않도록 방지 2. 악의적인 명령어가 실행되지 않도록 방지 다. 요구사항 별 고려사항 1. 허가되지 않은 시스템자원이 사용되지 않도록 방지 - 입력값으로 리소스를 결정하는데 직접적으로 사용되지 않도록 설계 - 리소스 목록은 프로퍼티 또는 XML파일로 정의 - 경로조작을 일으킬 수 있는 특수기호( .., \, / ) 필터링..
- Total
- Today
- Yesterday