반응형

1. OWASP(Open Web Application Security Project)

신뢰성 있는 웹 어플리케이션 개발 및 운영을 위한 웹 취약점의 우선순위와 위험도 기준의 정보보안 가이드라인을 제시하는 프로젝트로, 웹 사이트에서 가장 취약한 부분을 분석하여 2013년부터 발표하고 있다.

출처: owasp.blogspot.com

 

1) A1 - Injection

- SQL, OS, XXE, LDAP 인젝션 취약점으로 신뢰할 수 없는 데이터가 명령이나 쿼리문의 일부분으로 Interpreter되어 전송될 때 발생하는 취약점

- 공격자가 입력값을 악의적으로 변조하여 예상하지 못하는 명령을 실행하거나 적절한 권한 없이 데이터에 접근할 수 있는 보안 취약점이 발생

2) A2 - Broken Authentication

- 인증 및 세션 관리와 관련된 애플리케이션 기능이 잘못 구현되어 공격자에게 취약한 암호, 암호키, 세션 토큰 제공

- 일시적 혹은 영구적으로 다른 사용자의 권한 획득을 위해 구현한 결함을 악용하여 Exploit

3) A3 - Sensitive Data Exposure

- 중요한 정보를 제대로 보호하지 않는 경우가 있는데, 공격자는 이러한 보호가 취약한 데이터를 훔치거나 수정

- 중요한 데이터를 저장, 전송할 때 암호화 같은 보호조치가 없으면 탈취당할 수 있음

4) A4 - XML External Entities

- 설정이 잘못된 XML 프로세서들은 XML 문서 내에서 외부 개체를 참조

- 외부 개체는 파일 URI 처리기, 내부 파일 공유, 내부 포트스캔, 원격코드 실행과 서비스 거부 공격을 사용하여 내부파일을 공개하는데 사용될 수 있음

5) A5 - Broken Access Control

- 인증된 사용자가 수행할 수 있는 작업에 대한 제한이 제대로 적용되지 않은 경우 발생

- 공격자는 결함을 악용하여 다른 사용자의 계정에 접근하거나 중요한 파일을 열람, 수정, 접근권한 변경 등 가능

6) A6 - Security Misconfiguration

- 취약한 기본설정, 임시설정 등 잘못 구성된 HTTP 헤더 및 민감한 정보가 포함된 정확한 에러 메시지 제공

- 모든 운영체제, 프레임워크, 라이브러리와 애플리케이션을 안전하게 설정하고 패치를 진행해야 함

7) A7 - Cross-Site Scripting

- 애플리케이션에 적절한 유효성 검사를 하지 않거나 Escape 처리 없이 신뢰할 수 없는 데이터를 포함

- 공격자는 피해자의 웹브라우저에서 세션을 도용하거나 웹 사이트를 변조하여 악성 사이트로 리다이렉션 할 수 있음

8) A8 - Insecure Deserialization

- 안전하지 않은 역직렬화는 원격 코드를 실행할 수 있음

- 원격 코드를 실행하지 못하더라도 권한 상승 공격, Injection 공격 등 다양한 공격 수행이 가능

9) A9 - Using Components with Known Vulnerabilites

- Library, Framework, Software module 같은 컴포넌트는 애플리케이션과 같은 권한으로 실행

- 취약한 컴포넌트가 악용된 경우, 심각한 데이터 손실 발생이나 서버 장악이 가능

- 알려진 취약점이 있는 컴포넌트를 사용한 애플리케이션, API는 보안을 악화시키거나 공격에 영향을 줌

10) A10 - Insufficient Logging & Monitering

- 불충분한 로깅, 모니터링은 공격자가 시스템을 더 공격하고 지속하며 더 많은 시스템을 중심으로 공격할 수 있도록 함

출처: https://www.law.go.kr/행정규칙/주요정보통신기반시설취약점분석·평가기준


2. 소프트웨어 개발 보안

안전한 소프트웨어 개발을 위해 소스코드 등에 존재할 수 있는 잠재적인 보안 약점을 제거하고 보안을 고려한 기능 설계, 구현 등 SDLC 전반에서 수행하는 일련의 보안 활동을 말한다.

(기존 구현 중심의 활동에서 분석/설계 단계부터 보안을 강화하는 것으로 변경됨)

 

1) SDLC 단계별 소프트웨어 개발 보안 활동 (SDLC: Software Development Life Cycle)

① 요구사항 분석 ② 설계 단계 ③ 구현 단계
보안 항목 요구사항 식별
- 암호화해야 할 중요 정보
- 중요 기능에 대한 분류

보안 구 항목 20개 목록화
- 내부 54개로 세분화
위협원 도출
- 위협 모델링: 보안 전문가, 개발 전문가 필요
- MS 등에서 전문 방법론 제공
- 분석/설계 20개, 구현 54개의 위협원이 반영될 수 있게 설계
표준 코딩, SW 개발 보안 가이드 준수
-구현 단계에서 준수할 수 있도록 설계단계에서 가이드

개발 가이드 제공
- 개발 보안 가이드를 래퍼런스로 하여 개발 환경에 적합하도록 구축

소스코드 보안 약점 진단 (도구 활용)

2) Secure SDLC

방법론 내용
CLASP - OWASP의 보안 약점을 고려한 개발 보안 방법론
- 개념, 역할 활동을 정의한 모델
MS-SDL - PreSDL 단계에서 위협 분석을 수행하고 SDLC 단계에서 보안을 고려한 모델링 수행
- Microsoft의 자동화 진단 도구 활용
7-Touch Point - 위협 분석, 코드 리뷰, 자동화 진단 등의 활동 정의

 

Cf) 포맷 스트링 (Format String)

- 데이터에 대한 포맷 스트링을 정확하게 정의하지 않아서 발생되는 취약점

- 포맷 스트링 문자를 사용한 메모리 열람, 변조, Shell Code 삽입 등 보안 취약점 발생

ex) C 언어에서 문자열에 '%X'를 입력하면 문자열의 메모리 주소를 알 수 있음


3. SSO(Single Sign On)

다수의 서비스를 한번의 login으로 기업의 업무 시스템이나 인터넷 서비스에 접속할 수 있게 해주는 보안 시스템이다.

중앙집중형 접근 관리, 보안 기능 PKI(Public Key Infrastructure), 암호화 기능 등이 있다.

 

- 장점: ID/PW 개별 관리의 위험성 해소, 사용자 편의성 증가

- 단점: 구축 비용이 비싸고 시스템 복잡도 증가

 

Cf) SSO 종류

종류 상세 내용
Delegation 방식 - 대상 애플리케이션의 인증 방식을 변경하기 어려울 때 많이 사용
- 대상 애플리케이션의 인증 방식을 변경하지 않고, 사용자의 인증 정보를 SSO 에이전트가 관리하며 로그인 대신 수행
Propagation 방식 - SSO에서 인증을 받아 대상 애플리케이션으로 전달할 토큰을 발급
- 애플리케이션에 사용자가 접근할 때 토큰을 자동으로 전달해 사용자를 확인할 수 있도록 하는 방식
Delegation & Propagation 방식 - 애플리케이션의 특성들이 다양한 경우, 각 애플리케이션에 두가지 방식을 혼용해서 전체 시스템의 SSO를 구성
Web 기반 One Cookie Domain SSO - SSO 서비스와 애플리케이션들이 하나의 Cookie Domain 안에 존재할 경우 사용
- 통합 인증을 받은 사용자는 토큰을 발급받고, 이 토큰은 Cookie Domain에 Cookie로 설정되어 Cookie Domain 내 다른 서비스로 접근할 때 자동으로 토큰 제공
- 서비스에서 동작하는 SSO 에이전트는 토큰으로부터 사용자 신원확인

출처: IT위키


4. DRM(Digital Rights Management)

디지털 컨텐츠를 안전하게 보호할 목적으로 암호화 기술을 이용하여 허가되지 않은 사용자로부터 컨텐츠 저작권 관련 당사자의 권리 및 이익을 지속적으로 보호, 관리하는 시스템이다.

저작자 및 유통업자의 의도에 따라 디지털 컨텐츠가 안전하고 편리하게 유통될 수 있도록 제공되는 모든 기술과 서비스 절차 등을 포함하는 개념이다.

 

Cf) DRM 요소 기술

- 암호화: 대칭키, 비대칭키 암호화 기술

- 인증: 정당한 사용자 식별을 위한 인증

- Watermarking: 원저작권 정보 삽입 및 식별 수행

- 사용자 Repository: 정당한 사용자 및 라이선스 정보 저장

- 사용자 권한 관리: 열람 및 배포에 대한 권리, 편집, 복사, 다운로드 등의 권한 관리

- Temper Proofing: 불법 수정 여부 검증, Cracking 방지


5. Watermarking

디지털 정보에 사람이 인지할 수 없는 마크를 삽입하여 디지털 컨텐츠에 대한 소유권을 추적할 수 있는 기술이다. (저작권자에 대한 정보를 은닉함으로써 저작권자를 확인시켜주고 불법 복제, 유통여부를 확인하는 기술)

'정보은닉기술'로 오디오, 비디오 이미지 등의 디지털 데이터에 삽입되는 또 다른 디지털 데이터로 Steganography 기법 중 하나이다.

* Steganography 기법: 데이터 은폐 기술 중 하나이며, 데이터를 다른 데이터에 삽입하는 기술 

 

Cf) Watermarking 공격 기법

- Filtering Attack: 워터마크를 노이즈로 보고 노이즈 제거 방법을 활용

- Copy Attack: 임의의 신호를 추가하여 워터마크를 사용하지 못하게 함

- Mosaic Attack: 워터마크가 검출되지 않도록 작은 조각으로 분해하여 다시 합침

- Template Attack: 워터마크의 패턴을 파괴하여 검출되지 않도록 함

 

Cf) Fingerprint

- 워터마킹 기법 중 하나로, 디지털 컨텐츠에 원저작자 정보와 함께 디지털 컨텐츠 구매자 정보도 삽입

- 디지털 컨텐츠가 불법으로 유통될 때 유통시킨 구매자를 확인할 수 있는 디지털 컨텐츠 추적 기술

- 원저작자 정보와 구매자 정보를 같이 삽입하기 때문에 Dual Watermarking 라고도 함


6. Digital Forensic

디지털 기기를 대상으로 발생하는 특정 행위의 사실관계를 법정에서 증명하기 위한 방법 및 절차로, 과학수사 및 수사과학 분야에서 디지털기기를 대상으로 하는 기술이다.

 

- 디지털 증거 휘발성

용어 내용
디지털 증거 - 디지털 저장매체에 저장되거나 네트워크를 통해 전송중인 자료
- 조사 및 수사 업무에 필요한 증거자료를 말함
디지털 증거분석 - 디지털 저장매체에 남아있는 자료에 대한 원본 보존과 사건 관련 증거를 과학적인 절차를 통해 추출, 검증, 판단하는 조사 및 수사과정
휘발성 증거 - 컴퓨터 실행 시 일시적으로 메모리 또는 임시파일에 저장되는 증거
- 네트워크 접속 상태, 프로세스 구동 상태, 사용중인 파일 내역 등 컴퓨터 종료와 함께 삭제되는 증거
비휘발성 증거 - 컴퓨터 종료 시에도 삭제되지 않고 남아있는 디지털 증거

- 디지털 포렌식 원칙

기본 원칙 내용
정당성 원칙 - 증거가 적법절차에 의해 수집되었는가?
- 위법수집 증거 배제법칙: 위법절차를 통해 수집된 증거는 증거 능력이 없음
- 독수 독과 이론: 위법하게 수집된 증거에서 얻어진 2차 증거도 증거 능력이 없음
재현 원칙 - 같은 조건과 상황 하에서 항상 같은 결과가 나오는지?
- 불법 해킹 용의자의 해킹 Tool이 증거능력을 가지기 위해서는 같은 상황의 피해 시스템에 툴을 적용할 경우 피해결과와 일치하는 결과가 나와야 함
신속성 원칙 - 디지털 포렌식의 전 과정이 신속하게 진행되었는가?
- 휘발성 데이터의 특성 상 수사 진행의 신속성에 따라 증거수집 가능 여부가 달라짐
절차 연속성 원칙 - 증거물 수집, 이동, 보관, 분석, 법정제출의 각 단계에서 담당자 및 책임자가 명확해야 함
- 수집된 저장매체가 이동단계에서 물리적 손상이 발생하였다면, 이동 담당자는 이를 확인하고 해당 내용을 정확히 인수인계하여 이후의 단계에서 적절한 조치가 취해지도록 해야함
무결성 원칙 - 수집된 증거가 위변조되지 않았는가?
- 일반적으로 해시 값을 이용하여 수집 당시 저장매체의 해시 값과 법정 제출 시 저장매체의 해시 값을 비교하여 무결성을 입증해야 함

 

Cf) 휘발성 데이터 수집 우선순위

- Register 및 Cache 정보

- Routing Table, ARP Cache, Process Table, Kernal Statistics

- Memory

- Temporary File Systems

- Disk

- Remote Logging, Monitoring Data

- Physical Configuration, Network Topology

- Archival media

 

Cf) 비휘발성 데이터 수집 우선순위

- Registry, 시간정보, Cache, Cookie, History, E-Mail

- 암호화된 파일, 윈도우 로그 등

 

 


# 참고

해당 글은 '이기적 정보보안기사 필기 1권 이론서'을 읽으며 필요한 부분만 정리한 내용입니다.

반응형

+ Recent posts