Linux Security (스캐너) 네트워크 실험실 김
Download
Report
Transcript Linux Security (스캐너) 네트워크 실험실 김
Linux Security
(스캐너)
네트워크 실험실
김 윤 수
2020-04-26
Computer Network Lab.
#
1
목차
스캐너란 무엇인가?
스캐너의 기본 구조와 발전과정
보안 유지를 위해 스캐너를 사용하는 방법
다양한 스캐너 도구들
스캐너 공격 방어
2020-04-26
Computer Network Lab.
#
2
스캐너란 무엇인가?
시스템 스캐너
부주의나 실수로 설정된 보안상의 결점 파악하기 위한
로컬 호스트 검사
네트워크 스캐너
- 네트워크연결에 대한 문제점 테스트
- 이용 가능한 서비스 포트를 조사하여 원격 공격자들
이 이용할 수 있는 결함 파악
2020-04-26
Computer Network Lab.
#
3
COPS(The Computer Oracle and Password System)
애플리캐이션 : Dan Farmer 의 COPS
필요조건 : C, Perl(V 3.44+)과 cracklib
설정파일 : is_able.lst , crc_lst
위치:
http://metalab.unc.edu/pub/Linux/system/se
curity/cops_104_linux.tgz
2020-04-26
Computer Network Lab.
#
4
COPS(The Computer Oracle and Password System)
COPS의 분석 규칙
• 효력이 없거나 잘못된 파일, 디렉토리, 장치퍼미션
• 잘못된 패스워드
• 패스워드와 그룹파일에 잘못 적용된 퍼미션
• 파일의 SUID/SGID 비트의 부적절한 설정
• 파일 체크섬에 의심을 이루는 변화
2020-04-26
Computer Network Lab.
#
5
COPS(The Computer Oracle and Password System)
COPS의 설치및 실행
• $ gunzip cops_104_linux.tgz
• $ tar –xvf cops_104_linux.tar
• $ ./reconfig
• $ make
• $ ./cops –v –s . –b coops.err
2020-04-26
Computer Network Lab.
#
6
COPS(The Computer Oracle and Password System)
COPS 결과 화면
2020-04-26
Computer Network Lab.
#
7
ISS
(Internet Security Scanner)
애플리케이션 : Christopher의 ISS
필요조건 : C와 IP header
설정파일 : 없음
위치:
http://www.atomicfrog.com/archives/crack
-scan/iss.tar.gz
주의사항 : 상업용 ISS와 다름
2020-04-26
Computer Network Lab.
#
8
ISS
$
$
$
$
$
(Internet Security Scanner)
설치 과정
gunzip iss_tar.gz
tar –xvf iss_tar
make
iss
iss –p 172.16.0.2
2020-04-26
Computer Network Lab.
#
9
ISS
(Internet Security Scanner)
Directory 구조
[root@yskim iss]# ls -al
total 80
drwx------ 2 102
ftp
4096 Jun 11 19:28 ./
drwxrwxr-x 12 yskim
yskim
4096 Jun 11 21:13 ../
-rw------- 1 102
ftp
157 Apr 6 1995 Bugs
-rw------- 1 102
ftp
2028 Apr 6 1995 Changes
-rw------- 1 102
ftp
64 Apr 6 1995 Makefile
-rw------- 1 102
ftp
9446 Apr 6 1995 iss.1
-rw------- 1 102
ftp
20292 Apr 6 1995 iss.c
-rw------- 1 102
ftp
-rw------- 1 102
ftp
-rw------- 1 102
ftp
8971 Apr 6 1995 readme.iss
10035 Apr 6 1995 telnet.h
676 Apr 6 1995 todo
[root@yskim iss]#
2020-04-26
Computer Network Lab.
#
10
ISS
(Internet Security Scanner)
ISS의 함수
-
do_log(s) 호스트와 대상호스트간의 텔넷 세션 기록
domainguess() 대상 호스트의 NIS 도메인 이름 추정
checksmtp() sendmail 문제점 테스트
checkfto() FTP Directory permission 확인
2020-04-26
Computer Network Lab.
#
11
스캐너의 기본 구조와 발전과정
[일반적인 시스템 스캐너 처리 과정]
시작
다시시작
테스트
규칙 설정
현재규칙
규칙
규칙
0400 perm = 위험
패스워드 없음 = 위험
테스트
모든 파일이 검사될때까지 계속됨
추정가능한 패스워드 = 위험
Stat($filename)
$ filename은 모든 사람
이 읽을수 있으므로 확
모든사람이 읽을수 있으면 경고
인바람
아니면 다음 파일로
2020-04-26
Computer Network Lab.
#
12
스캐너의 기본 구조와 발전과정
[일반적인 네트워크 스캐너 처리 과정]
다시시작
테스트
규칙 설정
현재문제점
Exploit Database
sendmail bugs
FTP site exec
Target
규칙
테스트
모든 문제점이 검사되면
FTP 바운스 공격
다음 호스트에서 다시시작
텔넷 enviro 옵션
SYN 플러드
공격당하기 쉬움이 발견되면 경고
이 호스트(172.16.0.1)
은 허점이 있음
2020-04-26
Computer Network Lab.
아니면 새로운 문제점 확인
#
13
SATAN(Security Administrator’s Tool for Analyzing Netowrks)
애플리케이션 : DAN Farmer의 SATAN
필요조건 : C, IP header, BSD 4.4 호환 netinfo
incldue파일, 리눅스 패치 tcp_scan.c.diff
설정파일 : http://www.fish.com/satan/
보안사항 : 1. 트로이 목마 SATAN 1.0 배포
2. Bin/rex.satan의 경쟁 상태
2020-04-26
Computer Network Lab.
#
14
SATAN(Security Administrator’s Tool for Analyzing Netowrks)
SATAN의 기본특징
파일 전송 프로토콜(FTP
네트워크 파일 시스템(NFS)
네트워크 정보시스템(NIS) 패스워드
원격 쉘(rsh)접근
Rexd 접근
sendmail 보안 허점
간단한 파일 전송 프로토콜 (TFTP)
X 서버 보안과 접근 제어
2020-04-26
Computer Network Lab.
#
15
SATAN(Security Administrator’s Tool for Analyzing Netowrks)
리눅스에서 SATAN의 설정
기본적으로 유닉스 SunOS, 솔라리스, BSD, IRIX에
맞도록 작성하여 리눅스에서는 기본적을 동작하지 않
음. PATCH된 리눅스 버전을 설치한다.
위치 :
ftp://sunsite.unc.edu/pub/Linux/system/network/a
dmin/satan-1.1.1.linux.fixed2.tgz
리눅스 커널 2.2.12에서 작동안함.
2020-04-26
Computer Network Lab.
#
16
SATAN(Security Administrator’s Tool for Analyzing Netowrks)
SATAN의 컴파일 및 실행
$ gunzip satan-1.1.1.linux.fixed2.tgz
$ tar –xvf satan-1.1.1.linux.fixed2
$ cd satan-1.1.1
$ perl reconfig
$ make linux(solaris의 경우 make sunos5)
$ ./satan
2020-04-26
Computer Network Lab.
#
17
SATAN(Security Administrator’s Tool for Analyzing Netowrks)
2020-04-26
Computer Network Lab.
#
18
SAINT(security Admimistrator’s Intergated Network Tool)
애플리케이션 : 월드와이드 디지털 시큐리티
사의 SAINT
필요조건 : C, IP 헤더파일들, BSD 4.4-호환
netinfo include v파일들, tcp_scan.c.diff
설정파일 : config/saint.cf , paths.pl
위치: http://www.wwwdsi.com/saint/
보안사항 : 없음
SATAN을 상당 부분 개선
2020-04-26
Computer Network Lab.
#
19
SAINT(security Admimistrator’s Intergated Network Tool)
CGI 기반의 웹 공격
서비스 거부공격
POP 서버공격
SSH 허점
원격 버퍼 오버플로
2020-04-26
Computer Network Lab.
#
20
SAINT(security Admimistrator’s Intergated Network Tool)
2020-04-26
Computer Network Lab.
#
21
SAINT(security Admimistrator’s Intergated Network Tool)
2020-04-26
Computer Network Lab.
#
22
SAINT(security Admimistrator’s Intergated Network Tool)
2020-04-26
Computer Network Lab.
#
23
ISS(Internet Security Scanner)
ISS의 설치와 실행
애프리케이션 : internet security system
5.3.1
설정파일 : 없음
위치 : http://iss.net
현재 NT 6.01version 판매중
2020-04-26
Computer Network Lab.
#
24
ISS(Internet Security Scanner)
ISS의 설치와 실행
$ tar –xvf iss-Linux.tar
$ iss/bin/xiss
main console화면 출력
2020-04-26
Computer Network Lab.
#
25
ISS(Internet Security Scanner)
2020-04-26
Computer Network Lab.
#
26
Nessus
애플리케이션 : Renaud Deraison의
Nessus
필요조건 : C, IP헤더파일, GTK
위치 http://www.nessus.org/
리눅스, WinNT, 그리고 다양한 유닉스에
서 되는 SATAN과 같은 스캐너 TOOl.
2020-04-26
Computer Network Lab.
#
27
nmap – 네트워크 매퍼
애플리케이션 : nmap2.53
필요조건 : C/IP 헤더파일, lex, yacc
설정파일 : 없음
위치 : http://www.insecure.org/nmap/
gzip –cd nmap-253.tgz | tar xvf –
./configure
make
2020-04-26
Computer Network Lab.
#
28
nmap – 네트워크 매퍼
2020-04-26
Computer Network Lab.
#
29
CGI scanner v1.0
2020-04-26
Computer Network Lab.
#
30
스캐너의 공격 방어
Courtney
ICMPInfo
scan-dector
klaxon
Psionic Portsentry
2020-04-26
Computer Network Lab.
#
31
courtnery( SATAN과 SAINT 탐지기)
애플리케이션 : Marvin J Christensen의 courtney
필요조건 : perl 5+ , tcpdump, libpcap-0.0
위치 :
http://ciac.llnl.gov/pub/ciac/sectools/unix/courtne
y/courtney.tar.z
압축을 풀어 Coutney.pl을 실행하면 SAINT가 하는 일
을 /var/log/messages에 기록
2020-04-26
Computer Network Lab.
#
32
IcmpInfo(ICMP 스캔/폭탄탐지기)
애플리케이션 : Laurent Demailly의 IcmpInfo
필요조건 : C, 네트워킹, net Incldue파일
(/usr/include/netinet/)
ftp://hplyot.obspm.fr/net/icmpinfo-1.11.tar.gz
$ make
$ icmpinfo –vvv
icmpinfo는 내부로 들어오는 데이터와 외부로 나가는
데이터를 감시한다.
2020-04-26
Computer Network Lab.
#
33
IcmpInfo(ICMP 스캔/폭탄탐지기)
다양한 IcmpInfo 명령행 옵션
옵 션
목
적
-l
출력결과를 syslog를 통해 로그 파일에 기록
-n
이름 질의를 사용하지 않는다.
-p [포트번호]
포트를 생략한다.
-s
데이터를 수신한 인테페이스의 주소를 수집
여러 개의 네트워크 인터페이스가 있을때 유용
-v
ping를 제외한 모든 ICMP 트래픽 수집
-vv
ping를 포함한 모든 ICMP 트랙픽 수집
-vvv
모든 ICMP 트래픽과 ASCII와 Hex패킷 덤프수집
2020-04-26
Computer Network Lab.
#
34
scan-detector (일반적인 UDP 스캔 탐지기)
애플리케이션 : Christoph Schuba의 scandetector
필요 조건 : Perl 5+, tcpdump, libpcap-0.0
위치 :
ftp://coast.cs.purdue.edu/pub/COAST
주의사항 : scan-detector의 확장기능을 구해
야 한다.
ftp://coast.cs.purdue.edu/pub/COAST/SAT
AN_Extensions.tar.Z
2020-04-26
Computer Network Lab.
#
35
scan-detector (일반적인 UDP 스캔 탐지기)
Scan-detector의 옵션
옵션
목적
-c
-d [포트들]
감시할 udp포트명시, 콤마로 구분, 와일드 카드지원
-e
Syslog 대신에 표준 에러 출력(STDERR)으로 결과 출력
-l [호스트]
로그 호스트 명시
-m [바이트]
UDP연결에 대햐여 얼마나 많은 바이트 검사할것인지 명시
-n [바이트]
각 패스마다 감시해야 할 바이트수 명시
-p [우선순위]
Syslogd의 우선순위를 명시
-s [포트]
감시할 TCP포트명시. 코마(,)로 구분 명시, 와일드 카드지원
-t [타임아웃]
감시하고 잇는 연결에 대한 타임아웃 간격 명시.
2020-04-26
Computer Network Lab.
#
36
klaxon
애플리케이션 : Doug Hughes의 klaxon
필요조건 : C, netinet 인클루드 파일
위치 :
ftp://ftp.eng.auburn,edu/pub/doug/klax
on.tar.gz
2020-04-26
Computer Network Lab.
#
37
Psionic PortSentry
craig H.Rowland/Psionic의 PortSentry
필요조건: C/IP 인클루드파일
설정파일: portsentry_config.h,
portsentry.conf
위치
http://www.psionic.com/tools/portsentr
y-0.90.tar.gz
2020-04-26
Computer Network Lab.
#
38
Psionic PortSentry
스텔스 스캔을 발견해낼수 있다.
다중 소켓에 대하여 TCP와 UDP감시를 동
시에 할 수 있다
잘못된 일을 행하고 있는 호스트를 TCP
Wrapper 설정파일중에 deny항목에 추가
함으로써 상태 정보를 유지한다.
2020-04-26
Computer Network Lab.
#
39