집 서버 공격과 방어 기록
너무 아프게 맞고 있었다. 관리 못해서 미안...
총 이벤트 : 57107건 (36일동안 하루 평균 1569건)
최근 24시간 : 7374건
최근 1시간 : 211건
24시간 중 auth_fail이 5684건 이고 나머지는 fail2ban 차단/해제랑 정상 웹 트래픽 이엇음
언제부터
이런건 AI 가 잘하니까 시켯다.
08-22 하루 종일 -> 52건 (IP 10개)
08-23 08시 -> 26건 (IP 11개)
08-23 09시 -> 152건 (IP 39개)
08-23 11시 -> 295건 (IP 59개)
그 뒤로 하루 3600 ~ 4300건
하루 50건이던게 8/23 아침부터 갑자기 70배로 폭증했다. 뭔가 목록에 올라간 것 같은데 뭐 때문인지는 모르겠다. 아무튼 이름은 기억이 안나는데 DNS 등록되면 봇들이 리프레시 하면서 거기 뒤진다는데 그거같다.
누가
434개 IP로 전세계에서...
한국 73.4% (KT가 28393 으로 제일 건수 많고 나머지가 SKB 11154 LG 4591)
미국 4.3%
인도네이사 3.2%
프랑스 2.8% (OVH)
안도라 2.7%
튀르키예 2.4%
우리나라가 73%였고 KT, SKB, LG 에서 설마 개개인이 명확한 악의를 갖고 오지는 않았을 것 같다. 그래서 처음엔 국내에 좀비가 이렇게 많나 싶었는데 그럴 수도 있을 것 같긴 한데, 보통은 사람이 쓰는 PC는 밤에 꺼지니까 24시간 남의 집 ssh 때리는건 켜놓고 잊어버린 공유기나 NAS, IP카메라 같은 것일수도 있고...
해외는 잘 모르겟다 전부 카드로 빌리는 VPS다. 국적같은게 아무 의미 없다
어떻게
시도하는 계정이 이렇다.
user 1789
admin 1584
test 1432
root 841
그냥 계정 모르는 상태로 흔한 이름으로 때리는 중(user, admin, test 같은 흔한 계정명은 개발 할 때 조심하자!!!)
얘네들이 되게 교묘하게 IP당 하루 145~157건씩 아주 고르게 들어오는데 fail2ban 임계값 밑으로 맞춰서 오고 있다. 그리고 추가분석 시켜보니 20건 이상 때린 IP 147개의 평균 활동 기간이 8.7일이다. 한번 훑고 지나가는게 아니라 목록에 저장해두고 계속 오는 것 같다. 특히 상위권은 20~39일씩 꾸준히 오고 있었다.
결과적으로
안 뚫렸다
SELECT ts, ip, username, detail FROM events WHERE kind='auth_ok' ORDER BY ts DESC;
최근 7일 성공 345건인데 출발지가 4개뿐이었다.
| IP | 건수 | 방식 | 내용 |
| ... | 269 | publickey | 내부 컨테이너. 30분마다 = n8n 스마트공장 판정기 |
| ... | 67 | publickey | 내부 컨테이너 |
| ... | 7 | password | 나 |
| ... | 2 | password | 나 (집 LAN) |
전부 나거나 내 시스템이다.
덤으로 알게 된 것
cloudflared 터널은 인터넷이 끊기면 바로 에러를 뱉는다. 그걸로 단절 구간을 잡을 수 있다
08-23 12~13시 : 113건 오류 (공격 급증한 당일)
08-27 17~18시 : 122건
08-28 00~01시 : 161건
그 외 기간 : 0~1건
그리고 8/27 03:53 부터 12:25 사이에는 외부 ssh가 완전히 멈췄는데 같은 시간 cloudflared 오류는 0건이었다. 즉 나가는건 멀쩡한데 들어오는것만 8시간 반동안 죽어있었다.
이건 공유기 NAT 세션 테이블이 맛간 증상이다. 감염 기기 70대가 쉬지 않고 새 세션 만들고, fail2ban은 하루 741번 차단/해제 반복하니 우리집 개복치 공유기가 버틸리 없다. skb 기본 공유기 쓰고 있는데 슬슬 돈 들여서 제대로된 vpn 라우터로 바꿀가 고민중이다
범인
알겟냐고
관측된 434개는 가해자가 아니라 대부분 피해자다(ㅠ) 감염된 남의 공유기랑 빌린 VPS 뒤에 빌런이 잇고 심지어 나는 뚫린게 없어서 멀웨어 샘플도 없다.
샘플이 없으면 추적할 C2 주소도 뽑을수가 없고. 하루 5천번씩 admin, test 두들기는건 표적 공격이 아니다. 위험한 애들은 매우 은밀하게 계정명을 알고 들어온다. 즉 이건 그냥 인터넷 전체 훑는 상업 봇넷이고 뚫리면 코인 채굴기 심거나 프록시로 되팔거나 디도스 봇으로 쓴다.
찾아보면 업계에서 쓰는 추적 방법은 다 공개돼있다. 보안 분야는 솔직히 AI 가 잘 알아서 대충 읊어보라고 하니 이렇다고 한다...
C2 인프라 타고 올라가기 | 싱크홀링 | TLS 지문 상관분석 | 코드 주석 언어랑 컴파일 타임존 보기 | 암호화폐 추적 등...
근데 전부 검체가 있거나, 아니면 실제 현실에서 압수수색 권한이 있어야 시작된다. 결국 내가 개인이 할 수 있는건 없다.
놀랍게도 그냥 안 아프게 맞는게 답이라고 한다.
마치며
로그를 안 모아뒀으면 공유기만 초기화하고 고쳐졋네 하고 끝냈을 것이다. AI 참 좋다...