본문 바로가기

카테고리 없음

웹 취약점 진단

취약점 분석/평가 기본항목

 코드

취약점명 

설명 

등급 

BO 

버퍼 오버플로우 

메모리나 버퍼의 블록크기보다 더 많은 데이터를 넣음으로써 결함을 발생시키는 취약점 

상 

FS 

포맷 스트링 

스트링을 처리하는 부분에서 메모리공간에 접근할 수 있는 문제를 이용하는 취약점 

상 

LI 

LDAP 인젝션 

LDAP(Lightweight Directory Access Protocol) 쿼리를 주입함으로서 개인정보 등의 내용이 유출될 수 있는 문제를 이용하는 취약점 

상 

OC 

운영체제 명령 실행 

웹사이트의 인터페이스를 통해 웹 서버를 운영하는 운영체제 명령을 실행하는 취약점 

상 

SI 

SQL Injection 

SQL 문으로 해석 될 수 있는 입력을 시도하여 데이터베이스에 접근할 수 있는 취약점 

상 

SS 

SSI Injection 

SSI(Server-Side Include) 는 Last Modified와 같이 서버가 HTML 문서에 입력하는 변수 값으로 웹서버상에 있는 파일을 include 시키고, 명령문이 실행되게 하여 데이터에 접근 할 수 있는 취약점 

상 

XI 

XPath 인젝션 

조작된 XPath(XML Path Language)쿼리를 보냄으로써 비정상적인 데이터를 쿼리해 올 수 있는 취약점 

상 

DI 

디렉터리 엔덱싱 

요청 파일이 존재하지 않을 때 자동적으로 디렉터리 리스트를 출력하는 취약점  

상 

IL

정보누출 

웹 사이트 데이터가 노출되는 것으로 개발과정의 코멘트나 오류 메세지 등에서 중요한 정보가 노출되어 공격자에게 2차 공격을 하기 위한 중요한 정보를 제공할 수 있는 취약점 

상 

CS 

악성콘텐츠 

웹애플리케이션에 정상적인 컨텐츠 대신에 악성 컨텐츠를 주입하여 사용자에게 악의적인 영향을 미치는 취약점 

상 

XS 

크로스사이트 스크립팅

웹 애플리케이션을 사용해서 다른 최종 사용자의 클라이언트에서 임의의 스크립트가 실행되는 취약점 

상 

BF 

약한 문자열 강도 

사용자의 이름이나 패스워드, 신용카드 정보나 암호화 키등을 자동으로 대입하여 여러 시행착오 후에 맞는 값이 발견되는 취약점

상 

IA 

불충분한 인증 

민감한 데이터에 접근 할 수 있는 곳에 취약한 인증 메커니즘으로 구현된 취약점 

상 

PR 

취약한 패스워드 복구 

취약한 패스워드 복구 메커니즘(패스워드 찾기 등)에 대해 공격자가 불법적으로 다른 사용자의 패스워드를 획득, 변경, 복구할 수 있는 취약점 

상 

CF 

크로스 사이트

요청변조(CSRF) 

CSRF 공격은 로그온한 사용자 브라우저로 하여금 사용자의 세션 쿠키와 기타 인증 정보를 포함하는 위조된 HTTP 요청을 취약한 웹애플리케이션에 전송하는 취약점 

상 

SE 

세션 예측 

단순히 숫자가 증가하는 방법 등의 취약한 특정 세션의 식별자 (ID) 를 예측하여 세션을 가로챌 수 있는 취약점 

상 

IN 

불충분한 인가 

민감한 데이터 또는 기능에 대한 접근권한 제한을 두지 않은 취약점 

상 

CS 

불충분한 세션만료

세션의 만료 기간을 정하지 않거나, 만료일자를 너무 길게 설정하여 공격자가 만료되지 않은 세션 활용이 가능하게되는 취약점 

상 

SF 

세션고정 

세션값을 고정하여 명확한 세션 식별자(ID)값으로 사용자가 로그인하여 정으된 세션 식별자가사용 가능하게 되는 취약점

상 

AU 

자동화 공격 

웹애플리케이션에 정해진 프로세스에 자동화된 공격을 수행함으로써 자동으로 수많은 프로세스가 진행되는 취약점 

상 

PV 

프로세스 검증 누락 

공격자가 응용의 계획된 플로우 통제를 우회하는것을 허가하는 취약점 

상 

FU 

파일 업로드 

파일을 업로드 할 수 있는 기능을 이용하여 시스템 명령어를 실행 할 수 있는 웹 프로그램을 업로드 할 수 있는 취약점 

상 

FD 

파일 다운로드 

파일 다운로드 스크립트를 이용하여 시스템 명령어를 실행할 수 있는 웹프로그램을 업로드 할 수 있는 취약점 

상 

AE 

관리자 페이지 노출 

단순한 관리자 페이지 이름(admin, manager 등)이나 설정, 프로그램 설계상의 오류로 인해 관리자 메뉴에 직접 접근할 수 있는 취약점 

상 

PT 

경로추적 

공격자에게 외부에서 디렉터리에 접근 할 수 있는것이 허가되는 문제점으로 웹 루트 디렉터리에서 외부의 파일까지 접근하고 실행할 수 있는 취약점 

상 

 PL

 위치공개

예측 가능한 디렉터리나 파일명을 사용하여 해당 위치가 쉽게 노출되어 공격자가 이를 악용하여 대상에 대한 정보와 민감한 정보가 담긴 데이터에 접근이 가능하게 되는 취약점 

상 

SN 

데이터 평문 전송 

서버와 클라이언트간 통신 시 암호화하여 전송을 하지 않아 중요정보 등이 평문으로 전송되는 취약점 

상 

CC 

쿠키변조 

 적절히 보호되지 않은 쿠키를 사용하여 쿠키 인젝션 등과 같은 쿠키 값 변조를 통한 다른 사용자로의 위장 및 권한 상승 등이 가능한 취약점

상 

 

조치방안

 취약점 명

대응방안 

운영체제 명령 실행 

 허용 가능한 명령어를 지정해서 지정된 명령어만 실행할 수 있도록 수행

SQL 인젝션 

 웹 방화벽에서 모든 사용자 입력폼을 대상으로 특수문자, 특수구문 필터링 규칙 적용

XPath 인젝션 

 웹 방화벽에서 모든 사용자 입력폼을 대상으로 특수문자, 특수구문 필터링 규칙 적용

 정보누출

 개발단계에서 작성된 주석 제거, 모든 에러코드에대해 통합 에러페이지로 리다이렉트 설정

악성콘텐츠 

 웹 방화벽에서 모든 사용자 입력폼을 대상으로 특수문자, 특수구문 필터링 규칙 적용

크로스 사이트 스크립팅(XSS)

 웹 방화벽에서 모든 사용자 입력폼을 대상으로 특수문자, 특수구문 필터링 규칙 적용

 JAVA 내장함수인 replaceAll 메소드를 사용하여HTML 태그 실행에 사용되는 문자열을 치환

약한 문자열강도 

 비밀번호 설정시 영문자,숫자,특수문자가 반드시 하나씩 존재하도록 설정, 로그인시 아이디와 패스워드에 따라 다르게 출력되는 팝업창 금지 (계정 유추 가능) 일관성있는 팝업창 출력

불충분한 인증 및 인가 

로그인한 사용자들의 아이디 정보를 세션에 저장하여 세션에 저장된 아이디 값과 전달된 파라미터 값을 비교하여 사용자 검증을 할수 있도록 설정해야함 

 취약한 패스워드 복구

 사용자 비밀번호 찾기시 DB 에 저장되어 있는 사용자정보와 입력한 사용자정보의 일치성 검사

찾은 비밀번호는 웹페이지에 노출시키지 않고 개인 이메일이나 SMS를 통해 전달되어야 함

 불충분한 세션 관리

 로그인시 세션값을 검증하고 저장소에 저장, 저장소에 존재하는 세션의 계정은 중복 접속 할 수 없도록 설정

크로스 사이트 요청변조(CSRF) 

 예측할수 없는 임의의 토큰을  추가하여 정상적인 요청과 비정상적인 요청을 판별하는 것을 권장하며 추가적으로 XSS와 공격 방식이 유사 하기 때문에 비슷한 방식의 대응 설정

자동화 공격

웹 방화벽에서 특정 시간내에 동일한 프로세스가 반복실행되지 않도록 시간 제한을 설정

다량의 패킷이 유입될 경우 차단 설정

로그인관련 테이블에 로그인 시도 횟수를 저장하는 컬럼을 추가하여 횟수를 검증하며 일정 횟수 이상은 차단시켜버림

파일 업로드

화이트리스트 정책을 활용 , 허용가능한 파일 확장자 목록 설정

파일 업로드시 업로드 시간이나 특수한 규칙을 사용하여 파일명을 변경시켜 공격자가 업로드 된 파일을 경로상에서 찾지 못하게 하는방법을 사용

경로추적 및 파일 다운로드

파일 다운로드시 상위경로로 접근되지 않도록 권한 설정

파라미터 변수에 null여부 체크 및 상대경로를 설정할수 있는 문자(/, \\, &, .등)가 존재할 경우 파일다운로드가 불가능 하도록 설정

 데이터 평문전송

 SSL(클라이언트와 서버간의 정보를 암호화)등의 암호화 통신을 적용

쿠키변조 

 웹 어플리케이션 운영시 쿠키 방식대신 세션방식을 사용

URL/파라미터 변조 

  서버로 전송된 입력값으리 경우 세션 및 데이터베이스와 비교하여 데이터가 변조되었는지 검증할 수 있는 과정