본문으로 건너뛰기

SOP-CS-002: 스팸 필터 관리

문서 관리​

항목내용
SOP IDSOP-CS-002
버전1.0
시행일2026-02-12
오너 직책CS 관리자
검토일2027-02-12
상태활성

목적​

이 SOP는 Channel Talk 스팸 필터 시스템을 관리하고, 스팸 패턴을 업데이트하며, 오탐을 해결하기 위한 표준 절차를 정립합니다.

스팸 필터링을 통해 다음을 보장합니다:

  • 시스템 알림, 광고 이메일, 뉴스레터 등을 자동 감지
  • 스팸 채팅의 자동 폐기 (설정 시)
  • 오탐율 5% 이내 유지
  • 중요 고객 메시지가 스팸으로 오분류되지 않도록 화이트리스트 관리

범위​

포함 범위:

  • 5가지 스팸 카테고리 규칙 관리
  • 스팸 패턴 추가/수정/삭제
  • 화이트리스트 관리 (오탐 방지)
  • 스팸 탐지 정확도 모니터링

미포함 범위:

  • 수동 스팸 신고 (고객 지원팀 담당)
  • 스팸 채팅 자동 폐기 설정 (Engineering 담당)
  • 스팸 필터 알고리즘 개선 (Engineering 담당)

RABSIC 책임 매트릭스​

역할직책/부서책임 내용
R (Responsible)CS 담당자스팸 오탐 보고, 스팸 탐지율 모니터링 실행
A (Accountable)CS 관리자스팸 패턴 최종 승인, 화이트리스트 관리, 탐지율 목표 달성
B (Backup)Senior CS 관리자CS 관리자 부재 시 패턴 승인
S (Support)Engineering 팀새 패턴 구현, 배포, 기술 자문
I (Informed)대시보드 팀, 분석팀패턴 변경 시 통보

스팸 카테고리​

5가지 스팸 유형​

1. Meta 인보이스 (Meta Ads Manager)​

신호:

  • "인보이스가 아닙니다"
  • "Collaborative Ads"
  • "Meta Ads Manager"
  • "거래 ID", "청구 금액"
  • "Payment Due"

용도: Meta 광고 계정의 청구서 및 결제 알림

처리: 자동 탐지 및 폐기 (비즈니스 관련 아님)

2. Google 알림 (Google Alerts / Drive / 기록)​

신호:

  • "Google Drive"
  • "Google 기록"
  • "제한된 액세스"
  • "Google Alerts"
  • "noreply@google.com"
  • "새로운 결과"

용도: Google 서비스의 시스템 알림

처리: 자동 탐지 및 폐기

3. 뉴스레터 (Newsletter / 프로모션)​

신호:

  • "newsletter"
  • "뉴스레터"
  • "unsubscribe"
  • "수신거부"
  • "구독"
  • "promotional"
  • "marketing email"

용도: 마케팅 뉴스레터, 프로모션 메일

처리: 자동 탐지 및 폐기

4. 기타 시스템 알림 (Claude.ai, 일정 관리 등)​

신호:

  • "Claude.ai에 로그인"
  • "mark your agenda"
  • "no-reply", "noreply", "do-not-reply"
  • "자동발송", "자동전송"

용도: 다양한 서비스의 자동 알림

처리: 자동 탐지 및 폐기

5. 무관 메시지 (Test messages, 무의미한 메시지)​

신호:

  • "test message"
  • "testing"
  • "테스트"
  • 3글자 미만 메시지
  • 특수문자만 있는 메시지

용도: 테스트, 잘못 전송된 메시지

처리: 자동 탐지 및 폐기


스팸 필터 규칙 관리​

절차 1: 스팸 패턴 추가​

목표: 새로운 스팸 유형을 감지하기 위해 패턴을 추가합니다.

실행 사항:

  1. 스팸 패턴 식별:

    • 정기적으로 "스팸" 태그된 채팅 검토
    • 새로운 스팸 유형 발견 시 기록
    발견 날짜: 2026-02-10
    스팸 유형: LinkedIn 초대
    특징: "LinkedIn", "프로필 보기", "연결 요청"
    발생 빈도: 주 2-3회
    기존 규칙으로 감지 여부: 아니오
  2. 패턴 정의:

    • 스팸 타입 분류 (기존 5가지 중 1개 또는 새 카테고리)
    • 핵심 키워드 5-10개 수집
    카테고리: 기타-소셜네트워크
    키워드:
    - "LinkedIn"
    - "프로필 보기"
    - "연결 요청"
    - "LinkedIn에서"
    - "직업을 맺으세요"
  3. 신뢰도 평가:

    • 키워드 조합으로 정당한 메시지가 걸릴 가능성: 낮음
    • 스팸 탐지율: 90% 이상
  4. 화이트리스트 확인:

    • 이 키워드가 정당한 고객 메시지에 포함될 가능성 검토
    • 예: "LinkedIn에서 저를 찾으셨나요?" ← 화이트리스트 추가 필요
  5. CS 관리자에게 제출:

    신규 스팸 패턴 추가 요청

    카테고리: 기타-소셜네트워크
    키워드: LinkedIn, 프로필 보기, 연결 요청, ...
    신뢰도: 90%
    예상 빈도: 주 2-3회
    오탐 가능성: 낮음
    화이트리스트: 없음

    배포 시기: 다음 주
  6. 배포 및 모니터링:

    • Engineering 팀에 배포 요청
    • 배포 후 1주일 모니터링 (오탐 확인)

품질 체크포인트:

  • 패턴이 명확한가?
  • 키워드 5개 이상 식별했는가?
  • 신뢰도 90% 이상인가?
  • 화이트리스트 확인했는가?
  • CS 관리자 승인 받았는가?

예상 소요 시간: 30분


절차 2: 화이트리스트 관리 (오탐 해결)​

목표: 정당한 고객 메시지가 스팸으로 오분류되는 것을 방지합니다.

실행 사항:

  1. 오탐 사례 식별:

    • 정기적으로 스팸 폴더 검토
    • 실제 고객 메시지가 스팸으로 분류된 경우 기록
    오탐 사례:
    - 채팅 ID: #5234
    - 고객 메시지: "unsubscribe하려면 어떻게 하나요?"
    - 감지된 이유: "unsubscribe" 키워드
    - 실제 의도: 구독 해제 방법 문의 (정당한 문의)
  2. 오탐 원인 분석:

    • 어느 스팸 패턴이 오탐을 유발했는가?
    • 패턴을 수정해야 하는가? 또는 화이트리스트 추가해야 하는가?
    원인: "뉴스레터" 카테고리의 "unsubscribe" 키워드

    분석:
    - "unsubscribe"는 스팸 (자동 이메일)에도 포함됨
    - 하지만 고객이 정당하게 구독 해제 문의할 수 있음
    - 해결: 화이트리스트에 "구독 해제", "unsubscribe 방법" 추가
  3. 화이트리스트 항목 정의:

    • 파인튜닝할 키워드 또는 문구
    • "unsubscribe" → 화이트리스트 추가 (일반 검색)
    • "구독 해제 방법" → 화이트리스트 추가 (명확한 의도)
  4. 화이트리스트 추가:

    화이트리스트 항목:
    - "구독 해제"
    - "구독 취소"
    - "unsubscribe"
    - "이메일 구독 취소"
  5. 효과 검증:

    • 기존 오탐 사례 다시 테스트
    • 정상으로 통과되는지 확인
  6. CS 관리자에게 제출:

    화이트리스트 추가 요청

    추가 항목: "구독 해제", "구독 취소", "unsubscribe"
    원인: 뉴스레터 필터의 오탐
    오탐 사례: 채팅 #5234
    영향도: 주 1-2회

    배포 시기: 즉시

품질 체크포인트:

  • 오탐 사례 최소 1개 이상 기록했는가?
  • 원인을 분석했는가?
  • 화이트리스트 항목이 명확한가?
  • 효과를 검증했는가?
  • CS 관리자 승인 받았는가?

예상 소요 시간: 30분


절차 3: 스팸 탐지율 모니터링​

목표: 스팸 필터의 성능을 정기적으로 모니터링하고 목표를 유지합니다.

실행 사항:

  1. 주간 스팸 통계 수집 (매주 월요일):

    • 지난주 금요일~일요일 채팅 통계
    • 대시보드 > 스팸 통계 메뉴 접근
    스팸 통계 (2026-02-07~09)

    총 채팅: 150개
    스팸 채팅: 18개
    스팸율: 12% (목표: 10-15%)

    카테고리별:
    - Meta 인보이스: 7개
    - Google 알림: 5개
    - 뉴스레터: 4개
    - 기타 시스템: 2개
    - 무관 메시지: 0개
  2. 신뢰도 평가:

    • 스팸으로 분류된 채팅 샘플 검토 (10개)
    • 실제 스팸인지 확인
    스팸 샘플 검증 (10개 샘플):

    #5001: "인보이스가 아닙니다" → ✓ 실제 스팸
    #5005: "배송 늦어요..." → ✗ 오탐 (고객 문의)
    #5010: "noreply@google" → ✓ 실제 스팸
    ...

    신뢰도: 90% (9/10 정확)
  3. 오탐 분석 (신뢰도 95% 미만인 경우):

    • 오탐 사례 식별 및 기록
    • 원인 분석
    • 화이트리스트 또는 패턴 수정 계획
  4. 결과 기록:

    주간 스팸 리포트 (2026-02-10)

    스팸율: 12% (목표 10-15% 달성)
    신뢰도: 90% (목표 95% 미달)

    오탐 분석:
    1. 채팅 #5005: "배송 늦어요" → Google 알림으로 오분류
    원인: "늦" 키워드 포함 (우연의 일치)
    해결: Google 알림 패턴 정밀화 필요

    조치: 다음주 패턴 수정 진행
  5. 경향 분석 (월간):

    • 4주 간의 스팸율 추이 분석
    • 증감 원인 파악
    • 새로운 스팸 유형 발견

품질 체크포인트:

  • 최소 150개 이상 채팅 데이터 수집했는가?
  • 스팸 샘플 10개 이상 검증했는가?
  • 오탐 원인을 분석했는가?
  • 결과를 문서화했는가?

예상 소요 시간: 45분


스팸 필터 설정​

기본 설정값​

설정값설명
자동 폐기비활성 (기본)스팸 채팅 자동 폐기 여부 (수동 검토 후 결정)
신뢰도 임계값0.75 (75%)이 이상 신뢰도에서만 스팸으로 판정
오탐 수락 임계값5%오탐율이 이를 초과하면 경고

설정 변경 프로세스​

자동 폐기 활성화 결정:

  1. 신뢰도 95% 이상 달성 후 고려
  2. 법률/규정 검토 (자동 삭제 가능성)
  3. CS 관리자 승인
  4. 점진적 도입 (초기: 1시간 후 자동 폐기 → 점차 단축)

주의사항​

주의 1: 정규화된 매칭​

모든 키워드는 정규화됩니다:

  • 대소문자 무시
  • 공백 정규화
  • 특수문자 제거

예: "Meta Ads Manager", "meta ads manager", "Meta-Ads-Manager" 모두 동일하게 매칭됩니다.

주의 2: 빠른 응답이 중요​

스팸 패턴은 빠르게 진화합니다:

  • 신규 패턴 발견 시 즉시 보고
  • 배포 후 24시간 내 모니터링
  • 오탐 발견 시 즉시 화이트리스트 추가

주의 3: 화이트리스트는 신중하게​

화이트리스트가 과도하면 스팸 감지율 저하:

  • "구독" 단어만으로 화이트리스트 하지 않기
  • 구체적 문구 사용 ("구독 해제 방법 문의" 등)

주의 4: 고객 프라이버시​

스팸 필터 운영 시 고객 메시지 검토:

  • 개인정보 보호 원칙 준수
  • 필요한 경우만 검토
  • 검토 내용 기록하지 않기

문제 해결​

증상원인해결 방법
높은 오탐율 (>5%)패턴이 너무 광범위함화이트리스트 추가 또는 패턴 정밀화
스팸 감지율 저하새 스팸 유형 출현새 패턴 추가
특정 고객이 자주 스팸으로 분류됨고객의 언어 패턴이 스팸과 유사화이트리스트에 고객 이메일/ID 추가
배포 후 급격한 변화새 패턴의 부작용롤백 또는 화이트리스트로 조정

관련 문서​


용어 정의​

용어정의
스팸비즈니스 관련이 없는 자동 알림, 광고, 마케팅 메일
패턴스팸 감지를 위한 키워드 조합
화이트리스트스팸으로 감지하지 않을 정당한 메시지 특징
신뢰도패턴의 정확도 (0-100%)
오탐정당한 메시지가 스팸으로 잘못 분류됨

부서 오너: Brand Ops CS 관리자 최종 수정일: 2026-02-12

원본 문서: Channel Talk Bridge 프로젝트 (src/tagger/spam.ts) 최종 동기화: 2026-02-12