보통 리눅스를 처음 공부할 때, 윈도우에서 VMware나 VirtualBox 같은 가상머신 위에 리눅스를 설치해서 사용하는데요. 이때 조금 더 편하게 사용하기 위해 Putty와 같은 터미널 프로그램을 이용하게 됩니다. 여기서 사용되는 프로토콜이 SSH(Secure Shell)인데, 실제 기업에서도 외부에서 SSH의 22번 포트를 열어놓고 리눅스 서버에 접근하고 있죠. 이러다 보니 발생하는 보안 사고가 많은데, 오늘은 해커가 SSH로 서버에 접속해 무작위 대입을 통해서 공격을 하는 사례에 대해 말씀드리도록 하겠습니다.
기업에서 ISMS 인증이나 취약점 점검을 위한 컨설팅을 받을 때, 서버와 같은 인프라 취약점 진단에서 가장 기본적으로 보는 것이 root 계정으로 원격 접속을 제한하는 항목입니다. 우리가 처음 리눅스를 공부할 때는 편의성을 위해서 Putty로 가상머신 위에 올려진 리눅스에 SSH로 접근할 때 root 계정으로 접속을 허용했을 겁니다. 하지만 이를 실제 기업에서도 적용한다면 굉장히 큰 침해사고가 발생할 수 있는데요. 관리자 계정인 root로 원격 접속을 허용한다면, 무작위 대입을 통해 침해사고가 발생할 수 있기 때문입니다.
리눅스에서는 다양한 배포판이 존재하지만 거의 모든 배포판에서 관리자 계정이 root로 고정이 되어있습니다. 해커 입장에서는 이미 공격할 기업의 리눅스 서버 관리자 계정을 알고 시작하는 것과 같죠. 아이디를 root로 알고 있기 때문에 여기서 비밀번호만 안다면, 해당 기업의 내부 서버에 접속할 수 있는 것과 동일하며 공격을 더 이어나갈 수 있게 됩니다. 그러다 보니 대부분의 취약점 점검 가이드에서는 SSH와 같은 서비스를 이용해서 원격으로 접속할 때, 관리자 계정인 root로 접속을 제한하도록 진단하고 있죠.
실제로 해커들이 SSH를 통해서 로그인 시도를 한 내역을 분석해보니, 접속 아이디를 root로 시도한 것이 80% 이상이었다고 합니다. 만약 패스워드가 틀렸을 때 계정을 잠구는 임계값 설정이 되어 있지 않다면, 계속 시도해서 언젠가는 패스워드를 알아낼 수 있겠죠. 물론 어느 정도 규모가 있는 기업에서는 보안 솔루션에서 이를 탐지하겠지만, 중소기업이나 스타트업과 같이 규모가 작다면 어려울 겁니다. 하지만 SSH의 서비스에서 root 계정의 원격 로그인 금지하거나 서비스 포트를 변경하고, 임계값 설정과 강력한 패스워드를 사용하는 것만으로 방어를 할 수 있습니다.
최근 해커들은 SSH 무작위 공격을 통해서, 공격에 성공하면 해당 기업의 서버에 암호화폐 채굴 악성코드를 설치한다고 하는데요. 사실 이렇게 되면 랜섬웨어와 같이 바로 감염 사실을 알아차리고 힘들고, 최악의 경우는 서비스가 종료한 후나 긴 시간이 흐른 뒤에야 공격을 받았다는 것을 알게 되겠죠. 사실 이러한 공격을 방어하는 것은 위에서 말씀드렸던 것처럼 KISA나 보안 업체에서 공개한 취약점 진단 가이드에 나오는 진단 항목을 지키는 것만으로도 충분합니다. 기업에서 보안에 신경을 써서 오늘 말씀드린 무작위 공격과 같은 해킹에 대비하길 바라며, 이번 글은 여기서 마치도록 하죠. 감사합니다.
'Security Essay' 카테고리의 다른 글
안전조치 의무사항 위반 개인정보 유출 사례 (0) | 2022.12.05 |
---|---|
보호구역, 제한구역, 통제구역 정의 (0) | 2022.12.03 |
신당역 사건으로 본 공공기관 개인정보관리 미흡 사례 (0) | 2022.11.20 |
게시판 파일 업로드 악성 문서 차단 솔루션 구축 사례 (0) | 2022.11.18 |
국가사이버안보 기본법 제정안 입법 예고 (0) | 2022.11.12 |
댓글