- 스캔 보안 기술2024년 04월 24일 22시 52분 03초에 업로드 된 글입니다.작성자: 202401to07
service firewall start : 방화벽 올리기
service firewall stop : 방화벽 내리기
syn 요청
ack 응답
fin 종료
rst 재시도 /종
urg 긴급
psh 밀어넣기nmap [scan type] [option] 목적지
nmap : 시스템, 네트워크 보안 스캐너
[scan type]
-sT tcp connect ***
-sS syn ***
-sF Fin ***
-sX X-mas (URG,PSH,FIN) ***
-sN null
-sU udp ***
-sQ protocol[option]
-O os scan
-v 자세히보기
-p 포트지정 ***
-f 포트분할출발지와 도착지를 ip.src ip.dst
icmp[0] == 0 reply
icmp[0] == 8 requestecho 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all : 진행중이던 ping멈춤
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all : 다시 시작
icmp스캔
원리 = 칼리 ==(request[8]) ===> 서버
칼리 <==(reply[0] ) ==== 서버보안대책 => icmp(reply를 차단) + 허용된 ARP만 접근 허가 (NAC) + ip와 mac주소를 매칭
UDP scan
service named restart : DNS 서버인 named를 다시 시작
service snmpd restart : SNMP(Simple Network Management Protocol) 데몬인 snmpd를 다시 시작
netstat -lntup : 실 행 중인 네트워크 포트 및 관련된 프로세스를 보여줌vi /etc/named.conf
option {
# listen-on port 53 { 127.0.0.1; };
listen-on port 53 { any; );
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistice-file "/var/named/data/named_stats.txt";
memstatistice-file "/var/named/data/named_mem_stats.txt";
recursing-file "/var/named/data/named.rescursing";
secroots-file "var/named/data/named.secroots";
# allow-query { localhost; };
allow-query { any; }service firewalld stop
service named restart
firewall-cmd --permanent --add-port=53/udp 영구설정 )
firewall-cmd --reload (영구설정적용)
firewall-cmd --list-all (53/udp 포트확인)
칼리 ) nmap -sU -p 53-55 10.10.10.10 (53번포트 open된거 보기 )
지정된ip주소에서 (10.10.10.10) 주어진 UDP포트 번호(52-55)를 스캔(nmap)하는것
firewall-cmd --permanent --remove-port=53/udp (53번포트 삭제)
firewall-cmd --reload (영구설정적용)장점 : 단방향이기 때문에 로그가 남기 어려움 , 방화벽 활성화 여부 확인가능
단점 : icmp에 확실한 증거 ( 주기적인 unrechable) 이 뜨기때문에 걸리기 쉬움
방화벽에 의해 패킷이 차단될 경우 open/closed의 여부확인이 어려움 (filtered)대책: 필요한 UDP만 오픈을 해주고 주기적인 모니터링을 통해서
ICMP unreachable을 확인하여 UDP스캔인 패킷을 차단시킨다.
TCP scanning
ACK = 응답
FIN = 연결종료요청
SYN = 연결요청
================================
URG = 긴급 (우선순위)
PSH = 실시간 전송(밀어넣기)
RST = 재연결 종료dnf install -y vsftpd-*
dnf install net-snmp-*
dnf install -y httpd-*
dnf install -y bind-*
dnf install -y telnet-server*
rpm -qa |grep -P "vsftp|net-snmp|httpd|bind|telnet" 으로 잘 다운받았는지 확인하기service vsftpd restart
service httpd restart
service telnet.socket restart80/tcp: httpd 80 http
21/tcp: vsftpd 20 21 ftp
23/tcp: telnetd 23 telnet
22/tcp: sshd 22 sshTCP 스캔
nmap -sT -p 20-24 10.10.10.10
원리 : 3way handshack 는 syn -> syn+ack -> ack 로 패킷을 주고 받는다 즉
syn 을 요청하면서 syn+ack 를 받아오는 녀석을 찾게 되고
ack 까지 받은뒤 서비스를 이용하지 않기때문에 칼리에서 rst+ack를 통해 종료 (칼리에서 끊음)방화벽 start : closed시 서버에서 rst+ack 안보냄
방화벽 stop시 : closed 서버에서 rst+ack 보냄
보안 : 같은호스트에서 다수의 포트들을 검색하는 내용 모니터링하고
세션완료후 (칼리)RST+ACK 를 보낼경우 차단 (세션확인)TCP스캔 (Full connect scan)
연결될경우 :RST+ACK ( 칼리에서 RST+ACK )
연결안될경우 : RST+ACK (서버에서 RST+ACK) 방화벽설정시 안나옴칼리 syn
서버 syn ack칼리 ack
서버 rst ack ( close)
칼리 rst ack (open )보안: 세션완료후 (칼리)RST+ACK 를 보낼경우 차단
syn stealth halt open
nmap -sS -p 20-80 10.10.10.10
syn을 보낸후 syn+ack만 확인한뒤 rst를 보내서 세션을 끊어버림
3way handshack를 완성하지 않음)
syn+ack를 받은후 (칼리)RST 를 보낼경우 차단
[세션을 맺지 않고 열린포트를 확인하는 스캔]
Syn스캔 (half open scan, syn stealth scan)
연결될경우 : RST ( 칼리에서 RST )
연결안될우 : RST+ACK (서버에서 RST+ACK) 방화벽설정시 안나옴칼리 syn
서버 syn ack칼리 ack서버 rst ack ( close)
방화벽설정시 안나옴
칼리 rst (open )
=> 쓰리웨이 끝나지도 않았는데
칼리가 rst
ACK scan
nmap -sA -p 20-23 10.10.10.10
원리: ACK를 보내서 서버에서 RST가 나오면 서비스가 있다고 판단 (단 방화벽이 올라가있어야함) unfiltered
ACK스캔]
연결될경우 : RST ( 서버에서 RST )
연결안될우 : ㅡ_ㅡ 조용ack 로만 요청하는 녀석을 차단
Fin scan
fin 종료
IDS(침입탐지) 를 회피하기위해서 사용 IDS(침입탐지) 를 회피하기위해서 사용
보안 : 방화벽을 쓰면 결과 알기 어려움
방화벽이 없고(stop) 남기지 않을때 사용
호스트에서 FiN으로 여러 포트를 스캐닝할경우 차단
x-mas scan
Fin, Psh, Urg 플레그를 동시에 다보냄
nmap -sX -p 20-90 10.10.10.10
원리 : fin 과 psh urg를 같이 보내서fin만 필터링 될 경우 통과시킴
FIN스캔, X-mas 스캔 , null 스캔
연결될경우 : X
연결안될경우 : RST+ACK ( 서버에서 보냄 )
null scan
nmap -sN -p 20-30 10.10.10.10
플래그 없이 t
보안 : null 플레그 검사
총정리
TCP포트가 열려있을때 응답이 오는 스캔
tcp syn /stealth / halt open ack 칼리 syn
서버 syn ack
칼리 ack
서버 rst ack ( close)
방화벽설정시 안나옴
칼리 rst ack (open )
=> 끝나고 칼리가 rsk+ack칼리 syn
서버 syn ack칼리 ack서버 rst ack ( close)
방화벽설정시 안나옴
칼리 rst (open )
=> 쓰리웨이 끝나지도 않았는데
칼리가 rst칼리 syn 서버 syn ack
칼리 ack
서버 RST (opne)
=> 서버가 ack도 안했는데
칼리가 ack 을 보내니까 서버가 RST!!!! 하는것TCP포트가 닫혀있을때 확인하는 스캔 3가지
Fin x-mas scan null scan 칼리 FIN
서버 RST+ACK (close)
==> 무반응 = (open )칼리 FIN PSH UGH
서버 RST+ACK (close)
==> 무반응 = (open )칼리 NONE (아무것도 안보내)
서버 RST+ACK (close)
==> 무반응 = (open )
모든 포트들은 활성화 되지 않을때 RST+ACK를 보내
방화벽을 올렸을때 (start)
close 일때 RST+ACK가 리턴되지 않습니다
그래서
close 일때 RST+ACK가 리턴 되는걸로 확인하는 FIN , X-MAS, NUll 스캔 방법은 방화벽 올라가있을때 확인이 어려움
Decoy 스캔
nmap -sS -p 20-25 10.10.10.10 -D RND
여러 IP로 바꿔서 포트스캐닝 )
여러 IP가 나오지만 MAC주소는 같다.
유일하게 MAC주소와 HOST를 매칭해서 막는 보안장비는 NAC 이다.
'보안' 카테고리의 다른 글
2024.04.25.목.보안 day18 (0) 2024.04.25 GNS / 칼리 /센토스 미니 / 록키 [리눅스 초기 설정] (0) 2024.04.25 2024.04.24.수.보안 day17 (0) 2024.04.24 2024.04.23.화보안 day16 (0) 2024.04.23 2024.04.22.월.보안 day15 (0) 2024.04.22 다음글이 없습니다.이전글이 없습니다.댓글