당신의 방어가 충분한지를 물으려면, 먼저 "누구로부터?"를 물어야 합니다. 자동화된 봇을 막는 벽과 국가 지원 조직을 막는 벽은 다릅니다.
들어가며: 위협 모델 없는 보안은 미신이다
1장에서 우리는 인터넷에 연결되는 순간 발견되고, 발견되는 순간 공격이 시작된다는 사실을 확인했습니다. 그러나 "공격이 온다"는 말만으로는 방어를 설계할 수 없습니다. 모든 공격을 동등하게 취급하면, 자원은 무한히 부족하고 방어는 초점을 잃습니다.
보안에서 가장 먼저 던져야 할 질문은 "어떻게 막을까"가 아니라 "누구로부터, 무엇을 지킬까"입니다. 이것을 위협 모델링(threat modeling) 이라고 부릅니다. 당신을 노릴 가능성이 있는 공격자가 누구인지, 그들의 동기와 역량과 인내심이 어느 정도인지를 먼저 그려야, 그에 비례하는 방어를 설계할 수 있습니다.
은행을 터는 강도와 자전거를 훔치는 좀도둑을 같은 방식으로 막을 수는 없습니다. 자전거에는 자물쇠 하나면 충분하지만, 은행에는 금고와 경비와 감시 카메라와 경보 체계가 필요합니다. 반대로 자전거에 은행 수준의 보안을 적용하는 것은 자원의 낭비입니다. 그러나 핵심은 이것입니다. 자신이 자전거인 줄 알았는데 사실은 은행이었던 경우가 위험합니다. 그리고 많은 조직이 자신의 가치를 과소평가합니다.
이 장에서는 2026년 현재 웹과 서버를 노리는 공격자들을 동기와 역량에 따라 분류합니다. 가장 흔하고 무차별적인 자동화 봇에서 시작하여, 금전을 노리는 범죄 조직을 거쳐, 충분한 시간과 자금을 가진 국가 지원 그룹(APT)까지 올라갑니다. 각 유형이 어떻게 다른 위협을 가하는지, 그리고 무엇보다 "우리는 표적이 아니다"라는 흔한 착각이 왜 위험한지를 들여다보겠습니다.
2.1 두 개의 축: 무차별이냐 표적이냐, 그리고 역량의 사다리
공격자를 이해하는 가장 유용한 틀은 두 개의 축입니다.
첫 번째 축: 무차별 공격이냐, 표적 공격이냐.
무차별 공격(opportunistic attack)은 특정 피해자를 정해 두지 않습니다. 인터넷 전체를 그물로 훑어, 걸려드는 모든 취약한 대상을 노립니다. 1장에서 본 자동화된 스캔과 익스플로잇이 여기에 해당합니다. 이들에게 당신은 이름이 아니라 IP 주소이며, 당신이 특별히 미워서가 아니라 그저 취약해서 공격받습니다. 방어의 논리는 단순합니다. 당신을 다음 사람보다 조금만 더 어려운 표적으로 만들면, 공격자는 더 쉬운 다음 사람에게로 넘어갑니다. 사자에게서 도망칠 때 사자보다 빠를 필요는 없고 옆 사람보다 빠르면 된다는, 그 익숙한 농담이 여기서는 진담입니다.
표적 공격(targeted attack)은 정반대입니다. 공격자가 특정한 당신을 정해 놓고, 당신에게 맞춰 공격을 설계합니다. 당신의 직원을 조사하고, 당신의 기술 스택을 분석하고, 당신만을 위한 피싱 메일을 작성하며, 한 경로가 막히면 다른 경로를 찾습니다. 이들에게 "옆 사람보다 빠르면 된다"는 논리는 통하지 않습니다. 옆 사람이 아니라 바로 당신이 목표이기 때문입니다. 방어의 논리도 달라집니다. 단일 방어선을 뚫기 어렵게 만드는 것을 넘어, 뚫렸을 때 피해를 가두고 빠르게 탐지하는 심층 방어가 필수가 됩니다.
두 번째 축: 역량의 사다리.
공격자의 역량은 넓은 스펙트럼을 이룹니다. 한쪽 끝에는 남이 만든 도구를 받아서 그냥 실행할 뿐인 초보가 있고, 다른 쪽 끝에는 알려지지 않은 취약점(0-day)을 직접 발굴하고 맞춤형 악성코드를 제작하는 국가급 조직이 있습니다. 역량이 높을수록 더 정교하고, 더 은밀하고, 더 끈질깁니다.
이 두 축을 결합하면 공격자의 지형이 그려집니다. 대부분의 공격은 "무차별 × 낮은 역량" 사분면에 몰려 있습니다. 가장 흔하기 때문입니다. 그러나 가장 위험한 것은 "표적 × 높은 역량" 사분면, 즉 APT입니다. 빈도는 낮지만 일단 표적이 되면 막기가 극히 어렵기 때문입니다.
이제 이 지형을 따라 공격자들을 하나씩 살펴보겠습니다.
2.2 스크립트 키디와 자동화 봇 — 가장 흔한 배경 소음
가장 낮은 역량, 가장 무차별적인 공격자부터 시작합니다.
스크립트 키디란 무엇인가
스크립트 키디(script kiddie)는 보안 업계에서 다소 경멸적으로 쓰이는 표현으로, 공격의 원리를 깊이 이해하지 못한 채 남이 만든 도구와 익스플로잇을 받아다 실행하는 사람을 가리킵니다. 이들은 직접 취약점을 발견하거나 익스플로잇을 작성하지 못합니다. 공개된 도구를 내려받아, 설명을 따라, 버튼을 누를 뿐입니다.
그렇다고 이들을 무시할 수는 없습니다. 이유는 두 가지입니다.
첫째, 수가 압도적으로 많습니다. 진입 장벽이 낮기 때문에, 호기심이나 과시욕으로 공격을 시도하는 사람이 전 세계에 무수히 많습니다. 1장에서 본 끊임없는 배경 소음의 상당 부분이 이들과 그들이 돌리는 자동화 도구에서 나옵니다.
둘째, 도구가 강력해졌습니다. 역량이 낮아도, 그들이 쓰는 도구는 전문가가 만든 것입니다. 자동화된 취약점 스캐너, 익스플로잇 프레임워크, 무차별 대입 도구는 점점 더 사용하기 쉬워지고 강력해집니다. 운전을 못 하는 사람도 고성능 자동차의 가속 페달은 밟을 수 있습니다.
자동화 봇과 봇넷
스크립트 키디보다 더 큰 비중을 차지하는 것은, 사실 사람이 아니라 봇입니다. 봇넷(botnet)은 이미 감염되어 공격자의 통제를 받는 수많은 컴퓨터와 장치의 네트워크입니다. 이 봇들은 사람의 개입 없이 자동으로 인터넷을 스캔하고, 취약한 대상을 찾고, 익스플로잇을 던지고, 성공하면 새 장치를 감염시켜 봇넷을 키웁니다.
이것이 1장에서 강조한 "사람의 판단이 개입하지 않는다"의 실체입니다. 당신의 서버를 두드리는 것은 대부분 사람이 아니라, 이미 감염된 다른 누군가의 서버이거나 IoT 장치입니다. 24시간 쉬지 않고, 피로를 모르며, 크고 작음을 가리지 않습니다.
무엇을 노리는가, 그리고 어떻게 막는가
이들이 노리는 것은 1장 1.3에서 해부한 그대로입니다. 노출된 설정 파일, .git 디렉터리, CMS와 관리 패널, SSH 무차별 대입, 그리고 공개된 지 얼마 안 된 알려진 취약점입니다. 이들은 정교한 맞춤 공격을 하지 않습니다. 가장 흔하고 가장 쉬운 표적만 노립니다.
실제로 어떤 취약점이 "지금 인터넷에서 공격당하고 있는지"가 궁금하다면, 미국 CISA가 운영하는 실제 악용 취약점 목록(Known Exploited Vulnerabilities, KEV)을 보면 됩니다. 이것은 이론상 위험한 취약점이 아니라, 실제 공격에 쓰이는 것이 확인된 취약점만 추려 놓은 목록입니다. 자동화 봇이 다음에 무엇을 두드릴지 미리 알려주는 예보판이라고 생각하면 됩니다. 여기 올라온 항목 중 당신이 쓰는 소프트웨어가 있다면, 그 패치는 "나중에"가 아니라 "오늘" 해야 합니다.
그래서 방어도 명확합니다. 기본기만 갖추면 이 사분면의 공격은 대부분 막힙니다.
- 비밀번호 로그인을 끄고 공개키로만 SSH에 접속하면(7장), SSH 무차별 대입은 통째로 무력화됩니다.
- 설정 파일과
.git을 외부에서 접근 불가능하게 차단하면(9장, 11장), 가장 흔한 정보 노출이 막힙니다. - 소프트웨어를 최신으로 유지하면(4장, 15장), 공개된 취약점을 노린 자동 공격이 빗나갑니다.
- 관리 패널을 Zero Trust 게이트웨이 뒤에 숨기면(6장), 무차별 탐색의 사정권에서 벗어납니다.
요컨대, 스크립트 키디와 봇은 "옆 사람보다 조금만 빠르면 되는" 전형적인 상대입니다. 이 책의 기본기를 갖추는 것만으로 당신은 이들의 그물에서 빠져나가, 더 쉬운 다음 표적에게 그들을 떠넘길 수 있습니다.
2.3 금전 동기 범죄 조직 — 보안을 산업화한 자들
다음 단계는 명확한 목적, 즉 돈을 위해 움직이는 조직화된 범죄 집단입니다. 이들은 스크립트 키디와 차원이 다릅니다. 전문화되어 있고, 분업화되어 있으며, 사업처럼 운영됩니다.
랜섬웨어와 RaaS
오늘날 금전 동기 사이버 범죄의 중심에는 랜섬웨어(ransomware)가 있습니다. 랜섬웨어는 피해자의 데이터를 암호화하여 사용할 수 없게 만든 뒤, 복호화 키를 대가로 몸값(ransom)을 요구하는 악성코드입니다. 최근에는 데이터를 암호화하는 것에 더해, 그 데이터를 미리 빼돌린 뒤 "돈을 주지 않으면 공개하겠다"고 협박하는 이중 갈취(double extortion) 가 일반적입니다.
더욱 우려스러운 것은 이 시장이 서비스형(RaaS, Ransomware-as-a-Service) 으로 산업화되었다는 점입니다. 즉, 랜섬웨어를 직접 개발할 능력이 없는 범죄자도, 전문 조직이 만든 랜섬웨어를 빌려서 공격할 수 있습니다. 개발자는 도구를 만들어 공급하고, 실행자(affiliate — 도구를 빌려 실제 공격을 수행하는 가맹점 격의 범죄자)는 그것으로 공격을 수행하며, 수익을 나눕니다. 이 분업 구조 덕분에 공격의 규모와 빈도가 폭발적으로 늘었습니다.
이것은 2.2에서 본 "도구가 강력해졌다"의 극단적 형태입니다. 범죄의 진입 장벽이 낮아지고, 전문성은 분업으로 보충됩니다.
이 산업화된 모델이 한 건의 취약점으로 얼마나 큰 피해를 만들 수 있는지를 보여 준 대표 사례가 2023년 MOVEit Transfer 사건입니다. MOVEit은 기업들이 대용량 파일을 안전하게 주고받는 데 쓰던 전송 소프트웨어인데, 여기서 SQL 인젝션 취약점(CVE-2023-34362)이 발견되자 Cl0p 랜섬웨어 조직이 이를 대량으로 악용했습니다. 그 결과 이 소프트웨어를 쓰던 전 세계 수많은 기관의 데이터가 한꺼번에 털렸습니다. 핵심은, 표적 하나하나를 정교하게 공략한 것이 아니라 취약한 소프트웨어를 쓰는 곳을 자동으로 쓸어 담았다는 점입니다. 당신이 무엇을 잘못해서가 아니라, 그저 그 소프트웨어를 패치하지 않은 채 쓰고 있었다는 이유만으로 피해자 명단에 오를 수 있다는 뜻입니다. 이 취약점 역시 앞서 말한 CISA 실제 악용 목록(KEV)에 즉시 올랐습니다.
무차별과 표적의 경계에 서 있다
흥미로운 점은, 금전 동기 조직이 두 축의 경계에 걸쳐 있다는 것입니다.
한편으로 이들은 무차별적입니다. 자동화된 스캔으로 취약한 대상을 광범위하게 찾습니다. 그러나 다른 한편으로, 일단 침투 가능한 대상을 찾으면 그때부터는 표적 공격으로 전환합니다. 피해자의 규모와 지불 능력을 가늠하고, 가장 아픈 데이터가 무엇인지 파악하고, 백업을 먼저 파괴한 뒤 원본 데이터를 암호화하며, 몸값을 협상합니다. 이 후반부는 종종 사람이 직접 개입하는 정교한 작전입니다.
그래서 이들에 대한 방어는 두 겹입니다. 침투 자체를 막는 기본기(2.2의 방어)가 1차 방어선이고, 침투당했을 때 피해를 최소화하는 심층 방어가 2차 방어선입니다. 특히 랜섬웨어에 대한 가장 강력한 방어는, 역설적으로 침투를 막는 것이 아니라 백업입니다. 데이터가 암호화되어도 깨끗한 백업에서 복구할 수 있다면, 몸값을 지불할 이유가 없어집니다. 13장에서 다룰 3-2-1 백업 규칙이 랜섬웨어 시대의 핵심 생존 전략인 이유입니다.
다만 한 가지 현장에서 거듭 확인한 함정이 있습니다. 백업이 서버에 그대로 연결되어 있으면, 정교한 공격자는 원본을 암호화하기 전에 백업부터 찾아 지웁니다. 그래서 백업은 "있다"가 아니라 "공격자의 손이 닿지 않는 곳에, 그리고 실제로 복구가 되더라"까지 확인되어야 백업입니다. 내가 운영하는 서버들에서도 백업이 자동으로 도는 것과는 별개로, 그 백업이 정말 되돌려지는지는 주기적으로 직접 복원해 봐야 마음이 놓이더군요.
"우리는 작아서 표적이 아니다"라는 착각, 첫 번째 반박
여기서 이 장의 핵심 주제 중 하나를 짚습니다. 많은 중소 조직이 "랜섬웨어는 대기업이나 당하는 것"이라고 생각합니다. 이것은 위험한 오해입니다.
오히려 그 반대인 경우가 많습니다. RaaS의 산업화로 공격 비용이 낮아지자, 범죄자들은 보안이 허술한 중소 조직을 대량으로 노리는 것이 오히려 효율적이라는 것을 알게 되었습니다. 대기업은 보안에 막대한 투자를 하고 전담 팀을 두지만, 중소 조직은 그렇지 못합니다. 큰 한 건을 노리다 실패하는 것보다, 방어가 약한 작은 건 여러 개를 자동화로 터는 것이 안정적인 수익 모델입니다. 해마다 침해 사고를 통계로 정리하는 Verizon 데이터 침해 조사 보고서(DBIR) 같은 자료를 보면, 중소 조직이 결코 사고에서 비켜나 있지 않다는 사실이 매년 반복해서 드러납니다.
이들의 침투 경로 대부분이 거창한 0-day가 아니라는 점도 중요합니다. 이미 패치가 나와 있는데 미적용 상태로 방치된 취약점이 가장 흔한 입구입니다. 예컨대 Citrix 장비의 Citrix Bleed(CVE-2023-4966)는 패치가 이미 배포되어 있었는데도, 그것을 적용하지 않은 조직들이 랜섬웨어 조직에 줄줄이 뚫렸습니다. 다시 말해, 당신이 작아서 안전한 것이 아니라 패치를 미뤄서 위험한 것입니다.
게다가 중소 조직에게 몸값은 상대적으로 더 치명적입니다. 대기업은 사고를 흡수할 여력이 있지만, 작은 조직은 한 번의 랜섬웨어로 폐업에 이를 수 있습니다. 협박의 효과가 더 크다는 뜻이고, 이는 곧 더 매력적인 표적이라는 뜻입니다. 당신이 작다는 것은 안전의 근거가 아니라, 오히려 위험의 근거일 수 있습니다.
2.4 핵티비스트와 내부자 — 동기가 다른 위협
금전이 아닌 다른 동기로 움직이는 공격자들도 있습니다. 이들은 빈도는 낮지만, 동기가 다르기에 표적 선정과 행동 양식도 다릅니다.
핵티비스트
핵티비스트(hacktivist)는 정치적, 사회적, 이념적 목적을 위해 해킹을 수행하는 개인이나 집단입니다. 이들의 목표는 돈이 아니라 메시지의 전파, 항의의 표시, 또는 적대 세력에 대한 타격입니다.
핵티비스트의 공격은 종종 가시성을 노립니다. 웹사이트를 변조하여 정치적 구호를 띄우거나(디페이스먼트), 서비스를 마비시키는 대규모 트래픽 공격(DDoS)으로 운영을 방해하거나, 내부 문서를 탈취하여 폭로하는 식입니다. 표적은 그들의 명분과 대립하는 정부 기관, 기업, 단체가 됩니다.
따라서 당신의 조직이 정치적, 사회적으로 민감한 영역에 있거나, 논쟁적 사안과 관련되어 있다면, 핵티비스트의 표적이 될 가능성을 위협 모델에 포함해야 합니다. 이들에 대한 방어는 기본기에 더해, 가용성을 지키는 DDoS 대응과 웹 변조를 빠르게 탐지·복구하는 체계가 중요합니다.
내부자 위협
가장 막기 어려운 위협 중 하나는 바깥이 아니라 안에서 옵니다. 내부자(insider)는 이미 합법적인 접근 권한을 가진 사람입니다. 직원, 계약자, 협력사 직원 등이 여기에 해당합니다.
내부자 위협은 두 종류로 나뉩니다. 악의적 내부자는 불만, 금전적 유혹, 외부의 포섭 등으로 의도적으로 조직에 해를 끼칩니다. 데이터를 빼돌리거나, 시스템을 파괴하거나, 외부 공격자에게 접근을 제공합니다. 부주의한 내부자는 악의는 없지만 실수로 사고를 일으킵니다. 피싱에 속아 자격 증명을 넘기거나, 민감 데이터를 잘못된 곳에 올리거나, 보안 절차를 무시합니다.
내부자가 특히 위험한 이유는, 이 책에서 다루는 외부 방어 대부분이 그들에게는 무력하기 때문입니다. 방화벽도, Zero Trust 게이트웨이도, 그들이 이미 안에 있다면 소용이 없습니다. 그래서 내부자 위협에 대한 방어는 기술이 아니라 구조에 있습니다. 최소 권한 원칙(누구도 필요 이상의 권한을 갖지 않음), 직무 분리, 모든 행위의 기록과 감사, 그리고 접근 권한의 주기적 검토입니다. 이 주제는 14장에서 본격적으로 다룹니다.
2.5 APT — 충분한 시간과 자금을 가진 자
이제 위협 지형의 정점, 가장 정교하고 가장 위험한 공격자에 도달했습니다.
APT란 무엇인가
APT(Advanced Persistent Threat, 지능형 지속 위협)는 단어 그대로 세 가지 특징을 가진 위협입니다. 지능형(Advanced) — 높은 기술 역량과 자원을 보유합니다. 알려지지 않은 0-day 취약점을 발굴하거나 구매하고, 맞춤형 악성코드를 제작하며, 여러 기법을 조합한 정교한 작전을 수행합니다. 지속(Persistent) — 한 번의 시도로 끝나지 않습니다. 목표를 달성할 때까지 몇 달, 때로는 몇 년에 걸쳐 끈질기게 침투를 시도하고, 일단 침투하면 들키지 않고 오래 머무릅니다. 위협(Threat) — 명확한 목표와 의도를 가진 조직화된 집단입니다.
APT는 대부분 국가의 지원을 받거나 국가 그 자체입니다. 첩보, 지식재산 탈취, 핵심 기반 시설 교란, 정치적 영향력 행사 등이 그들의 목적입니다. 일부는 국가의 지원을 받는 범죄 조직으로, 제재 회피를 위한 외화 획득을 노리기도 합니다.
APT의 작전 방식
APT는 앞서 본 어떤 공격자와도 다른 방식으로 움직입니다. 그 과정은 대략 다음과 같이 전개됩니다.
먼저 장기간의 정찰입니다. 1장 1.1에서 본 OSINT를 동원하여 표적 조직을 철저히 조사합니다. 조직도, 핵심 인물, 기술 스택, 협력사 관계까지 파악합니다.
다음은 정교한 초기 침투입니다. 무차별 공격과 달리, APT는 표적에 맞춘 정밀한 경로를 택합니다. 특정 임원을 겨냥한 정교한 맞춤 피싱(스피어 피싱), 0-day 취약점을 이용한 직접 침투, 또는 더 약한 협력사를 먼저 뚫고 그곳을 발판 삼아 본 표적으로 들어오는 공급망 우회 등입니다.
침투에 성공하면 은밀한 거점 확보와 측면 이동이 이어집니다. 들키지 않도록 조용히 권한을 확대하고, 내부 네트워크를 가로질러 이동하며(lateral movement — 처음 뚫은 한 대에서 옆 시스템으로 차근차근 옮겨 가는 것), 목표 데이터나 시스템에 접근할 때까지 한 발씩 나아갑니다. 이 과정에서 그들은 정상적인 관리 도구를 악용하여 흔적을 최소화합니다. 평범한 관리 활동처럼 보이게 위장하는 것입니다. 공격자들이 실제로 어떤 단계와 기법을 거치는지는 MITRE ATT&CK라는 공개 지식 베이스에 체계적으로 정리되어 있어, 방어자가 "어디를 지켜봐야 하는지"를 잡는 지도로 쓰입니다.
마지막으로 목표 달성과 지속입니다. 데이터를 빼내거나, 시스템을 장악하거나, 원하는 영향을 미친 뒤에도, 종종 백도어를 남겨 두어 다시 들어올 수 있게 합니다. 그리고 무엇보다, 들키지 않은 채로 가능한 한 오래 머무릅니다. 많은 APT 침해가 수개월에서 수년간 탐지되지 않은 채 진행됩니다.
은행도, 대기업도, 정부도 안전하지 않다
이 장이 강조하고자 하는 가장 무거운 진실이 여기에 있습니다. APT 앞에서는 그 누구도 절대적으로 안전하지 않습니다.
막대한 보안 예산과 전담 팀을 갖춘 글로벌 기업, 엄격한 규제를 받는 금융 기관, 국가 기밀을 다루는 정부 부처 — 이들조차 APT에 의해 침해당한 사례가 반복적으로 발생해 왔습니다. 그 이유는 단순합니다. 충분한 시간과 자금과 인내심을 가진 공격자 앞에서, 완벽한 방어는 존재하지 않기 때문입니다. 방어자는 모든 문을 다 지켜야 하지만, 공격자는 단 하나의 열린 문만 찾으면 됩니다. 이 비대칭은 방어자에게 근본적으로 불리합니다.
이것이 이 책의 두 번째 원칙, "침해를 가정하라(Assume Breach)" 가 존재하는 이유입니다. APT를 상대로 "절대 뚫리지 않겠다"는 목표는 비현실적입니다. 현실적인 목표는, 침투를 최대한 어렵게 만들고, 침투당하더라도 빠르게 탐지하며, 피해를 최소한으로 가두고, 신속하게 복구하는 것입니다. 완벽한 예방이 아니라 회복력(resilience)이 핵심입니다.
그렇다면 작은 조직은 APT를 무시해도 되는가
"우리는 국가가 노릴 만한 조직이 아니다"라고 생각할 수 있습니다. 부분적으로는 맞습니다. 평범한 중소기업이 직접적인 APT의 1차 표적이 될 가능성은 높지 않습니다.
그러나 두 가지를 기억해야 합니다.
첫째, 공급망의 일부로서 표적이 될 수 있습니다. APT는 강력한 본 표적을 직접 치기 어려울 때, 그 표적과 연결된 약한 고리를 먼저 노립니다. 당신의 조직이 더 큰 조직의 협력사, 공급사, 서비스 제공자라면, 당신은 그 큰 조직으로 가는 통로로서 가치가 있습니다. 당신이 작다는 것이 오히려 약한 고리로서 선택받는 이유가 될 수 있습니다.
둘째, APT가 쓰던 기법은 시간이 지나면 아래로 흘러내립니다. 오늘 APT만 쓰던 정교한 기법이, 내일은 일반 범죄 조직의 도구가 되고, 모레는 스크립트 키디의 자동화 도구에 포함됩니다. 0-day가 패치되어 n-day(이미 패치가 나왔지만 아직 적용하지 않은 곳이 남아 있는 알려진 취약점)가 되면(4장), 그것을 노리는 자동화 공격이 인터넷 전역에 퍼집니다. 2021년의 Log4Shell(CVE-2021-44228)이 이 흐름의 교과서입니다. 자바 로깅 라이브러리 Log4j의 이 치명적 취약점은 패치가 나온 뒤에도 수년간 미적용 서버를 노린 자동화 공격에 시달렸습니다. 즉, APT의 최첨단 기법을 직접 상대할 일은 없어도, 그 기법의 후예들은 결국 무차별 공격의 형태로 당신에게 도달합니다.
그러므로 작은 조직이 APT 수준의 방어를 모두 갖출 필요는 없지만, APT를 위협 지형에서 완전히 지울 수도 없습니다. 기본기를 탄탄히 하고 심층 방어의 사고방식을 갖추는 것이, 위에서 흘러내리는 위협에 대한 최선의 대비입니다.
2.6 물리적 공격 — 잊혀진 공격면
지금까지 다룬 모든 위협은 네트워크를 통한 것이었습니다. 그러나 공격면은 케이블 끝에서 끝나지 않습니다.
물리적 접근은 거의 모든 논리적 방어를 우회합니다. 공격자가 서버나 직원의 노트북에 물리적으로 접근할 수 있다면, 방화벽도 암호화도 상당 부분 무력화됩니다. 잠기지 않은 서버실, 분실되거나 도난당한 노트북, 버려진 저장 장치, 사무실에 무단으로 꽂힌 USB 장치, 어깨너머로 비밀번호를 훔쳐보는 행위(shoulder surfing) — 이 모든 것이 물리적 공격면입니다.
특히 위험한 것은, 물리적 접근이 종종 사회 공학(social engineering)과 결합한다는 점입니다. 택배 기사나 시설 관리자로 위장하여 건물에 진입하거나, 직원을 속여 출입문을 통과하는 일이 실제로 일어납니다. 가장 정교한 디지털 방어를 갖춘 조직도, 한 명의 친절한 직원이 모르는 사람을 위해 보안문을 잡아 주는 순간 무너질 수 있습니다.
물리적 보안은 흔히 IT 보안의 논의에서 잊히지만, 빠뜨려서는 안 되는 한 겹입니다. 저장 장치 암호화, 시건 장치와 출입 통제, 분실 장치 원격 잠금, 그리고 직원 교육이 기본 방어입니다. 14장에서 사람과 물리 공격면을 함께 다룹니다.
2.7 당신의 위협 모델 그리기
이 장의 내용을 실전에 적용하는 방법은, 자신만의 위협 모델을 그려 보는 것입니다. 완벽할 필요는 없습니다. 다음 질문에 답해 보는 것만으로도 방어의 초점이 잡힙니다.
무엇을 지켜야 하는가(자산). 당신에게 가장 중요한 것은 무엇입니까. 고객 개인정보입니까, 지식재산입니까, 서비스의 가용성입니까, 자금입니까. 잃었을 때 가장 치명적인 것이 무엇인지를 먼저 식별하십시오. 모든 것을 똑같이 지킬 수는 없으므로, 우선순위가 필요합니다.
누가 그것을 노릴 수 있는가(공격자). 당신의 자산에 관심을 가질 만한 공격자는 어느 사분면에 있습니까. 개인정보를 다룬다면 금전 동기 범죄 조직이, 정치적으로 민감하다면 핵티비스트가, 가치 있는 기술을 가졌거나 더 큰 조직의 협력사라면 APT가 위협 지형에 들어옵니다. 그리고 누구에게나, 항상, 자동화 봇은 기본값으로 존재합니다.
그들은 어떻게 들어올 수 있는가(경로). 식별한 공격자가 당신의 자산에 도달할 수 있는 경로는 무엇입니까. 1장에서 본 발견 경로와 공격 표적을 떠올리며, 외부 노출 자산, 직원, 협력사, 물리적 접근 등 가능한 통로를 나열하십시오.
무엇이 그 경로를 막고 있는가(통제). 각 경로에 대해 현재 어떤 방어가 작동하고 있는지, 그리고 어디에 구멍이 있는지를 점검하십시오. 이것이 이 책의 나머지 장들이 채워 줄 부분입니다.
이 네 질문을 주기적으로 다시 던지십시오. 자산이 바뀌고, 위협이 진화하고, 시스템이 변하면 위협 모델도 갱신되어야 합니다. 위협 모델링은 한 번 하고 끝나는 것이 아니라, 원칙 5(과정으로서의 보안)의 일부입니다.
2.8 이 장이 남기는 교훈
이 장에서 확인한 것을 압축합니다.
첫째, 위협 모델 없는 보안은 초점이 없습니다. "누구로부터 무엇을 지킬까"를 먼저 물어야, 그에 비례하는 방어를 설계할 수 있습니다.
둘째, 공격자는 두 축으로 이해됩니다. 무차별이냐 표적이냐, 그리고 역량의 높낮이입니다. 대부분의 공격은 무차별·저역량 사분면에 몰려 있고, 가장 위험한 것은 표적·고역량 사분면, 즉 APT입니다.
셋째, 무차별 공격은 기본기로 막힙니다. 스크립트 키디와 봇에게 당신은 IP일 뿐이며, 옆 사람보다 조금만 어려운 표적이 되면 그들은 떠납니다. 이 책의 기본기가 그 역할을 합니다.
넷째, 금전 동기 조직은 산업화되었고, 작은 조직을 오히려 선호합니다. "작아서 표적이 아니다"는 착각입니다. 보안이 약한 중소 조직은 자동화된 랜섬웨어의 효율적인 먹잇감이며, 몸값의 타격도 더 치명적입니다.
다섯째, APT 앞에서는 누구도 절대 안전하지 않습니다. 은행도, 대기업도, 정부도 침해당해 왔습니다. 작은 조직도 공급망의 약한 고리로서, 또는 흘러내린 기법의 대상으로서 무관하지 않습니다. 그래서 "침해를 가정하라"가 필요합니다.
여섯째, 위협은 네트워크에만 있지 않습니다. 내부자와 물리적 접근은 외부 방어를 우회하며, 종종 가장 약한 고리입니다.
공격자가 누구인지를 그렸으니, 이제 그들이 손에 쥔 가장 새로운 무기를 살펴볼 차례입니다. AI는 공격의 경제학을 근본적으로 바꾸고 있으며, 이것은 위 모든 사분면의 공격자에게 동시에 힘을 실어 주고 있습니다. 다음 장에서 이 변화를 들여다보겠습니다.
이 장의 실행 항목
- 자신의 위협 모델을 글로 써 보십시오. 2.7의 네 질문(자산·공격자·경로·통제)에 답하는 것만으로 방어의 우선순위가 보입니다.
- 자신이 어느 공급망의 일부인지 점검하십시오. 더 큰 조직의 협력사라면, 당신은 약한 고리로서 표적이 될 수 있습니다. (2.5, 14장)
- 랜섬웨어 대비 백업 상태를 확인하십시오. 깨끗한 백업에서 복구할 수 있다면 몸값 협박은 무력화됩니다. (13장)
- 내부 접근 권한을 검토하십시오. 누가 무엇에 접근할 수 있는지, 그것이 모두 필요한 권한인지 확인하십시오. (14장)
- 물리적 접근면을 점검하십시오. 저장 장치 암호화, 출입 통제, 분실 장치 대응이 갖춰져 있습니까. (14장)
- "우리는 표적이 아니다"라는 가정을 의심하십시오. 이 장에서 그 가정이 왜 위험한지를 기억하십시오.
다음 장: 3장 — AI가 바꾼 공격의 경제학. 모든 사분면의 공격자가 손에 쥔 새로운 무기.