CS - 악성 콘텐츠 ■ 점검내용 게시판 등에 악성 콘텐츠 삽입 및 실행 여부 점검 ■ 점검목적 사이트 내 악의적인 콘텐츠 삽입 및 실행을 방지하기 위함 ■ 보안위협 웹 사이트 게시판, 댓글, 자료실 등에 정상적인 콘텐츠 대신 악성 콘텐츠를 주입하여 실행될 경우 사용자가 해당 콘텐츠 열람 시 악성코드 감염 및 웹 페이지 변조 등 보안상 심각한 위험에 노출될 수 있음 ■ 참고 ※ 기반시설 특성상 원칙적으로 업로드 기능을 제한해야 하나 꼭 사용해야 하는 경우 특정 사용자만 허용된 확장자의 콘텐츠 파일을 업로드 할 수 있게 구현 필요※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케이션 소스코드, 웹 방화벽 양호악의적 콘텐츠가 실행되지 않는 경우 취약악의적 콘텐츠가 입력되며, 실..
LI - LDAP 인젝션 ■ 점검내용 웹페이지 내 LDAP 인젝션 취약점 점검 ■ 점검목적 취약한 시스템에 신뢰할 수 없는 LDAP 코드 삽입 공격을 통한 비인가자의 악의적인 행위를 차단하기 위함 ■ 보안위협 응용 프로그램이 사용자 입력 값에 대한 적절한 필터링 및 유효성 검증을 하지 않아 공격자는 로컬 프록시를 사용함으로 LDAP 문의 변조가 가능함 공격 성공 시 승인되지 않은 쿼리에 권한을 부여하고, LDAP 트리 내의 내용 수정이나 임의의 명령 실행을 가능하게 하므로 적절한 필터링 로직을 구현하여야 함 ■ 참고 ※ LDAP 인젝션: 사용자 입력을 기반으로 LDAP(Lightweight Directory Access Protocol)구문을 구축하여 웹 기반 응용 프로그램을 악용하는 데 사용되는 공격※..
XS - 크로스사이트 스크립팅 ■ 점검내용 웹 사이트 내 크로스사이트 스크립팅 취약점 존재 여부 점검 ■ 점검목적 웹 사이트 내 크로스사이트 스크립팅 취약점을 제거하여 악성 스크립트의 실행을 차단 ■ 보안위협 웹 애플리케이션에서 사용자 입력 값에 대한 필터링이 제대로 이루어지지 않을 경우, 공격자는 사용자 입력 값을 받는 게시판, URL 등에 악의적인 스크립트(Javascript, VBScript, ActiveX, Flash 등)를 삽입하여 게시글이나 이메일을 읽는 사용자의 쿠키(세션)를 탈취하여 도용하거나 악성코드 유포 사이트로 Redirect 할 수 있음 ■ 참고 ※ 크로스사이트 스크립팅: 악의적인 사용자가 공격하려는 사이트에 스크립트를 넣는 기법으로 공격 방식은 크게 stored 공격 방식과 ref..
XI - XPath 인젝션 ■ 점검내용 웹페이지 내 조작된 XPath 쿼리 공격 가능성 점검 ■ 점검목적 XPath 쿼리에 대한 적절한 필터링을 적용하여 웹 사이트의 로직 손상 및 특정 데이터 추출을 차단하기 위함 ■ 보안위협 해당 취약점이 존재할 경우 프로그래머가 의도하지 않았던 문자열을 전달하여 쿼리문의 의미를 왜곡시키거나 그 구조를 변경하고 임의의 쿼리를 실행하여 인가되지 않은 데이터를 열람할 수 있으므로 적절한 필터링 로직 구현이 필요함 ■ 참고 ※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케이션 소스코드, 웹 방화벽 양호쿼리 입력 값에 대해 검증이 이루어지는 경우 취약쿼리 입력 값에 대해 검증이 이루어지지 않는 경우 ■ 조치방법 쿼리 입력 값에 대해 검증 로직 ..
BO - 버퍼 오버플로우 ■ 점검내용 사용자가 입력한 파라미터 값의 문자열 길이 제한 확인 ■ 점검목적 웹 사이트에서 사용자가 입력한 파라미터 값의 문자열 길이 제한 여부를 점검하여 비정상적 오류 발생을 차단하기 위함 ■ 보안위협 웹 사이트에서 사용자가 입력한 파라미터 값의 문자열 길이를 제한하지 않는 경우 개발 시에 할당된 저장 공간보다 더 큰 값의 입력이 가능하고 이로 인한 오류 발생 시 의도되지 않은 정보 노출, 프로그램에 대한 비인가접근 및 사용 등이 발생할 수 있음 ■ 참고 ※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케이션 소스코드 양호파라미터 값에 다량의 다양한 포맷 문자열 입력 시 에러 페이지나 오류가 발생하지 않는 경우 취약파라미터 값에 대한 검증 미흡으..
AU - 자동화 공격 ■ 점검내용 웹 애플리케이션의 특정 프로세스(로그인 시도, 게시글 등록, SMS 발송 등)에 대한 반복적인 요청 시 통제 여부 확인 ■ 점검목적 무차별 대입 공격 및 자동화 공격으로 웹 애플리케이션에 자원이 고갈되는 것을 방지하기 위함 ■ 보안위협 웹 애플리케이션의 특정 프로세스에 대한 반복적인 요청을 통제하지 않을 경우 무차별 대입 공격으로 인해 사용자 계정을 탈취할 수 있고, 자동화 공격으로 게시글 등록 또는 SMS 발송 요청을 반복하여 웹 애플리케이션 자원을 고갈시킬 수 있음 ■ 참고 ※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케이션 소스코드, 웹 방화벽 양호웹 애플리케이션의 특정 프로세스에 대한 반복적인 요청 시 통제가 적절한 경우 취약웹 ..
FU - 파일 업로드 ■ 점검내용 웹 사이트의 게시판, 자료실 등에 조작된 Server Side Script 파일 업로드 및 실행 가능 여부 점검 ■ 점검목적 업로드되는 파일의 확장자에 대한 적절성 여부를 검증하는 로직을 통해 공격자가 조작된 Server Side Script 파일 업로드 방지 및 서버상에 저장된 경로를 유추하여 해당 Server Side Script 파일 실행을 불가능하게 하기 위함 ■ 보안위협 해당 취약점이 존재할 경우 공격자는 조작된 Server Side Script 파일을 서버에 업로드 및 실행하여 시스템 관리자 권한 획득 또는 인접 서버에 대한 침입을 시도할 수 있음 ■ 참고 ※ Server Side Script: 웹에서 사용되는 스크립트 언어 중 서버 측에서 실행되는 스크립트※..
PV - 프로세스 검증 누락 ■ 점검내용 인증이 필요한 웹 사이트의 중요(관리자 페이지, 회원변경 페이지 등) 페이지에 대한 접근제어 설정 여부 확인 ■ 점검목적 인증이 필요한 모든 페이지에 대해 유효 세션임을 확인하는 프로세스 및 주요 정보 페이지에 접근 요청자의 권한 검증 로직을 적용하여, 비인가자가 하위 URL 직접 접근, 스크립트 조작 등의 방법으로 중요한 페이지에 접근을 시도하는 것을 차단하기 위함 ■ 보안위협 인증이 필요한 웹 사이트의 중요(관리자 페이지, 회원변경 페이지 등) 페이지에 대한 접근 제어가 미흡할 경우 하위 URL 직접 접근, 스크립트 조작 등의 방법으로 중요한 페이지에 대한 접근이 가능함 ■ 참고 ※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케..
PR - 취약한 패스워드 복구 ■ 점검내용 웹 사이트 내 패스워드 복구 절차의 적절성 점검 ■ 점검목적 패스워드 복구 로직을 유추하기 어렵게 구현하고, 인증된 사용자 메일이나 SMS에서만 복구 패스워드를 확인할 수 있도록 하여 비인가자를 통한 사용자 패스워드 획득 및 변경을 방지하기 위함 ■ 보안위협 취약한 패스워드 복구 로직(패스워드 찾기 등)으로 인하여 공격자가 불법적으로 다른 사용자의 패스워드를 획득, 변경할 수 있음 ■ 참고 ※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케이션 소스코드 양호패스워드 재설정 시 난수를 이용하여 재설정되고 인증된 사용자 메일이나 SMS로 재설정된 패스워드 혹은 패스워드 재설정을 위한 링크 전송 시 취약패스워드 재설정 시 일정 패턴으로 ..
FD - 파일 다운로드 ■ 점검내용 웹 사이트에서 파일 다운로드 시 허용된 경로 외 다른 경로의 파일 접근이 가능한지 여부 점검 ■ 점검목적 파일 다운로드 시 허용된 경로 외 다른 경로의 파일 접근을 방지하여 공격자가 임의의 위치에 있는 파일을 열람하거나 다운받는 것을 불가능하게 하기 위함 ■ 보안위협 해당 취약점이 존재할 경우 공격자는 파일 다운로드 시 애플리케이션의 파라미터 값을 조작하여 웹 사이트의 중요한 파일(DB 커넥션 파일, 애플리케이션 파일 등) 또는 웹 서버 루트에 있는 중요한 설정 파일(passwd, shadow 등)을 다운받을 수 있음cgi, jsp, php 등 파일 다운로드 기능을 제공해주는 애플리케이션에서 입력되는 경로를 검증하지 않는 경우 임의의 문자(../.. 등)나 주요 파일명..
IA - 불충분한 인증 ■ 점검내용 중요 페이지 접근 시 추가 인증 요구 여부 점검 ■ 점검목적 중요 페이지에 추가 인증으로 접근을 강화하여 불필요한 정보의 노출 및 변조를 차단하기 위함 ■ 보안위협 중요정보(개인정보 변경 등) 페이지에 대한 인증 절차가 불충분할 경우 권한이 없는 사용자가 중요정보 페이지에 접근하여 정보를 유출하거나 변조할 수 있으므로 중요정보 페이지에는 추가적인 인증 절차를 구현하여야 함 ■ 참고 ※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케이션 소스코드 양호중요정보 페이지 접근 시 추가 인증을 하는 경우 취약중요정보 페이지 접근에 대한 추가 인증을 하지 않는 경우 ■ 조치방법 중요정보 페이지에 대한 추가 인증 로직 추가 구현 점검 및 조치 방법 ..
OC - 운영체제 명령 실행 ■ 점검내용 웹 사이트 내 운영체제 명령 실행 취약점 존재 여부 점검 ■ 점검목적 적절한 검증절차를 거치지 않은 사용자 입력 값에 의해 의도하지 않은 시스템 명령어가 실행되는 것을 방지하기 위함 ■ 보안위협 해당 취약점이 존재하는 경우 부적절하게 권한이 변경되거나 시스템 동작 및 운영에 악영향을 줄 가능성이 있으므로 "|", "&", ";", "`" 문자에 대한 필터링 구현이 필요함 ■ 참고 ※ CVE/NVD - 공개적으로 알려진 취약점 검색 가능 http://cve.mitre.org/cve/search_cve_list.html https://nvd.nist.gov/vuln/search ※ 사용 중인 웹 서버 버전 확인, 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ..
SF - 세션 고정 ■ 점검내용 사용자 로그인 시 항상 일정하게 고정된 세션 ID 값을 발행하는지 여부 확인 ■ 점검목적 로그인할 때마다 예측 불가능한 새로운 세션 ID를 발행하여 세션 ID의 고정 사용을 방지하기 위함 ■ 보안위협 사용자 로그인 시 항상 일정하게 고정된 세션 ID가 발행되는 경우 세션 ID를 도용한 비인가자의 접근 및 권한 우회가 가능 ■ 참고 ※ 소스코드 및 취약점 점검 필요 점검대상 및 판단기준 ■ 대상 : 웹 애플리케이션 소스코드 양호로그인할 때마다 예측 불가능한 새로운 세션 ID가 발행되고, 기존 세션 ID는 파기될 경우 취약로그인 세션 ID가 고정 사용되거나 새로운 세션 ID가 발행되지만 예측 가능한 패턴으로 발행될 경우 ■ 조치방법 사용자가 로그인할 때마다 예측 불가능한 새..
FS - 포맷 스트링 ■ 점검내용 웹 애플리케이션에 포맷 스트링 취약점 존재 여부 점검 ■ 점검목적 공격자의 포맷 스트링 취약점을 통한 악의적인 행위를 차단하기 위함 ■ 보안위협 C언어로 만드는 프로그램 중 변수의 값을 출력하거나 입력받을 때 입력받은 값을 조작하여 프로그램의 메모리 위치를 반환받아 메모리 주소를 변조하여 시스템의 관리자 권한을 획득할 수 있음 ■ 참고 ※ 포맷 스트링 버그(format string bug): printf 등의 함수에서 문자열 입력 포맷을 잘못된 형태로 입력하는 경우 나타나는 취약점으로 루트 권한을 획득하는 것도 가능함. 포맷 스트링의 종류에는 여러 가지가 있으며 그 중 C언어에서 일반적으로 Data(변수)를 입·출력문에서 일정한 형태로 받아들이거나 출력하기 위하여 사용하..