🏆45분
Day 4 도전: 사기 탐지 시스템
Cypher 패턴 매칭 & 관계 탐색
Day 4 도전: 사기 탐지 시스템
그래프 이론 & Neo4j 입문 > Cypher 패턴 매칭 & 관계 탐색
순환 거래, 공모 패턴을 찾아라
도전 목표
그래프 DB가 실무에서 가장 빛나는 사례 중 하나가 사기 탐지입니다. 복잡한 관계 패턴을 찾아 의심스러운 거래를 식별합니다.
실제 사례:
- PayPal: 사기 거래 탐지율 2배 향상
- HSBC: 자금 세탁 탐지 시간 80% 단축
- eBay: 가짜 리뷰 네트워크 적발
요구사항
시나리오: 금융 사기 탐지
당신은 은행의 사기 탐지팀 데이터 엔지니어입니다. 다음 패턴들을 Cypher로 탐지하세요.
Part 1: 데이터 준비
에디터 로딩 중...
Part 2: 사기 패턴 탐지 쿼리
탐지 1: 순환 거래 (Ring Transaction)
- 3~5단계를 거쳐 원래 계좌로 돌아오는 거래
- 각 거래 금액이 10% 이내로 감소 (수수료 위장)
- 힌트:
MATCH path = (a:Account)-[:TRANSFER*3..5]->(a)
에디터 로딩 중...
탐지 2: 스머핑 (Smurfing)
- 하루에 동일 계좌로 3건 이상 입금
- 각 거래가 500,000원 미만 (보고 기준 회피)
- 총합이 1,000,000원 이상
에디터 로딩 중...
탐지 3: 신원 공유 (Identity Sharing)
- 같은 전화번호, 주소, IP, 디바이스를 공유하는 계좌
- 공유 항목이 2개 이상이면 높은 의심
에디터 로딩 중...
탐지 4: 연결된 공모 네트워크 (Connected Fraud Ring)
- 공유 정보 + 순환 거래 참여자를 결합
- 하나의 연결된 그룹 = 공모 네트워크
에디터 로딩 중...
탐지 5: 급증 거래 (Velocity Check)
- 하루에 3건 이상 거래한 계좌
- 신규 개설(3개월 이내) 계좌의 대량 거래
에디터 로딩 중...
Part 3: 위험 점수 계산
각 계좌에 위험 점수를 부여하세요:
- 순환 거래 참여: +30점
- 스머핑 관련: +20점
- 신원 공유: +25점
- 급증 거래: +15점
- 신규 계좌(3개월 이내): +10점
에디터 로딩 중...
Part 4: 탐지 결과 시각화 쿼리
에디터 로딩 중...
제출물
- 각 탐지 쿼리 (.cypher 파일)
- 탐지된 의심 계좌 목록
- 위험 점수 순위
- 대응 권고사항 (어떤 계좌를 조사해야 하는지)
- (보너스) PROFILE을 사용한 성능 분석 결과
평가 기준
| 항목 | 배점 |
|---|---|
| 순환 거래 탐지 | 20% |
| 스머핑 탐지 | 20% |
| 신원 공유 탐지 | 15% |
| 공모 네트워크 탐지 | 15% |
| 위험 점수 계산 | 20% |
| 문서화/권고사항 | 10% |
힌트 보기
순환: MATCH path = (a)-[:TRANSFER*3..5]->(a) 스머핑: WITH로 일별 그룹핑 후 COUNT, SUM 신원 공유: (a1)-[:HAS_PHONE]->(p)<-[:HAS_PHONE]-(a2) 점수 합산: OPTIONAL MATCH + CASE WHEN + SET PROFILE을 앞에 붙여서 쿼리 성능 확인 공모 네트워크: 공유 정보로 연결된 클러스터 탐색