메인 콘텐츠로 건너뛰기
블로그보안비프로덕션 하위 도메인에 주의하기

비프로덕션 하위 도메인에 주의하기

"비프로덕션 하위 도메인에 주의하세요"라는 텍스트가 있는 그림

일반적으로 보안팀은 조직의 주요 프로덕션 도메인에 최선의 노력을 집중하는 것이 일반적입니다. 결국, 해당 조직에서 가장 많은 트래픽을 처리하는 애플리케이션이 수익을 창출하기 때문입니다. 여기에 노출된 데이터는 공격자들에게 가장 큰 표적이 됩니다. 이를 보호하는 것이 가장 중요하다는 것은 당연한 일이지만, 이것이 전부는 아닙니다.

확신이 서지 않는다면 잠시 공격자처럼 생각해 볼 때입니다. (표면적으로는) 덜 가치 있는 표적을 노리면 무엇을 달성할 수 있을까요? 취약한 하위 목표가 주요 목표에 도달하는 데 도움이 될 수 있을까요?

자세히 알아보세요.

공격 전략: 약점 찾기

방어가 잘 되어 있는 요새에 침입하는 방법을 생각할 때, 지능적인 공격자는 정문까지 걸어가서 요새를 무너뜨리려고 하지 않을 것입니다. 이것이 유일한 공격 전략은 아닐 것입니다. 대신 방어의 약점을 찾으려고 노력할 것입니다.

웹 보안도 마찬가지입니다. 오늘날의 조직은 유연성과 손쉬운 확장을 위해 클라우드 이동성을 활용하고 있기 때문에 클라우드 컴퓨팅의 세계에서 특히 그렇습니다. 예를 들어, Linode를 사용하면 버튼 클릭 한 번으로 애플리케이션의 새 인스턴스를 스핀업할 수 있습니다.

하지만 클라우드 컴퓨팅의 편리함에는 보안 관행이 수반되어야 합니다. 일부 엔지니어링 하위 팀에서는 강력한 보안을 갖춘 메인 애플리케이션에 기능을 추가하는 대신 새 애플리케이션을 구축하여 하위 도메인에 배포하는 것이 더 쉽다고 생각할 수 있습니다. 물론 이러한 하위 팀은 조직을 공격에 노출시키려는 의도는 없습니다. 하지만 새로운 애플리케이션과 하위 도메인으로 조직의 웹 공간을 확장함으로써 공격 표면을 늘리고 전체 환경을 보호하기가 더 어려워집니다.

또한 하위 도메인의 비프로덕션 애플리케이션 인스턴스는 메인 애플리케이션 또는 최소한 데이터스토어와 통신해야 할 수 있습니다. 공격자가 보안 수준이 낮은 시스템에서 보안 수준이 높은 시스템으로 침입할 수 있는 경로를 찾을 수 있는 곳입니다.

방어 전략: 경계 파악하기

요새 비유로 돌아가 봅시다. 공격자가 약점을 찾는 가장 좋은 방법 중 하나는 표적의 전체 주변을 정찰하는 것입니다. 따라서 공격자처럼 생각한다면 가능한 모든 공격 지점을 찾아내는 것이 시스템 보안을 확보하는 첫 번째 단계입니다.

Sublist3r과 같은 도구는 보안 팀과 모의 침투 테스터를 위해 설계되었습니다. 이러한 도구는 경계를 모니터링하고 무엇이 배포되었는지 파악하는 데 도움이 됩니다. 그러나 공격자는 이러한 도구를 사용하여 사용 중인 모든 하위 도메인을 열거할 수도 있습니다.

그럼에도 불구하고 방어를 설정하기 위한 출발점은 시스템에 유입되는 모든 경로를 모니터링하는 것입니다.

다른 사람의 실수로부터 배우기

최근 분석 중이던 한 사이트에서 이러한 상황의 완벽한 예를 접했습니다. 이 회사는 메인 사이트를 잘 방어하고 TLS 1.3으로 보안을 유지하며 PCI-DSS를 준수하는 것으로 인증받기 위해 많은 노력을 기울였습니다. 정말 많은 노력이 필요했죠!

하지만... 그들은 또한 SSL/HTTPS로 보안되지 않은 하위 도메인에서 콘텐츠 관리 시스템을 운영했습니다. 🤦🏻‍♂️ 이 CMS에 대한 모든 트래픽(인증까지 포함)은 완전히 안전하게 실행되고 있었습니다.

구글 크롬도 이 문제를 알고 있으며, URL 표시줄에 '안전하지 않음'이라는 큰 경고를 표시합니다. 로그인 페이지이므로 사용자 이름과 비밀번호는 유선을 통해 일반 텍스트로 전송됩니다. 충분한 동기를 가진 공격자라면 ISP 또는 네트워크 수준에서 트래픽을 가로채서 이 정보를 얻을 수 있습니다. 그런 다음 해당 자격 증명을 사용하여 같은 회사에서 소유한 다른 시스템을 공격할 수 있습니다. 이 하위 도메인의 일부 인증정보가 같은 회사 내의 다른 앱에서 재사용될 가능성은 얼마나 될까요? 상당히 높다고 생각합니다.

또는 공격자가 CMS에 액세스하여 멀웨어 또는 악성 JavaScript를 애플리케이션에 삽입하여 직원이 다른 시스템에 액세스할 때 고객 데이터를 노출시킬 수도 있습니다.

이 회사의 자부심이자 기쁨인 주요 애플리케이션을 보호하기 위해 많은 노력을 기울였습니다. 정문은 사방에 경비원이 배치되어 잠겨 있습니다. 반면 뒷문은 활짝 열려 있고 아무도 지켜보고 있지 않습니다.

결론

대부분의 사람들은 하위 프로덕션 도메인이 큰 위험이라고 생각하지 않습니다. "모호함을 통한 보안"이라고 말합니다. 이 간단한 예시를 통해 이것이 왜 잘못된 보안 전략인지 더 명확하게 이해하셨기를 바랍니다. 시스템이나 애플리케이션의 규모는 중요하지 않습니다. 비즈니스에서 이를 배포하는 경우 보안에 중점을 두어야 합니다.

지금 바로 취할 수 있는 몇 가지 실용적인 조치를 소개합니다:

  1. 도메인을 스캔하여 현재 사용 중인 모든 하위 도메인의 인벤토리를 만듭니다.
  2. 각 하위 도메인은 악용의 용이성과 악용될 경우 비즈니스에 미치는 영향에 따라 순위를 매깁니다.
  3. 보안 도구를 배포하여 가장 쉽게 악용될 수 있고 비즈니스에 가장 큰 영향을 미칠 수 있는 하위 도메인을 잠그세요.
  4. 리소스와 대역폭이 충분하다면 목록을 아래로 내려가면서 작업하세요.

한 번에 조금씩 하위 도메인을 보호하는 것부터 시작해도 괜찮습니다. 아무것도 하지 않는 것보다는 확실히 낫습니다! 완벽이 선의 적이 되지 않도록 하세요. 중요한 것은 인터넷에 배포한 모든 솔루션에는 어느 정도의 위험이 따른다는 점을 명심하는 것입니다. 그리고 위험이 있는 곳이라면 어디든 보안에 주의를 기울여야 합니다. 공격자가 회사 전체를 장악해야만 심각한 피해를 입힐 수 있는 것은 아니므로, 중요하지 않은 시스템이라도 회사의 지속적인 보안을 위해 중요하게 다룰 가치가 있습니다.

공격자처럼 생각하는 것은 좋은 시작입니다. 취약점을 경계하고 공격자가 발판을 마련하고 잠시 숨어 있다가 공격을 확대할 수 있는 곳을 찾아내는 것은 비즈니스가 다음 사이버 보안 뉴스의 주인공이 되지 않도록 하기 위한 큰 발걸음입니다.

보안에 대해 자세히 알아보려면 Linode의 방대한 보안 관련 문서 및 가이드 라이브러리를 확인하세요.

내용

댓글 남기기

이메일 주소는 게시되지 않습니다. 필수 필드가 표시됩니다 *