소프트웨어 취약점 보완
1. 소프트웨어 보안 문제가 지속적 증가이유: SW 연결성, 확장성(신장성), 복잡성
1.소프트웨어 보안테스팅
-위험분석: 보안 요구사항을 검토하고 보안 위험들을 식별하기 위해 설계 단계에서 수행
-정적분석: 구현단계에서 소스코드의 보안 약점을 수동으로 검사하는 과정, 소스 코드 검토를 통해 파악할 수 있는 이슈들은 병행성문제, 결점이 있는 비즈니스로직, 접근제어 문제, 백도어나 논리폭탄등의 악의적 코드 등
-퍼즈테스트 :SW취약점을 동적으로 분석하고 테스트하는 일련의 기법, 랜덤 데이터를 입력하여 SW 조직적 실패를 유발시켜 발생되는 예외,오류등을 분석하고 보안 취약점을 찾아냄,
1)네트워크퍼징:임의패킷을 각 네트워크 응용프로그램으로 보내 모니터링
2)파일포맷퍼징:프로그램들은 파일을 통해서 데이터를 입력, 다량의 변조 파일생성->실행->모니터링
3)응용프로그램인터페이스 : 공통사용 API취약점 발견, 윈도우 플랫폼의 Component Object Model과 Active X에 적용
4)브라우저 크래슁 : 변조된 CSS 이용 브라우저 충돌
5)API퍼징 : 프로그램 수행 시 참조하고 사용하는 API 함수의 Argument에 퍼징을 시도하여 취약점을 발견
-취약점 스캐닝 : 알려진 취약점과 연관된 입출력 패턴을 찾기 위해 실행 애플리케이션을 스캔하며, 알려진 취약점에 관련된 패턴, 즉 시그니처 매칭 방식으로 취약점 찾음
-침투테스팅 : 블랙박스테스팅, 윤리적해킹이라 알려짐, 대상 애플리케이션 자체의 내부작용이나 동작에 대해 알지 못한 채로 보안 취약점을 찾기 위해 원격으로 그 애플리케이션을 테스팅
'T-prj > 1.SW공학' 카테고리의 다른 글
99회 결과 (0) | 2013.03.29 |
---|---|
[소공143]워크플로우패턴 (0) | 2012.08.20 |
[소공142]웹공학 (0) | 2012.08.20 |
Recent Comment