와, 출근이 4시간 남았는데
게임 세팅좀 해놓고 자려 하는데, 이게 왠걸. '참조된 계정이 현재 잠겨있으므로 그 계정으로 로그온할 수 없습니다' 경고 문구가 뜨면서 로그인이 불가한 상태가 되었다.
단번에 눈치를 챘다. 내가 열어놓은 RDP(Remote Desktop Protocol, 원격 데스크톱)로 공격이 들어왔고 로그인 실패가 연속적으로 발생하면서 로그인이 막힌 결과를 초래하였다.
출근이 얼마 안남았는데, 미치겠다 진짜. 일단 원인 파악과 RDP 보안을 강화해두고 밤새고 출근하는 수밖에 없을 듯 하다. 아주 귀여운 친구들이다.
이번 포스팅은 아주 긴 포스팅이 될 것 같다. 팀장이라고 실무를 그만두고 보고서만 쓴다고 나를 이렇게 홀대하는 것을 참을 수가 없다. 보안 강화한 뒤 해당 국가의 욕을 한 바가지 써놓을 것이다.
일단 해결 방법부터
로그인 화면에서 당연히 계정 락이 걸린 상태이기 때문에 지금 현재로써는 해결할 방법이 없다. 방법을 조금 서술해보도록 하자.
- 1. 인터넷 랜선을 뽑는다.
- 2. 10분 이상 기다린다.
- 3. 다시 로그인을 한다.
참조된 계정이 현재 잠겨있다는 뜻은 여러번 로그인이 실패했다는 것을 의미하고 그렇게 되어 보안을 위해 계정을 잠가 로그온을 불가능하게 만들었다는 것.
첫 번째로는 인터넷 랜선을 뽑아야한다. 우리집 기니피그가 내 키보드로 로그인을 무작위로 한 것이 아니라면 외부에서 내 컴퓨터로 지금 무언가 공격이 들어오고 있다는 것이다.
흔히 보안 용어로 BruteForce(브루트 포스 무차별 대입) 공격을 하고 있다는 뜻인데, 랜선을 계속 꽂아놓는다면 10분이 지나도 의미가 없다. 그냥 계속 공격으로 로그인이 막힐 가능성이 크다.
랜선을 뽑았다면 당연히 공격은 들어오지 않을 것이고 그러면 10분 정도 기다리면 잠금이 해제가 된다. 기본 설정이 10분이기 때문에 10분 정도 기다려 로그인하면 된다. 로그인 후 랜선을 연결하는 순간부터 다시 공격이 들어올 가능성이 크다.
해킹 공격이 맞는가?
해킹 공격이 맞는가에 대한 원초적인 질문을 할 수 있다. 혹시 키보드가 잘못 놀렸을 수 있지 않을까라는 생각. 그렇게 생각할 수 있다. 그리고 꼭 눈으로 봐야지만 사실로 증명이 되는것 아니겠는가.
윈도우 키를 누른 뒤 '이벤트 뷰어'라고 입력한다. 좌측 메뉴에서 'Windows 로그 - 보안'으로 들어가 키워드를 클릭하면 감사 실패에 대한 로그를 쭉 확인할 수 있다.
지금 포스팅을 쓰는 이 중에도 지속적으로 공격이 들어오고 있다. 무작위 대입 공격은 말 그대로 아이디를 한 두개 고정해두고 많이 쓰는 비밀번호를 지속적으로 입력하여 뚫릴때까지 두드리는 것이다.
물론 비밀번호가 어렵다면 분명 크게 문제가 되지는 않는다. 그래도 나에게 자꾸 이런 시도가 들어오는 것 자체가 매우 불쾌할 수 있기 때문에 하나씩 해결해보도록 하자.
로그인이 실패(이벤트 ID 4625)를 하면 로그가 남는데, 계정 이름이 가관이다. 'АДМИНИСТРАТОР'. 러시아어로 'ADMINISTRATOR'를 의미한다. 이렇게 자꾸 시도하면 너무나 설레서 잠이 안오지 말입니다. 여튼 이벤트 뷰어로 지금 내 컴퓨터에 현 상황이 한 눈에 보인다.
조금 정확하게 알아보고자 네트워크 트래픽을 확인할 수 있는 Wireshark를 키게 되었다. 기가막힌다. 하나의 IP가 아니라 여러개의 감염 단말들이 내 PC를 때리고 있다.
하나의 IP를 평판 기반으로 검색을 해보았더니, 2022년 12월부터 활동하는 감염 단말로 확인이 된다. 카테고리는 Brute Force 공격이다. 이 녀석 한 두번이 아니였다. 공격이 들어오는 것은 확실하게 파악하고 피아식별 되었으니, 이제 그것을 해결해보도록 하자.
얼마나 많은 IP가 들어오는지 확인하기 위해 Wireshark에서 필터를 활용하여 확인을 해보았다. 아주 다양한 곳에서 맛집이다 하고 공격을 하고 있다. 이러니 윈도우 로그인이 실패하는 것은 당연하다.
뭐, 조치하기가 조금 귀찮긴 하지만 그래도 크게 어렵지 않으니 빨리 조치해야겠다. 시간 좀 남으면 씻고 놀토체스 몇 판 하다가 출근해보자.
tcp.dstport == 3389 && tcp.flags.syn == 1 && tcp.flags.ece == 1 && tcp.flags.cwr == 1
원격 데스크톱 로그인 보안 강화하기
- 원격 데스크톱 포트 바꾸기
원격 데스크톱의 포트를 바꾸면 간단하게 해결이 된다. 내가 원격 데스크톱을 써야 한다면 당연히 포트를 오픈해야하고 포트가 열려있다는 것은 공격자들에게 통로를 열어둔 것과 마찬가지다.
포트를 막으면 되지만 정작 사용해야하는 나 또한 사용하지 못하게 된다. 그럴때는 간단하게 원격데스크톱의 포트를 바꾸면 된다. 원격 데스크톱의 RDP은 기본 포트가 '3389'이다.
나를 타겟으로 들어오는 공격이 아닌 이상은 감염된 단말에 의해 스크립트로 돌아가는 공격일 뿐이다. 포트를 고정해두고 IP를 랜덤으로 타겟팅하여 무작위 공격을 하기 때문에 포트만 바꿔도 공격의 99프로는 막을 수 있다. 보통 잘 알려진 Well Known 포트는 변경해서 사용하는 것을 권고한다.
2019년도에 꽤나 유행했던 원격 데스크톱 RDP 취약점 PoC이다. 포트가 3389로 고정되어 있기에 이런 공격들은 무난하게 피할 수 있다. 포트를 변경하는 방법은 추후 작성하여 포스팅하도록 하겠다.
- 비밀번호는 항상 복잡하게
보통 아이디는 고정되어있다. 그렇기 때문에 비밀번호는 항상 어렵게 설정하여야한다. 단순 숫자나 너무 짧은 워딩으로 비밀번호를 설정하게 되면, 무작위 공격으로 뚫리는데 그리 오랜 시간이 걸리지 않을테니 말이다.
보안 권고에 따르면 비밀번호는 총 4가지를 권고하고 있다. 요즘 컴퓨터 사양이 좋아져서 점점 짧은 시간 내 해독이 가능하다. 하지만 개성없이 단순 툴이나 스크립트를 사용하여 무작위 공격을 하는 친구들은 절대 뚫지 못할 것이다. 특히 대부분 영어 조합으로 공격을 하기 때문에 한국 단어로 비밀번호를 설정하는 경우에는 꽤나 오래 걸릴 수 밖에 없다.
- 비밀번호는 8자리 이상
- 대문자와 소문자 섞어서 사용
- 숫자 사용
- 특수문자 사용
- 원격 데스크톱 끄기
만약 원격 데스크톱을 사용하지 않는 경우라면 당연히 포트를 닫는 것이 좋다. 사용하지도 않을 포트를 열어둬서 공격자들만 즐겁게 해줄 필요는 없기 때문이다.
원격 데스크톱 기능을 끄는 것은 매우 간단하다. '윈도우 키 - '원격 데스크톱 설정' 검색 - 원격 데스크톱 활성화 끔'으로 설정하면 된다. 혹시 자신이 사용하고 있지 않는다면 꼭 원격 데스크톱 활성화를 끄고 사용하면 된다.
- 윈도우 Windows 업데이트 꼬박꼬박 하기
RDP 공격은 무작위 대입 공격방식만 있는 것이 아니다. 각 해마다 윈도우 취약점을 활용해서 모든 보안 절차를 무시하고 들어오는 경우가 꽤나 많이 보고가 된다.
그렇기 때문에 이런 취약점들을 개인이 방어하지 못하기에 당연히 윈도우에서 배포하는 최신 업데이트를 해야지만 안전하다. 마이크로소프트는 세계 최고의 보안을 자랑한다. 그렇기에 그들을 믿어야 한다.
내 윈도우 버전을 확인하는 방법 또한 간단하다. '윈도우 + r키 - winver'를 입력하면 현재 내 컴퓨터에 깔려있는 윈도우 버전을 확인할 수 있다. 최신 버전은 마이크로소프트 홈페이지나 위키에 자세히 작성되어있으니 참고하면 된다. 물론 과거 버전이면 자연스럽게 업데이트를 해주니 걱정하지 않아도 된다 :)
마치며
생각보다 재밌었다. 현재 운영하고 있는 워드프레스 블로그에도 많은 공격들이 들어오고 있을텐데 확인해보고 다양한 보안 정책을 확인해야겠다.
보안을 회사 일이라고만 생각하면서 다녔는데 실제로도 도움이 꽤 많이 되는 것을 보면 직장 생활을 꽁으로 다닌 것은 아닌가보다. 아내는 자고, 현재 시각은 새벽 4시고. 딱 롤토체스 3판만 하고 출근 준비해야겠다. 끝 :)
또 막혀서 작성한 2탄 게시글
▶ [해결] '로그온 시도나 암호 변경 시도를 너무 많이 했기 때문에, 계정 잠김' - 윈도우 방화벽 / 계정 아이디 변경
추천 게시글
'유부남의 이것저것 > IT' 카테고리의 다른 글
[ChatGPT] 블로그 내용 작성하기, HTML 'nbsp(스페이스)' 없애기 (0) | 2023.04.20 |
---|---|
OpenAI 챗지피티(ChatGPT) 가입 방법 및 한글 사용 후기 (0) | 2023.02.05 |
깡통 PC 업그레이드, 메인보드 및 CPU 홈 조립 (H310M-E Pro) (0) | 2023.01.08 |
[엑셀] 평균 볼링 점수 5의 배수 반올림과 특정 숫자 변환하기 (0) | 2022.12.24 |
가비아, 카페24(Cafe46) 도메인 및 호스팅 가격 비교 (+ 네임서버 설정) (0) | 2022.12.16 |