회사 서버로 172.20.224.158이라는 IP로 8080 포트로의 접속 시도가 방화벽에 걸렸네요. 정상적으로 서비스 중인 8080 포트로의 접속이 왜 방화벽에 걸렸는지 살펴보았습니다. 본 페이지에서는 아래의 내용들을 다룹니다.
- UFW BLOCK 메시지 분석 방법
- 172.20.224.158 IP의 위치
- 정상적으로 서비스되는 8080 포트로의 접속이 왜 차단되었는지 여부
[시스템 로그 분석]
최근 회사 서버에 문제가 좀 있는 것 같아서 dmesg 명령을 통해서 로그를 살펴보기로 했습니다. 로그를 자세히 살펴보니 UFW BLOCK 메시지로 도배가 되어 있네요. 172.20.224.158이라는 IP가 8080 포트로 여러 차례 접속을 시도해서 방화벽에 걸렸네요.
[353574.416040] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=45626 DF PROTO=TCP SPT=29450 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353574.417831] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=10184 DF PROTO=TCP SPT=29412 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353581.581828] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=10185 DF PROTO=TCP SPT=29412 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353581.835913] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=45627 DF PROTO=TCP SPT=29450 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353596.427878] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=45628 DF PROTO=TCP SPT=29450 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353700.684892] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=63572 DF PROTO=TCP SPT=42420 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353701.612692] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=63573 DF PROTO=TCP SPT=42420 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353701.644635] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=36528 DF PROTO=TCP SPT=37734 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353703.437089] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=63574 DF PROTO=TCP SPT=42420 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353703.532649] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=36529 DF PROTO=TCP SPT=37734 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353707.276630] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=63575 DF PROTO=TCP SPT=42420 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353714.700650] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=63576 DF PROTO=TCP SPT=42420 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353714.956534] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=36531 DF PROTO=TCP SPT=37734 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
[353730.060444] [UFW BLOCK] IN=eno1 OUT= MAC=ab:cd:ef:gh:jk:lm:b4:0c:25:e1:80:45:08:00 SRC=172.20.224.158 DST=ABC.DEF.GHI.JKL LEN=52 TOS=0x00 PREC=0x00 TTL=57 ID=36532 DF PROTO=TCP SPT=37734 DPT=8080 WINDOW=28 RES=0x00 ACK FIN URGP=0
여러 차례 줄기차게 공격을 시도했었네요. 로그를 자세히 살펴보면 아래와 같은 의미입니다.
eno1 인터페이스로 상대 쪽 IP는 172.20.224.158이고 Mac Address는 b4:0 c:25:e1:80:45입니다. ABC.DEF.GHI.JKL로 표시한 게 제 IP이고, ab:cd:ef:gh:jk:lm으로 표시한 게 제 Mac Address입니다.
프로토콜은 TCP 프로토콜이고, 52 Bytes짜리 패킷이네요. 내 포트번호는 8080이고, 상대 쪽 포트번호는 29450입니다.
근데 조금 이상한 게 있습니다. sudo ufw status로 확인해보면 8080 포트가 열려있는데 왜 블로킹된 것일까요? 재택근무를 할 때도 VPN으로 8080 포트로 서비스 중인 Jenkins 서버에 접속하곤 하는데 왜 블로킹된 것인지 처음에는 이유를 알기 어렵더군요.
[IP 위치 확인 시도]
IP 위치를 확인할 수 있는 홈페이지에 접속하여, 어디에서 공격한 IP인지를 확인해보고 싶었는데, 아쉽게도 확인할 수 없습니다.
IP 위치가 확인되지 않은 이유는 바로 NAT 내부에 있는 IP이기 때문입니다.
[KOREAN]
AS :
도시 :
소속국가 :
국가코드 :
ISP :
위도 :
경도 :
조직 :
IP : 172.20.224.158
지역 :
지역이름 :
STATUS : fail
TIMEZONE :
우편번호 :
172.20.224.158와 같은 IP는 사설 IP로 내부 네트워크용으로 사용되는 IP입니다.
[정상적으로 서비스 중인 포트에 대한 접속이 차단된 이유]
8080 포트를 접속 허용으로 설정해놨고, Jenkins 서버로 평소에 잘 사용 중인데 방화벽에 걸린 이유는 접속을 시도한 IP가 공인 IP가 아닌 사설 IP였기 때문입니다.
이상입니다.
'Study > Ubuntu 공부' 카테고리의 다른 글
[VMware] Ubuntu HDD 파티션 용량 늘리는 방법 (Low Disk Space on Filesystem root) (0) | 2021.02.26 |
---|---|
[Wine] Wine Mono is not installed 에러 발생시 조치 방법 (0) | 2021.02.15 |
[Ubuntu] curl 최신 패키지 수동 설치 방법 (0) | 2021.02.05 |
[Jenkins] apt-get update 시에 GPG error 발생 문제점 해결 방법 (https://pkg.jenkins.io/debian-stable) (0) | 2021.02.03 |
[Ubuntu Linux] 최초 설치시 권장 패키지들 (SW 개발자 개발환경 기준) (0) | 2021.02.02 |