봇넷의 정의
봇넷은 하이재킹된 컴퓨터 장치의 네트워크로, 다양한 사기와 사이버 공격에 사용됩니다. “봇넷”이라는 용어는 "로봇"과 "네트워크"를 합쳐서 만들어진 것입니다. 봇넷은 보통 다단계 기법의 침투 단계에 등장합니다. 봇은 데이터 도난, 서버 고장, 맬웨어 배포와 같은 대규모 공격을 자동화하는 도구의 역할을 합니다.
봇넷은 사용자의 장치를 통해 다른 사람을 속이거나 중단을 일으키며, 이 모든 것은 사용자의 동의 없이 이루어집니다. 이런 질문을 던질지도 모릅니다. “봇넷 공격이란 무엇이고 어떻게 작동하나요?” 이러한 봇넷의 정의를 확장할 수 있도록 봇넷이 만들어지고 사용되는 방식의 이해를 도와드리겠습니다.
봇넷의 작동 방식
봇넷은 더 큰 규모의 공격을 수행하기 위해 해커의 역량을 성장시키고 자동화하며 가속화하도록 만들어집니다.
한 사람 또는 소규모 해커 그룹만으로도 로컬 장치에서 많은 공격을 수행할 수 있습니다. 하지만 약간의 비용과 시간을 투자하면 더 효율적인 운영에 활용할 수 있는 컴퓨터를 추가로 많이 획득할 수 있습니다.
봇 허더는 원격 명령어를 통해 하이재킹한 장치 집합을 이끕니다. 봇을 컴파일하고 나면 허더는 명령 프로그래밍을 사용해 다음 행동을 주도합니다. 명령을 받는 쪽은 봇넷을 설정하거나 봇넷을 렌탈로 운영할 수 있습니다.
좀비 컴퓨터 또는 봇은 맬웨어에 감염된 각각의 사용자 장치로, 봇넷에 사용하기 위해 탈취된 장치입니다. 이러한 장치는 봇 허더가 설계한 명령어에 따라 작동합니다.
봇넷을 구축하는 기본적인 단계는 다음과 같은 몇 단계로 단순화할 수 있습니다.
- 준비 및 노출: 해커는 취약점을 공격하여 사용자를 맬웨어에 노출시킵니다.
- 감염: 사용자 장치가 통제권을 가져가는 맬웨어에 감염됩니다.
- 활성화: 해커는 감염된 장치를 동원하여 공격을 수행합니다.
1단계인 노출은 해커가 웹사이트, 애플리케이션 또는 인간의 행동에서 취약점을 발견하는 것으로 시작됩니다. 목표는 사용자가 부지불식간에 맬웨어 감염에 노출되게 만드는 것입니다. 해커가 소프트웨어 또는 웹사이트의 보안 문제를 공격하거나 이메일 또는 기타 온라인 메시지를 통해 맬웨어를 전달하는 행태가 흔히 보입니다.
2단계에서 장치를 침해하는 조치가 취해지는 즉시 사용자는 봇넷 맬웨어에 감염됩니다. 이러한 수법 중에는 소셜 엔지니어링을 통해 특수한 트로이 목마 바이러스를 다운로드하도록 사용자를 설득하는 과정이 수반되는 경우가 많습니다. 감염된 사이트를 방문할 때 드라이브 바이 다운로드를 사용하는 식으로 더 공격적인 방식을 사용하기도 합니다. 전달 방식과 무관하게 사이버 범죄자는 궁극적으로 여러 사용자 컴퓨터의 보안을 침해합니다.
해커가 준비를 마치면 각 컴퓨터의 통제권을 가져가는 3단계가 시작됩니다. 공격자는 감염된 모든 시스템을 원격으로 관리할 수 있는 하나의 "봇" 네트워크로 구성합니다. 보통 사이버 범죄자는 수천, 수만, 심지어 수백만 대의 컴퓨터를 감염시키고 통제하고자 합니다. 이제 사이버 범죄자는 대규모 "좀비 네트워크", 즉 완전히 구축된 활성 봇넷의 대장 노릇을 할 수 있게 된 것입니다.
아직 이런 의문이 남아 있을 수 있습니다. “그래서 봇넷이 하는 일은 무엇인가요?” 감염되고 나면 좀비 컴퓨터는 다음과 같은 관리자 수준의 작동 권한을 허용합니다.
- 시스템 데이터 읽기 및 쓰기
- 사용자의 개인 데이터 수집
- 파일 및 기타 데이터 전송
- 사용자 활동 모니터링
- 다른 장치의 취약성 검색
- 애플리케이션 설치 및 실행
봇넷은 무엇을 통제할 수 있나요?
인터넷에 연결할 수 있는 장치라면 봇넷 모집의 후보가 될 수 있습니다.
오늘날 우리가 사용하는 수많은 장치에는 그렇게 보이지 않더라도 내부에 일정 형태의 컴퓨터가 포함되어 있습니다. 거의 모든 컴퓨터 기반 인터넷 장치는 봇넷에 취약하며, 위협은 끊임없이 발전하고 있습니다. 스스로를 보호할 수 있도록 봇넷에 주로 하이재킹 당하는 장치를 알아두시기 바랍니다.
Windows OS 또는 macOS를 실행하는 데스크톱이나 노트북과 같은 전통적인 컴퓨터는 오랫동안 봇넷 구축에 흔히 사용되는 표적이었습니다.
모바일 장치는 사용하는 인구가 많아지면서 또 다른 표적이 되었습니다. 스마트폰과 태블릿이 지난 봇넷 공격에 눈에 띌 정도로 포함되고 있습니다.
인터넷 연결을 지원하는 인터넷 인프라 하드웨어도 봇넷에 끌어들일 수 있습니다. 네트워크 라우터와 웹 서버가 잘 알려진 표적입니다.
사물 인터넷(IoT) 장치에는 인터넷을 통해 서로 데이터를 공유하는 연결된 장치가 모두 포함됩니다. 컴퓨터와 모바일 장치 외에도 다음을 예로 들 수 있습니다.
- 스마트 홈 장치(온도조절기, 보안 카메라, 텔레비전, 스피커 등)
- 차량 내 인포테인먼트(IVI)
- 웨어러블 장치(스마트워치, 피트니스 트래커 등)
결국 이러한 장치는 모두 손상되어 거대한 봇넷을 만들 수 있습니다. 기술 시장이 저비용, 저보안 장치로 과포화되어 가면서 사용자는 특히 취약해졌습니다. 안티 바이러스가 없으면 맬웨어 봇 허더는 눈치 채지 못하는 사이에 장치를 감염시킬 수 있습니다.
해커는 봇넷을 어떻게 통제하나요?
명령을 내리는 것은 봇넷을 통제하는 데 있어 중요한 부분입니다. 물론 익명성도 공격자에게 그만큼 중요합니다. 그렇기에 봇넷은 원격 프로그래밍을 통해 운영됩니다.
C&C(Command-and-Control)는 서버에서 모든 봇넷 지시와 리더십을 발휘하는 소스입니다. 이것은 봇 허더의 주요 서버이며, 각각의 좀비 컴퓨터는 이로부터 명령을 받습니다.
각 봇넷은 다음과 같은 모델의 명령을 직, 간접적으로 따릅니다.
- 중앙화된 클라이언트-서버 모델
- 탈중앙화된 P2P 모델
중앙화된 모델은 하나의 봇넷 허더 서버에서 주도합니다. 이 모델의 변형은 하위 허더 또는 "프록시" 역할을 하는 추가 서버를 더할 수 있습니다. 그러나 중앙화되어 있든, 프록시 기반 계층 구조이든 모든 명령은 봇 허더로부터 하달됩니다. 두 구조 모두 봇 허더가 발견될 가능성이 있으므로 이와 같은 구식 수법은 그다지 이상적이지 않습니다.
탈중앙화된 모델은 모든 좀비 컴퓨터에 지시 책임을 내장합니다. 봇 허더가 좀비 컴퓨터 중 하나에 접촉하기만 하면 명령어를 다른 컴퓨터로 전파할 수 있습니다. P2P 구조는 봇 허더의 정체를 더욱 모호하게 만듭니다. 기존의 중앙화된 모델에 비해 명확한 장점이 있기 때문에 오늘날은 P2P가 더 보편적으로 사용됩니다.
봇넷은 무엇에 사용되나요?
봇넷 생성자는 금전이든 개인적 만족이든 항상 무언가를 얻고자 합니다.
- 금융 도난: 금전을 갈취하거나 직접적으로 훔칩니다.
- 정보 도난: 민감하거나 기밀인 계정에 대한 액세스를 노립니다.
- 서비스 사보타주: 서비스와 웹사이트를 오프라인으로 만드는 등의 수법을 사용합니다.
- 암호화폐 사기: 사용자의 프로세싱 성능을 암호화폐 채굴에 사용합니다.
- 다른 범죄자에게 액세스 권한 판매: 의심하지 않는 사용자를 상대로 추가적인 사기를 저지릅니다.
봇넷을 구축하는 대부분의 동기는 다른 사이버 범죄와 유사합니다. 많은 경우 이러한 공격자는 귀중한 무언가를 훔치거나 다른 사람에게 문제를 유발하고자 합니다.
사이버 범죄자가 대규모 좀비 시스템 네트워크를 구축하여 이에 대한 액세스 권한을 판매하는 경우도 있습니다. 구매자는 보통 다른 사이버 범죄자이며, 대여 방식 또는 완전 매입 방식으로 대가를 지불합니다. 예를 들어 스팸 전송자는 대규모 스팸 사기를 위해 네트워크를 대여하거나 구매할 수 있습니다.
해커에게 잠재적인 이득이 많음에도 불구하고 그냥 할 수 있기 때문에 봇넷을 만드는 사람들도 있습니다. 동기와 관계 없이 봇넷은 결국 봇넷이 통제하는 사용자와 다른 사람 모두를 상대로 어떤 유형으로든 공격을 행하는 데 사용됩니다.
봇넷 공격의 유형
봇넷은 그 자체로도 공격이 될 수 있지만, 이차적인 사기와 사이버 범죄를 대규모로 실행하는 데 적합한 도구입니다. 일반적인 봇넷 수법으로는 다음이 포함됩니다.
분산 서비스 거부(DDoS)는 웹 트래픽으로 서버에 과부하를 일으켜 서버를 중단시키는 공격입니다. 좀비 컴퓨터는 웹사이트와 기타 온라인 서비스에 쇄도하여 한동안 다운시키는 역할을 맡습니다.
피싱 수법은 중요한 정보를 얻어내기 위해 신뢰하는 사람과 조직을 사칭합니다. 일반적으로 여기에는 은행 로그인 정보 또는 이메일 자격 증명과 같은 사용자 계정 정보를 훔치려는 대규모 스팸 캠페인이 포함됩니다.
무차별 대입 공격은 웹 계정을 강제로 침해하려고 만든 프로그램을 실행합니다. 사전 공격과 자격 증명 스터핑도 취약한 사용자 비밀번호를 공격하여 데이터에 액세스하는 데 사용됩니다.
봇넷의 예방 방법
본인과 다른 사람의 안전에 대한 위협을 고려할 때는 봇넷 맬웨어로부터 스스로를 보호하는 것이 필수적입니다.
다행히 소프트웨어 보호 기능을 이용하고 컴퓨터 습관을 약간 바꾸는 것만으로도 도움이 될 수 있습니다.
봇넷을 예방하는 6가지 팁
- 스마트 장치의 모든 사용자 비밀번호를 강화합니다. 복잡하고 긴 비밀번호를 사용하면 약하고 짧은 비밀번호를 사용할 때보다 안전을 강화하는 데 도움이 됩니다. 약한 비밀번호의 예로는 ‘pass12345와 같은 비밀번호를 들 수 있습니다.
- 보안이 취약한 기기의 구매는 피하십시오. 늘 쉽게 찾을 수 있는 것은 아니지만 저렴한 스마트 홈 장비는 보안보다는 사용 편의성을 우선시하는 경향이 있습니다. 구매하기 전에 제품의 안전 및 보안 기능에 관한 리뷰를 살펴보십시오.
- 모든 장치의 관리자 설정과 비밀번호를 업데이트합니다. 장치끼리 또는 인터넷에 연결된 모든 것에서 가능한 모든 개인 정보 보호 및 보안 옵션을 확인하는 것이 좋습니다. 스마트 냉장고와 Bluetooth 탑재 차량조차도 소프트웨어 시스템에 액세스하는 데 기본 제조업체 비밀번호를 사용합니다. 맞춤 로그인 자격 증명과 비공개 연결로 업데이트하지 않으면 해커가 연결된 장치를 침해하여 감염시킬 수 있습니다.
- 이메일 첨부파일에 주의를 기울입니다. 가장 좋은 방법은 첨부파일을 절대 다운로드하지 않는 것입니다. 첨부파일을 다운로드해야 한다면 신중하게 살펴보고 보낸 사람의 이메일 주소를 검증하십시오. 다운로드하기 전에 첨부파일에서 맬웨어를 선제적으로 검사해 주는 안티 바이러스 소프트웨어를 사용하는 것도 좋습니다.
- 받은 메시지에 있는 링크는 절대 클릭하지 않습니다. 문자 메시지, 이메일, 소셜 미디어 메시지는 모두 봇넷 맬웨어를 전파할 수 있습니다. 링크를 주소 표시줄에 직접 입력하는 것도 DNS 캐시 중독과 드라이브 바이 다운로드를 예방하는 데 도움이 됩니다. 또한 추가적인 단계로 링크의 공식 버전을 검색해 보시기 바랍니다.
- 효과적인 안티 바이러스 소프트웨어를 설치합니다. 강력한 인터넷 보안 제품군은 트로이 목마나 다른 위협으로부터 컴퓨터를 보호하는 데 도움이 됩니다. Android 휴대전화와 태블릿을 비롯한 모든 장치에 적용되는 제품을 고르십시오.
봇넷은 사용자의 장치에 뿌리 내리고 나면 저지하기가 어렵습니다. 피싱 공격과 다른 문제를 줄이려면 이러한 악성 하이재킹으로부터 각각의 장치를 보호해야 합니다.