Loading the catalog…
Loading the catalog…
시스템 보안 · 취약점 › E. 중요 정보 접근 로그 분석 · 24/50편 (전체 224/450) 학습 단계: DB·대량 데이터 접근 이상 실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」 이며, IP·계정·호스트명은 가상의 값입니다. 선행 학습 223. 중요 정보 접근 — 쿼리·DB 로그를 통한 접근 분석 202. 중요 정보(민감 데이터)의 분류와 식별 1. 개념 DB에서도 민감 테이블·컬럼 이 특히 고가치입니다. 개인정보(users·members)·결제(payments·cards)·인증(credentials) 테이블과 주민번호·카드번호·비밀번호 컬럼 접근을 집중 탐지합니다. 민감 테이블·컬럼 접근 위험 테이블: users, members, payments, cards, credentials 컬럼: ssn(주민번호), card_no, password, api_token 패턴: SELECT * FROM payments (전체) SELECT ssn, card_no FROM users (민감 컬럼 선별) COUNT(*) 후 전체 조회 (규모 파악→추출) 법적 의미: 개인정보·결제정보는 유출 시 법적 책임(GDPR·개인정보보호법) 민감 테이블·컬럼은 법적으로도 보호 대상(개인정보보호법)이라, 접근 탐지가 컴플라이언스와 직결됩니다. 2. 왜 중요한가 민감 테이블·컬럼은 개인정보·결제정보로 유출 시 법적 책임이 큽니다. 전체 조회(SELECT *)·민감 컬럼 선별은 데이터 추출의 명확한 신호입니다. 정상 앱은 필요한 행·컬럼만 조회하므로, 전체·민감 컬럼 조회는 이상입니다. 3. 핵심 명령어 / 설정 접근 패턴 데이터 위험 SELECT * payments 전체 결제 매우 높음 SELECT ssn,card_no 민감 컬럼 매우 높음 SELECT password 자격증명 매우 높음 전체 users 조회 개인정보 높음 필요 행·컬럼만 정상 앱 정상 4. 실습 (실습 예시) # 민감 테이블·컬럼 접근 탐지 (분석 방법) # 민감 컬럼 선별 조회(DB 로그, 분석용) sudo grep -iE 'SELECT .*(ssn|card_no|password|passwd|api_token|rrn)' /var/log/mysql/*.log 2>/dev/null | tail # 민감 테이블 전체 조회 sudo grep -iE 'SELECT \* FROM (payments|cards|credentials|members)' /var/log/mysql/*.log 2>/dev/null | tail 5. 정상 상태 $ (민감 컬럼 조회) 앱의 정상 범위(단건·WHERE 조건) 쿼리만 $ (민감 테이블 전체) (없음) 민감 테이블·컬럼 조회가 앱의 정상 범위(조건절·단건)에 그치고, 전체·민감 컬럼 선별 조회가 없는 상태가 정상입니다. 6. 이상 상태 $ (민감 컬럼 조회) SELECT ssn, card_no, password FROM users (민감 컬럼 전체) $ (민감 테이블 전체) SELECT * FROM payments (전체 결제 데이터) 주민번호·카드번호·비밀번호 컬럼을 WHERE 없이 전체 조회 → 개인정보 대량 추출 payments 전체 조회 → 전 결제 데이터 유출 민감 컬럼·전체 조회 → 법적 책임 있는 유출 → 정탐(최고 위험) 7. 로그 분석 (분석 방법) 민감 테이블·컬럼 접근 흐름입니다(가상의 예시). [규모 파악] SELECT COUNT(*) FROM users (전체 규모 확인) ↓ [민감 추출] SELECT ssn, card_no FROM users (WHERE 없음) ↓ [파일화] INTO OUTFILE (E23) 또는 결과 저장 ↓ [유출] 외부 전송(E32) 단계 신호 규모 파악 COUNT(*) 추출 민감 컬럼·전체 파일화 OUTFILE 유출 전송 COUNT로 규모 파악 후 전체 추출은 전형적 유출 패턴입니다. 8. SOC 관제 포인트 민감 테이블·컬럼(개인정보·결제·자격증명) 접근은 법적 책임 있는 고가치 유출 입니다. 전체 조회(SELECT *)·민감 컬럼 선별(ssn·card_no·password)이 핵심 신호입니다. 정상 앱은 조건절·필요 컬럼만 조회 — 전체·민감 컬럼 조회는 이상입니다. 9. 탐지 규칙 <!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 --> <group name="local,syssec_e,data_access,"> <rule id="104230" level="13"> <decoded_as>mysql_log</decoded_as> <field name="query" type="pcre2">SELECT\s+.*(ssn|rrn|card_no|card_number|password|passwd|api_token).*FROM|SELECT\s+\*\s+FROM\s+(payments|cards|credentials)</field> <description>민감 테이블·컬럼 조회(개인정보·결제 추출)</description> <mitre><id>T1005</id></mitre> </rule> </group> 민감 테이블·컬럼 목록은 데이터 분류(E02)에 맞춰 정의합니다. 정상 앱 쿼리 패턴은 예외로 등록합니다. 10. 대응 방법 초기 확인 — 조회된 민감 테이블·컬럼·범위(전체/조건)·주체를 확인합니다. 범위 확인 — COUNT 후 전체 추출·민감 컬럼 선별·이후 유출을 확인합니다. 증거 확보 — 쿼리 로그와 조회 범위(유출 가능 데이터량)를 보존합니다. 차단/조치 — 개인정보 유출 정탐이면 DB 차단·법적 대응(통지)·유출 범위 산정을 진행합니다. 재발 방지 — 민감 테이블·컬럼 접근 탐지를 컴플라이언스와 함께 운영합니다. 11. 핵심 정리 접근 패턴 데이터 SELECT * payments 전체 결제 SELECT ssn,card_no 민감 컬럼 SELECT password 자격증명 필요 행·컬럼만 정상 면접 포인트 "민감 테이블·컬럼 유출은 법적 책임 — 전체·민감 컬럼 조회가 핵심 신호" 12. 다음 편 예고 다음 편 225. 중요 정보 접근 — 대용량 데이터 수집(staging) 탐지 에서는 대용량 데이터 수집을 다루는 대용량 데이터 수집(staging) 탐지 를 다룹니다. 이전 편: 223. 중요 정보 접근 — 쿼리·DB 로그를 통한 접근 분석 📚 시리즈 전체 보기: 시스템 보안 · 취약점
What RADAR observed and classified to build this opportunity. It is what the source published, not a verification that the offer is still active.
224. 중요 정보 접근 — 민감 테이블·컬럼 접근 탐지. 시스템 보안 · 취약점 › E. 중요 정보 접근 로그 분석 · 24/50편 (전체 224/450) 학습 단계: DB·대량 데이터 접근 이상 실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」 이며, IP·계정·호스트명은 가상의 값입니다. 선행 학습 223. 중요 정보 접근 — 쿼리·DB 로그를 통한 접근 분석 202. 중요 정보(민감 데이터)의 분류와 식별 1. 개념 DB에서도 민감 테이블·컬럼 이 특히 고가치입니다. 개인정보(users·members)·결제(payments·cards)·인증(credentials) 테이블과 주민번호·카드번호·비밀번호 컬럼…
Open source