Machine learning in spam

Preview:

Citation preview

Machine Learning IN SPAM

Produced by Tae Young Lee

Overview

• SPAM 관련 침해사례 • Mail Routing구조 • SPAM솔루션의 구조 • SPAM 방지 기법 • 구조적 한계 • Machine Learning • 오픈 소스의 적용 • 실 적용시의 한계 • Summary

SPAM관련 침해사례

도메인 유용 메일의 From 헤더에 foo@spammer.com 라고 적혀있으면 spammer.com 을 관리하는 DNS를 통해서 해당 메일이 실제 spammer.com에서 설정한 IP와 수신된 메일헤더의 IP와 비교해서 다르면 수신을 거부하게 된다. 즉, 실제로 hanmail.net에서 보내지 않지 않았으면서 메일주소는 @hanmail.net 로 속여서 발송되는 메일은 필터링이 가능하게 되는 것이다.

첨부파일로 악성코드 전파

악성코드 전파 및 차단 방안

출처 : http://biz.chosun.com/site/data/html_dir/2016/04/29/2016042900679.html

스피어피싱의 공격 프로세스

랜섬웨어

• 몸값(Ransome) + 소프트웨어(Software)

• 감염 경로

Ransomeware 공격 기법

Mail Routing 구조

내부망

DMZ

IT 외부 메일 차단/포워딩

스팸 · 악성 코드 차단

이메일 ㄱ,룹웨어

사내 PC

층간 스위치 콜센터 IP Phone

인터넷 망 (외부 망)

업무 망 (내부 망)

업무 망 전용 PC 인터넷 망 전용 PC

I T 본부 직원 (약 OOO 명)

내근직원 (약 O,OOO 명)

일반 PC

FC (약 OO,OOO 명)

망 연계 솔루션

인터넷

(외부) 이메일

(외부|내부) 이메일

물리적 망 분리

그룹 쉐어드 서비스

그룹사 직원

⑤ ⑥

사용자 라우팅

보안 솔루션의 위치는?

Mail Server

SPAM솔루션의 구조

스팸 룰 적용 필드 정보 IP ADDRESS SIZE FROM

TO

SUBJECT

BODY

ATT_NAME

1 2 3

4

5

6

7

원본 보기

원본 메일 보기

SPAM 방지 기법

스팸 방지 기법

• SPF(Sender Policy Framework) Record

- SPF 레코드는 도메인을 대표하여 이메일을 보낼 수 있는 메일 서버를

식별하는 DNS(Domain Name Service) 레코드의 한 유형

SPF Record 해석하기

_spfblocka.naver.com text = "v=spf1 ip4:114.111.32.0/24 ip4:61.247.200.0/23 ip4:121.189.42.0/24 ip4:114.111.38.0/24 ip4:114.111.39.0/24 ip4:114.111.40.0/24 ~all“

정답

naver.com 을 발신 메일 주소의 도메인으로

지정한 메일 중 114.111.32.0/24 C클래스

(114.111.32.0~2114.111.32.255)에서

발송되지 않은 메일은 스팸처리하세요.

단, 완전히 반송시키지는 말고 grey 처리하여

광고(스팸)편지함으로 분류해주세요.

구조적 한계

중앙규칙 - Black IP - 차단 패턴

차단 규칙 개인 규칙

Machine Learning

Inference Training

Actuator

부장님 출근 하셨나요? 차가 주차장에 있었어요

100억개의 neurons

60조의 synapses

Distributed Processing

Non linear Processing

Parallel Processing

Central Processing

Arithmetic operation’ (linearity)

Sequential Processing

Machine Learning IN Spam

• Bayesian Spam Filtering

• Multiple-Word Feature

• Markovian Filtering

Bayesian Spam Filtering

• 기본 원리

– 메일에 포함된 개별 단어의 스팸성(spamicity, spamness) 측정

– 메일에 포함된 단어들의 스팸성을 결합하여 메일 자체가 스팸일 가능성을 측정

Bayes' Theorem 수학적 이론 가정) •총 74개중에 30개의 이메일은 스팸 메세지다.

•74개중 51개의 이메일은 penis를 포함하고 있다.

•penis란 단어가 들어가있는 20개의 이메일을 스팸으로 분류했다.

P(A|B) - 사건B가 발생한 상태에서 사건A가 발생할 조건부 확률. P(B|A) - 사건A가 발생한 상태에서 사건B가 발생할 조건부 확률. P(A) - 사건A가 발생할 확률, B에 대한 어떠한 정보도 없는 상태에서 A가 발생할 확률. P(B) - 사건B가 발생할 확률, A에 대한 어떠한 정보도 없는 상태에서 B가 발생할 확률.

http://www.mimul.com/pebble/default/2012/04/03/1333431077222.html

Multiple-Word Feature(1)

Multiple-Word Feature(2)

Markovian Filtering(1)

Markovian Filtering(2)

Open Source의 적용

Open Source를 활용한 개선

Sendmail MTA → 3 DNSBL → SPF-Milter → Clamav-Milter → SpamAssassin → Procmailrc

Clamav 는 Open-Source antivirus 솔루션이며, 방대하게 이용되고 있다. clamav 는 CORE 엔진이며, clamav-milter 는 sendmail MTA 로 전송되는 메일의 구문이나, 첨부 파일에서 바이러스 패턴을 검색하는 역할

SpamAssassin 은 스팸 메일을 골라서 차단 또는 분류해 주는 프로그램 Rule을 기반하여 header와 body를 분석하거나 실시간 차단리스트(internet-based realtime blacklists(RBL))을 참고하여 각각의 룰에 매칭될 경우 +나 – 점수를 매겨 총 점수가 기존점을 초과하는지 여부에 따라 스팸인지 여부를 결정

SpamAssassin 베이지안 필터 학습 SpamAssassin 필터의 많은 스팸 차단 규칙 중 베이지안 필터가 존재합니다. 베이지안 필터는 메일 메시지의 내용 및 헤더에서 여러 특징점을 추출해 스팸 확률 값을 계산하는 인공지능 필터로 올바르게 동작하기 위해서는 학습이라는 과정이 필요합니다. 학습된 데이터를 기반으로 수신한 메일의 스팸 확률을 계산하는 필터

메일 메시지를 정상 또는 스팸으로 학습시키기 위해서는 메일 메시지 원본 파일(eml)이 필요. 아웃룩에서 저장한 msg 파일은 사용할 수 없음 정상 메일로 학습 윈도우 탐색기를 사용해 [설치 폴더/SpamAssassin/learn/ham]으로 이동 정상 메일로 학습 시키기를 원하는 eml 파일(들)을 해당 폴더로 복사합니다. 메일캐리어는 자동으로 해당 eml을 읽어 정상 메일로 학습 학습이 끝난 eml은 자동으로 삭제 스팸 메일로 학습 윈도우 탐색기를 사용해 [설치 폴더/SpamAssassin/learn/spam]으로 이동 스팸 메일로 학습 시키기를 원하는 eml 파일(들)을 해당 폴더로 복사합니다. 메일캐리어는 자동으로 해당 eml을 읽어 스팸 메일로 학습 학습이 끝난 eml은 자동으로 삭제

SpamAssassin

실 적용시의 한계

• 운영상의 한계

• 책임소재의 제약

• Open Source활용 시 Learning Curb

• Reference빈약

Deep Instinct AI Based Cybersecurity

참고 자료

• http://www.slideshare.net/taeyounglee1447/the-backpropagation-learning-procedure

• http://www.slideshare.net/taeyounglee1447/denoising-auto-encodersd-a

• http://www.slideshare.net/taeyounglee1447/neural-network-49865665

• SPAM Sniper

• Spam Assassin

• 기계학습기법으로 스팸 메일 걸러내기 – 카이스트 김정주님 자료

• https://www.krcert.or.kr/ransomware/information.do

Recommended