웹 취약점 분석 기술

I. 최근 웹 취약점 주요 공격 기법

  • 웹취약점 분석 결과 SQL Injection 공격과 XSS 공격이 다수이므로 면밀한 취약점 분석이 필요

 

II. 웹 취약점 발견을 위한 정적/동적 분석 기술

가. 정적 분석 기술

구분설명
개념소프트웨어가 실행되지 않는 환경에서 소스코드 의미 분석 기반 취약점 탐지 기법
특징– 소프트웨어 미실행 기반 분석
– 실행 보다 구현에 초점
주요
기법
소스코드 검증– 검증 가이드라인 기반 보안 조치
– 조치 내역 확인
코드 리뷰– 코드 개발자 외 다른 개발자 검토
– Peer Review, 동료 검토, 제3자 검토
역공학– S/W 기술적 원리 기반 구조 분석
– 정적 역공학 분석툴(IDA Pro) 이용
분석
도구
Coverity Prevent– 코딩/빌드 과정 중 버그, 취약점 탐지
– 품질분석, 보안 취약점 분석, 오류 분석
SSEn– 국내 기술로 개발한 점검 도구
Fortify– 다양한 언어와 플랫폼 지원
– 개발 소스에 대한 취약점 탐지
  • 정적 분석은 코드 입력 값의 유효성 측면에서 점검 수행하며 검증 통과 시 미탐의 위험 발생

나. 동적 분석 기술

구분설명
개념실행 과정에서 다양한 입출력 데이터와 변화, 사용자 상호 작용에 따라 변화 점검
특징– 소프트웨어를 실행하며 분석
– 실행 과정 및 결과에 초점
주요
기법
디버깅– 컴퓨터 프로그램 정확성 탐지
– 논리적 오류나 취약점 탐지 기법
모의 해킹– 실제 해킹 도구 사용 침투 가능성 진단
– 침투 가능성 진단
역공학– S/W 기술적 원리 구조 분석
– 동적 역공학 분석톨(OllyDGB) 사용
분석
도구
App SCAN– 웹 어플리케이션 분석 전문
– 보안 결함 스캔 밑 테스트
취약 스캐너– 다양한 취약점 자동 분석
– SQL Injection XSS 등 취약점 검사
  • 웹 프레임워크, 정적/동적 혼용, 기계 학습 분석 방법 있음

 

III. 정적 분석, 동적 분석 관계 및 SQL Injection

가. 정적 분석과 동적 분석과의 관계

  • 정적 분석의 결과를 통해 동적 분석 시 활용하면서 동적 분석 시 발견된 취약점에 대해 안전성 제고 가능

나. SQL Injection 사례

  • 동적 분석 결과의 문제에 대해 실제 문제가 되는 취약점 스택 정보, 소스코드 위치 확인
  • 하이브리드 분석 기법은 정적 / 동적 분석 기술과 유기적 결합 통해 오탐, 이탐 문제 개선

 

IV. 정적 분석의 단점 보완

정적 분석 시 단점보완 방법 (하이브리드)설명
– 컴포넌트간 취약점 관리 어려움– 런타임 동적 분석 연계– 컴포넌트 보안 취약점 보완
– 높은 오탐 및 미탐– 정/동적 결과와 매칭– 분석 결과에 대한 신뢰성
– 우선순위 부여– 동적 분석 결과와 연계– 수많은 취약점 우선순위 부여
– 취약점 분석 범위(Application)– 데이터 플로우 영역 대상 취약점– 네트워크 구간 동적 분석

 

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^