2024. 2. 6. 15:52ㆍ논문 리뷰/보안-디지털포렌식
*본 글의 모든 내용, 그림, 표 출처는 논문 원문에 있습니다.
https://www-dbpia-co-kr.libproxy.dankook.ac.kr/pdf/pdfView.do?nodeId=NODE11343537
https://www-dbpia-co-kr.libproxy.dankook.ac.kr/pdf/pdfView.do?nodeId=NODE11343537
www-dbpia-co-kr.libproxy.dankook.ac.kr
[출처] 추승용, 김준호, 이상진. (2023). Couchbase에 대한 디지털 포렌식 조사 기법 연구. 디지털포렌식연구, 17(1), 52-64.
본 논문은 비관계형 데이터베이스 중 Document store 유형인 Couchbase의 저장 구조와 데이터 선별 수집 방법을 설명하고 이를 바탕으로 Couchbase의 디지털 포렌식 조사 방안을 제시함. 또한 본 논문에서 제시한 데지털 포렌식 조사 방안은 안티-포렌식 행위에 대한 식별과 대응 방안을 포함하여 삭제된 데이터 복구에도 활용할 수 있음.
연구 대상 : CentOS 8에서 Couchbase Server Community 6.6.0 버전과 Couchbase Server Enterprise 6.6.0 버전을 대상으로 분석 진행
Couchbase 디지털 포렌식 조사 기법
couchbase의 디지털 포렌식 조사 시 데이터 및 로그에 대한 수집과 분석 방법을 설명하고, 이를 활용하여 안티-포렌식 행위 탐지 및 원본 데이터의 흔적을 찾는 과정을 설명
1) 데이터를 수집하기 전에 Couchbase의 운영 환경을 파악하여 수집 대상이 되는 서버와 데이터 저장 위치, 로그의 저장 위치를 식별
2) document의 key를 확인하고 그에 따른 적절한 쿼리를 작성하여 그 결과를 웹 콘솔의 Export 기능이나 Couchbase Server CLI 명령어를 통해 수집
3) 데이터 조회, 데이터 수정/삭제 등 사용자 행위 식별을 위해 로그를 수집하고, 삭제된 원본 데이터의 흔적을 찾기 위해서는 데이터가 저장된 노드의 vBucket 파일도 함께 수정
환경 설정 확인
Couchbase의 클러스터는 여러 노드로 구성되어 있고, 하나의 버킷에 해당하는 데이터가 분산되어 저장되어 있으므로 데이터 수집 전에 운영 환경 확인이 필요
운영 환경 파악
Couchbase를 설치하면 별도의 추가 설치 없이 웹 브라우저에서 아래와 같이 Couchbase의 IP 또는 호스트네임(hostname)과 기본 포트 번호인 8091을 입력하여 접속할 수 있음
Servers 항목)
클러스터에 구성된 노드 확인 가능
->아래에서는 test 클러스터가 "192.168.187.144"와 "192.168.187.146" 2개의 노드로 구성된 것을 보여줌
Buckets 항목)
아래와 같이 버킷의 목록을 조회할 수 있음
버킷 : document에 저장된 데이터를 논리적으로 구분한 것으로, 관계형 데이터베이스의 테이블
->여기서는 Couchbase에서 샘플(sample)로 제공되는 beer-sample과 travel-sample 버킷을 사용하여 연구 진행
데이터 수집 및 분석
Query
-Documents 항목을 눌러 조회를 원하는 버킷을 선택하면 document의 key와 value를 확인 가능
*웹 콘솔에서 조회할 수 있는 document의 개수는 최대 200개이기 때문에 저장된 데이터의 모든 key를 알기는 어려움
-Couchbase에서 쿼리는 SQL과 유사한 구성임(SELECT, FROM, WHERE로 구성)
Couchbase는 개별적인 쿼리 및 쿼리 서비스에 대해 다양한 모니터링 정보를 제공함
-system:complete_requests는 웹 콘솔의 Query 항목에서 "SELECT * FROM system:completed_requests;" 쿼리를 작성하여 조회 가능
-기본 설정으로 쿼리 실행 시간이 1,000ms보다 오래 걸리는 경우 기록됨
-최근 완료된 요청 목록 4,000개까지 확인 가능
-설정은 웹 콘솔의 Settings 항목에서 변경 가능
Couchbase 명령어
cbbackup :
실행 중인 전체 클러스터, 버킷 또는 단일 노드를 백업하며 원본 데이터의 복사본을 지정된 백업 디렉터리에 생성
전체 클러스터를 백업하는 것
버킷을 지정하여 백업 가능
-compact는 불필요한 데이터가 디스크 공간을 차지하지 않도록 제거하는 것
->이 작업 수행시 디스크에 남아있던 데이터가 사라지게 됨
=>삭제된 원본 데이터의 흔적을 찾기 위해서는 서버에 존재하는 vBucket 파일을 수집할 필요가 있음
-cas(compare and swap)은 document의 일관성을 유지하기 위한 값
-document가 수정될 때마다 cas 값이 변경되므로 이것을 통해 데이터가 변경된 시점을 확인하는 것이 가능
cbexport :
버킷 단위로 수집 가능
JSON 데이터로 추출
포맷 형태에 따라 list는 결과가 리스트 형태([, ])로 저장되며, lines는 단순 개행으로 결과가 저장
로그 수집 및 분석
Couchbase는 주요 이벤트 정보를 기록하여 다양한 로그 파일에 저장
-Couchbase Server는 관리를 위한 웹 콘솔 지원
-http_access.log는 웹 콘솔에 대한 서버 요청 기록(<Figure 17> 참고)
-http_access.log를 통해서 웹 콘솔을 통해 접근한 기록을 확인 가능, 로그인 성공/실패, 로그아웃, Document 조회/수정/삭제, 쿼리 실행 여부 등을 알 수 있음
Couchbase Server는 Auditing을 통해 누가 어떤 작업을, 언제 수행했는지 기록 가능
-audit.log는 JSON으로 저장되며 로그인을 비롯하여 설정에 따라 document 수정/식제 행위를 기록 가능
-웹 콘솔의 Logs 항목에서 서비스의 시작, 노드의 상태 등 전반적인 Couchbase Server의 주요 이벤트를 확인 가능하나, document 수정과 삭제에 관련한 이벤트는 나타나지 않음
결론
Couchbase 디지털 포렌식 조사 기법을 제안함
Couchbase의 관리요 웹 콘솔을 활용하여 데이터베이스 구조 파악과 데이터 조회 방법을 살펴보고 쿼리를 이용하여 데이터를 수집하는 방법을 파악
로그 수집 및 분석을 통해 로그인을 비롯한 데이터 조회와 수정, 삭제 행위를 식별하였으며 Couchbase Server의 CLI 명령어인 cbbackup을 활용하여 삭제된 데이터를 찾고 원본 데이터의 흔적 확인
Couchbase 시스템을 압수수색 시 사용될 수 있는 연구로 보여짐
'논문 리뷰 > 보안-디지털포렌식' 카테고리의 다른 글
[논문 리뷰] 디지털 포렌식을 위한 ESRGAN 기반 저화질 이미지 화질 개선 및 검증기법 (0) | 2024.02.06 |
---|---|
[논문 리뷰] 안드로이드 환경에서 Signal과 Telegram 보안 메신저 디지털 포렌식 분석 연구 (0) | 2024.02.06 |
[논문 리뷰] 계층 구조 기반 메타버스 서비스 디지털 포렌식 (0) | 2024.02.06 |
[논문 리뷰] 사회연결망분석기법을 이용한 디지털포렌식 연구동향 분석 (1) | 2024.02.05 |
[논문 리뷰] 경찰 디지털증거분석관 역량모델 개발 (0) | 2024.02.04 |