LINUX SECURITY - 메일 보안 - 네트워크 실험실 김 윤 수 2018-11-22 #

Slides:



Advertisements
Similar presentations
SPARCS 10 이 가 영 기본 UNIX 명령어. 일단 로그인 ! Linux login 시 계정을 입력하거나 root 를 입력 Root -> # 일반 사용자 -> $ 패스워드 : echo 기능을 꺼서 볼 수 없다. 대소문자 구분 패스워드 처음 설정 시 : ~$ passwd.
Advertisements

법학 입문 사례 2016년 1학기 한지영 교수.
직장내 성희롱 예방교육 제주지방노동사무소.
성결 어린이 영등포교회 유년부 정답은 뒷면에 제 11-31호 2011월 8월 14일 어디로 가세요?
사이버 수사 및 디지털 증거수집 실태조사 곽병선 노명선 이종찬 권양섭.
‘1+3 방과후학교’운영 영재학생 당기고 부적응학생 끌어주는 부천부곡중학교 경기도교육청지정 방과후학교 시범학교
제10회 부모님과 함께 읽는 과학도서 독서감상문 대회
리눅스와 보안 PLUS 오태호.
마을과 함께 꿈을 키우는 행복한 경기교육 2016 경기꿈의학교 사업비 지침.
행정소송 실무교육 공익법무관 문 유 식 인사 공익법무관 소개 서울고검 소개.
Ⅵ. 빛(단원학습목표).
행동강령 해설 기 획 조 정 실.
조선왕조의 유교정치.
해외서, 국내서 요약 ‘북집’ 모바일 서비스 이용방법
개발 환경 설치 Embedded System Software
14. Postfix, Exim, Sendmail 2011 Wheel Seminar podo.
▣ 금연 프로그램 운용(안) 구 분 실 시 내 용 일 정 사전조사 교육프로그램실시
시작부터 끝까지 진지한 궁서체로 진행하는 완벽한 주입식의 하드코어한 리눅스/장난감 세미나
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
임베디드 시스템 개발을 위한 리눅스 환경설정.
통로이미지㈜ 마케팅실 신입/경력 모집 ◎ 모집부분 및 자격요건 ◎ 채용인원 ◎ 전형절차 ◎ 제출서류 ◎ 연봉 ◎ 사전인터뷰
성창기업 설비관리분야 신입사원 모집 사업분야 소개
FTP 09 SPARCS 박철웅 [dothack].
Linux University of Seoul Computer Science Park Jong wook
경기도시흥교육청 유치원평가 연수 시화유치원 남궁 상.
운영체제 설정과 취약점 인터넷공학/컴퓨터공학 이수백/허성욱.
제6장 FUSING.
PXA270 개발환경 설정 Ubuntu 실습용.
Kernel Porting Lecture #7.
Chapter 02. 시스템 보안 : 건강한 시스템이 챙겨야 할 기본
정보 보안 개론과 실습 시스템 해킹과 보안 √ 원리를 알면 IT가 맛있다 ehanbit.net.
Minicom,tftp,nfs설정,vnc설정
FUSING.
2016 “ 경제교육 봉사단 대학생 (재)광주광주광주원 경제교육센터 지원대상 모집일정 활동혜택 활동내용 지원시 유의사항
리눅스와 보안 PLUS 오태호.
윈도우&유닉스 시스템 보안설정 Start! 서화섭.
bizmeka 스팸차단서비스 ASP 제안서
[beginning] Linux & vi editor
목차 커널의 개념 및 기능 커널 포팅 램디스크.
영덕풍력발전단지 준공 기념식 행사(안) 경영기획실.
임베디드 시스템 개론 3주차 Embedded System..
Linux Security (스캐너) 네트워크 실험실 김 윤 수 #
리눅스 기본 명령어 기본 명령어 명령어 기능 사 용 예 date 날짜 및 시간을 확인하고 생성.
메일서버 구축 김현지.
서버 보안 정상준.
시스템 보안 정보 보안 개론 9장.
목 차 PGP S/MIME. 전자우편 보안 Security 목 차 PGP S/MIME.
실시간 자원 량 정보 제공을 결합한 Heartbeat
DoS와 DDoS 공격 DOS와 DDOS 공격의 이해 DOS 공격의 이해 DDOS 공격의 이해 한빛미디어(주)
Chapter 14 침입 탐지 및 모니터링.
LINUX SECURITY - web서버보안 -
제주닷컴 매뉴얼 (실시간 예약시스템) 2013년 10월.
7장: 빛의 간섭과 회절 빛의 간섭 단일슬릿과 회절 회절격자 – 더 선명해진 간섭무늬.
계약서 관련 실무 계약 위반과 판례 김래균.
Appendix. WURFL 브라우저 살펴보기
역사논술 팝업북아트 입체로 만드는 나만의 역사책!! 경기도 부천시 소사구 송내동 /2층
생활 철학 인간이란 무엇인가?.
공공기관에서의 UTM과 혼합공격 차단기법 May.2004 Fortinet Korea Inc.
시스템 인터페이스 Lab2 X-window 및 명령어 사용.
Linux Security (리눅스 소개)
Unix 방문(접속하여 로그인) 하기 수퍼 유저 되어 사용자 계정 만들기 Unix의 아파치 웹 서버에 홈페이지 등록하기
생체현상계측 ․ 기록장비 이봉준.
Telnet 을 활용한 Linux 메뉴얼 오두환.
기술가정 2학년 1학기 2.재료의 이용>1) 목재,플라스틱,금속재료의 특성>11/15제품의 구상
[297탄] 반드시 길러야 할 4가지 공부 습관 자습 습관 복습 습관 동기부여 습관 셀프 테스트 습관
▶서류관리 프로그램 1. 로그인….2 2. 서류등록 … 서류도착 서류스티커발행
전동 공구 초기화면 기술·가정 2학년 1학기 Ⅲ. 재료의 이용 > 2. 제품의 구상과 만들기 >
비축사업 전자계약시스템 도입 용역 사용자매뉴얼(업체담당자용) Version 1.0.
한국 휴렛팩커드/고객지원사업본부/IT 기술사업부 박기영
“용산복지재단과 함께 꿈을 이룹니다” 함 께 이 룸.
Presentation transcript:

LINUX SECURITY - 메일 보안 - 네트워크 실험실 김 윤 수 2018-11-22 #

목 차 SMTP 서버와 클라이언트 Sendmail보안 기초 Qmail설치 요약 2018-11-22 #

SMTP 서버와 클라이언트 SMTP의 메일 처리 과정 - 들어오는 메시지 수신 - 메시지 주소 확인 - 로컬 주소이면 메시지 저장 - 원격 주소이면 메시지 전달 2018-11-22 #

전자메일의 구조 단순, 객체지향적, 분산환경의 응용에 적합, 인터프리터, 안전, 구조중립, 이식성, 높은 성능, 다중 쓰레드, 동적 견고(포인터X, garbage Collection, 엄격한 형검사, 실시간 에러 처리) 컴파일에 의해 바이트 코드로 변환되고 실행시에 인터프리터에 의해 해석되어 처리. 2018-11-22 #

전자메일 헤더 From hskim@daelimrnd.co.kr Thu Jun 29 08:42:27 2000 Received: from magpie.daelimrnd.co.kr (magpie.daelimrnd.co.kr [202.30.60.10]) by bomun.kaist.ac.kr (8.10.2/8.10.2) with ESMTP id e5SNgQL21721 for <yskim@bomun.kaist.ac.kr>; Thu, 29 Jun 2000 08:42:26 +0900 (KST) Received: from hskim.daelimrnd.co.kr (dt002.daelimrnd.co.kr [202.30.60.16]) by magpie.daelimrnd.co.kr (8.9.3/8.9.3) with SMTP id JAA27737; Thu, 29 Jun 2000 09:04:11 +0900 (KST) Message-ID: <000801bfe15a$56e94e60$103c1eca@daelimrnd.co.kr> 단순, 객체지향적, 분산환경의 응용에 적합, 인터프리터, 안전, 구조중립, 이식성, 높은 성능, 다중 쓰레드, 동적 견고(포인터X, garbage Collection, 엄격한 형검사, 실시간 에러 처리) 컴파일에 의해 바이트 코드로 변환되고 실행시에 인터프리터에 의해 해석되어 처리. 2018-11-22 #

SMTP 명령어 (1) 명 령 어 목 적 DATA 메시지 본문을 입력하도록 한다. DATA 명령 다음줄부터 입력하고 마지막 줄에 점(.)을 입력하면 메시지 입력이 끝난다. EXPAND 사용자의 메일 계정을 출력하고 그룹 계정일때는 그룹 멤버의 모든 메일 계정을 출력한다. HELO(HELLO) SMTP 세션을 초기화 하고 식별할 수 있는 데이터를 교환한다. HELP 도움말을 출력한다. MAIL 메일 작업의 초기화 QUIT 현재세션을 종료하고 연결을 끊는다. RCPT (수신자) 수신자를 명시한다. RESET 현재 작업을 중지한다. VRFY 사용자명을 확인 단순, 객체지향적, 분산환경의 응용에 적합, 인터프리터, 안전, 구조중립, 이식성, 높은 성능, 다중 쓰레드, 동적 견고(포인터X, garbage Collection, 엄격한 형검사, 실시간 에러 처리) 컴파일에 의해 바이트 코드로 변환되고 실행시에 인터프리터에 의해 해석되어 처리. 2018-11-22 #

SMTP 명령어 (2) 바이트 코드는 클래스 로더에 의해 로드되며, 바이트 코드 검증기는 프로그램이 수행되기 전에 부적절한 클래스 접근이나 스택의 오버 플로우, 부적절한 형변환을 검사한다. 2018-11-22 #

SMTP의 보안 외부 침입으로부터 서버를 보호하는 일. 외부 공격자가 승인되지 않은 접근을 할 수 없도록 서버를 강화 외부 사용자가 메일 서버를 통해 스팸(spam)메일을 보내거나 위조된 메일을 보내는 것 같은 잘못된 사용으로 부터 SMTP 보호 2018-11-22 #

sendmail 보안기초 (1) sendmail의 version 2018-11-22 #

sendmail보안 기초 (2) sendmail을 목표로 공격하는 원인 환경설정이 어려워 설정오류를 기대하고 공격 컨텐트(Content) 핸들러: 새로운 형식의 파일들을 전송 받을때 사용 내용에 관한 정보(MIME형식) plain/text, text/html.. 프로토콜 핸들러:기존의 프로토콜 이외의 프로토콜을 처리 가능 2018-11-22 #

MIME 버퍼 오버플로 버그 (1) 98년 3사분기 보고 sendmail 자체에 영향을 미치는 것이 아니라 sendmail이 메일을 전달하는 클라이언트에게 영향을 미친다. 즉 sendmail은 공격대상이 아니라 공격에 이용되는 도구. MIME은 그림이나 소리, 특정 형식의 텍스트 등 다양한 종류의 데이터를 지원하기 위한 방법으로, MIME헤더에는 어떤 종류의 데이터가 인코딩 되어있는지에대한 정보저장 2018-11-22 #

MIME 버퍼 오버플로 버그 (2) CERT권고안(CERT 권고안 CA 98.10, 1998년 8월11일) – sendmail 8.9.1 - “공격자는 정교하게 제작된 메일을 보냄으로써 공격자가 선택한 코드가 실행될 수 있도록 하고, 경우에 따라서는 메일 클라이언트를 망가뜨릴 수 도 있다. 또한, 운영체제에 따라서 사용자의 권한을 가지고 수행되기 때문에 루트 같은 관리자 계정으로 악의적으로 제작된 메일을 읽게 된다면 시스템에 대한 권한을 얻을 수도 있다.” 2018-11-22 #

패스워드 파일 / 루트 접근 sendmail 8.8.4에서는 sendmail이 배달되지 않은 메시지를 /var/tmp/dead.letter 파일끝에 저장한다는 사실과 링크를 이용하여 내부 사용자는 루트 권한을 얻을 수가 있었다. /var/tmp/dead.letter /etc/passwd 메시지내용은 사용자계정을 기록하고 도착할 수 없는 메시지를 보내면 새로운 계정기록 2018-11-22 #

sendmail 헤더 파싱 DoS공격 sendmail 헤더 파싱 코드의 버그에 초점 많은수의 “To:”헤더를 가진 메시지를 생성함으로써 크래커들은 서버를 정지시킬 수 있는데 sendmail 8.9.2와 그 이전 버전에 영향을 미쳤다. P.379 잘레브스키의 테스트 코드 서버와 연결후에 사용자에게 전자메일을 보내는 일을 반복한다. 특히 전송되는 메시지안에 15,000개의 To:가 있어 sendmail을 정지시키에 되고 서버는 메일 송수신을 거부한다. 2018-11-22 #

sendmail 서비스 보호 (1) /etc/mail/access 2018-11-22 #

sendmail 서비스 보호 (2) 2018-11-22 #

sendmail 서비스 보호 (3) 2018-11-22 #

실시간 블랙 리스트 관리 (1) RealTime Blackhole List 스팸을 전송하는 사람들의 목록, sendmail은 동적으로 특정 도메인으로부터 메일을 받을 것인가를 결정. 2018-11-22 #

실시간 블랙 리스트 관리 (2) 2018-11-22 #

실시간 블랙 리스트 관리 (3) 2018-11-22 #

실시간 블랙 리스트 관리 (4) 2018-11-22 #

실시간 블랙 리스트 관리 (5) RBL 서비스의 활용 /etc/sendmail.mc파일에 다음을 추가한다. - Sendmail Version 8.9 Use FEATURE(rbl) - sendmail 8.10 and above FEATURE(dnsbl) Then, reconfigure and restart the daemon. 2018-11-22 #

EXPN과 VRFY기능억제 (1) SMTP명령어중 EXPN(expand)와 VRFY(verify)는 사용자의 정보를 외부로 유출할수 있다. 2018-11-22 #

EXPN과 VRFY기능억제 (2) EXPN(expand)와 VRFY(verify)의 억제 sendmail.cf 의 다음 부분을 추가하여 기능억제 # privacy flags O PrivacyOption=authwarnings, noexpn, novrfy And Then sendmail Restart!! 2018-11-22 #

TCP wrapper와 SMTP (1) Daemon프로세서로 수행하지 않고 inetd의 일부로 사용(단, traffic이 많지 않을 경우) 1. Sendmail 초기화 스크립트 삭제 /etc/rc.d/rc3.d/S80sendmail or /etc/rc.d/rc5.d/S80sendmail 2. /etc/inetd.conf에 sendmail메일에 대한 항목 추가 smtp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/sendmail –bD 3. inetd설정파일 다시 읽도록 한다. 4. Tcp wrapper제어 파일인 /etc/hosts.allow, /etc/hosts.deny 파일설정 2018-11-22 #

TCP wrapper와 SMTP (2) TCP wrapper설정예 (1) games.com, toys.com, weapons.com의 요구만 수용 - /etc/hosts.deny deny:deny - /etc/hosts.allow ALL:LOCAL, games.com, toys.com, weapons.com TCP wrapper설정예 (2) badpeople.com과 evilspam.com에서 오는 요구를 제외하고는 누구나 연결 가능 ALL:badpeople.com, evilspam.com ALL:ALL 2018-11-22 #

Qmail의 설치 (1) http://www.qmail.org qmail-1.03.tar.gz Qmail의 특징 - 안전성 - 속도 - 신뢰성 - 쉬운 가상도메인 - ezmlm을 이용한 이용자가 제어하는 메일링 리스트. 2018-11-22 #

Qmail의 설치 (2) source DownLoad qmail-1.03.tar.gz tar zxvf qmail-1.03.tar.gz 몇 개의 사용자 계정과 그룹 생성 cd qmail-1.03 Make setup check # groupadd nofiles # useradd -g nofiles -d /var/qmail/alias -s /bin/false alias # useradd -g nofiles -d /var/qmail -s /bin/false qmaild # useradd -g nofiles -d /var/qmail -s /bin/false qmaill # useradd -g nofiles -d /var/qmail -s /bin/false qmailp # groupadd qmail # useradd -g qmail -d /var/qmail -s /bin/false qmailq # useradd -g qmail -d /var/qmail -s /bin/false qmailr # useradd -g qmail -d /var/qmail -s /bin/false qmails 2018-11-22 #

Qmail의 설치 (3) [root@yskim qmail-1.03]# ./config [root@yskim qmail-1.03]# (cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root) [root@yskim qmail-1.03]# chmod 644 ~alias/.qmail* Sendmail 삭제 # mv /usr/lib/sendmail /usr/lib/sendmail.old # mv /usr/sbin/sendmail /usr/sbin/sendmail.old # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail # ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail # killall –9 sendmail 2018-11-22 #

Qmail의 설치 (4) /etc/inetd.conf 추가 stmp stream tcp nowait qmaild /var/qmail/bin/tcp-env tcp-env /var/qmail/bin/qmail-smtpd [root@yskim qmail-1.03]# cp /var/qmail/boot/proc /var/qmail/rc [root@yskim qmail-1.03]# csh –cf ‘/var/qmail/rc &’ 자동스크립트에 추가 2018-11-22 #

Qmail의 설치 (5) 2018-11-22 #

Qmail의 설치 (6) 2018-11-22 #

Qmail 관련문서들 http://www.qmail.org/ http://kldp.org/qmail/ Michael Samuel의Qmail문서화 프로젝트 http://qmail-docs.surfdirect.com.au David Sill의 LWQ(Life with Qmail) http://Web.InfoAve.Net/~dsill/lwq.html Qmail에서 RBL을 지원하도록 하기 위한 페이지 http://www.qmail.org/rbl/ 2018-11-22 #

요 약 중계기능을 막고 계정 해킹을 방지하기 우해 MTA를 설정함으로써 네트워크와 서버 그리고 사용자들을 보호 할 수 있다. Sendmail은 높은 성능의SMTP서비스를 제공하고, 현존하는 리눅스/유닉스 유틸리티와 호환성이 잘 이루어지는 반면에, Qmail은 작지만 빠르고 안전하다. 2018-11-22 #