노출된 .env 파일 하나가 쏘아올린 작은 공, 11만 개 도메인 공격으로 이어져

2024-08-22 17:54
  • 카카오톡
  • 네이버 블로그
  • url
그저 ‘실수’로 치부하기에는 너무나 치명적인 사건들이 사이버 공간에서는 비일비재하게 일어난다. 최근 그 실수 하나로 무려 11만 개 도메인을 협박하는 사건이 발생했다. 자동화 기술을 탑재한 공격자들의 스케일이 너무나 커지고 있다.

[보안뉴스 문정후 기자] 사용자 편에서 저지르는 여러 가지 자잘한 실수들이 겹치는 것을 사이버 공격자들은 놓치지 않는다. 최근 클라우드 관리에서의 실수와 비밀번호 설정에서의 실수가 겹치며 공격자들에게 거대한 기회가 제공되는 사례가 공개됐다. 보안 업체 팔로알토네트워크(Palo Alto Networks)에서 보고서를 통해 알렸다.


[이미지 = gettyimagesbank]

두 개의 치명적인 실수
보고서에 의하면 피해자는 환경설정 파일을 인터넷에 공개하는 실수를 제일 먼저 저질렀다고 한다. “웹 애플리케이션의 호스트에 환경설정 파일(.env)이 아무런 보호 장치 없이 노출되어 있었습니다. 공격자들은 단순 스캔만으로 이 파일을 수거했습니다.” 환경설정 파일은 애플리케이션과 플랫폼에서 사용되는 각종 변수를 정의하는 데 사용된다. 클라우드용 접근 키, API 키, 데이터베이스 로그인 정보와 같은 민감한 데이터가 저장되어 있는데, 이 중요한 파일을 인터넷에 그대로 노출시킨 것이다. 이것이 첫 번째 실수다.

과연 그 .env 파일에는 AWS라는 공공 클라우드에의 접근 키가 저장되어 있었다. 이제 공격자의 것이 됐다. 공격자들은 이 키를 활용하여 피해자의 AWS 환경에 접속할 수 있었다. 뿐만 아니라 다양한 API 호출을 수행하여 피해자의 인프라에 대해 더 깊이 탐구하기 시작했다. 즉 피해자의 네트워크 내 공격자의 영향력을 확대하기 위해 움직인 것인데, 특히 IAM(아이덴티티 및 접근 관리), STS(보안 토큰 서비스), AWS S3, 아마존 SES 등에 집중했다. “공격자가 피해자의 클라우드 환경에 깊숙하게 파고들고자 한다는 걸 알 수 있는 행보입니다.” 팔로알토 측의 설명이다.

“탐색 단계에서 공격자들은 IAM 권한을 가진 사용자의 신원을 확인하기 위해 GetCallerIdentity API를 호출했습니다. 이를 통해 IAM 권한을 가진 사용자의 ID, AWS 계정 번호와 ARN을 얻어낼 수 있었습니다. 참고로 ARN은 피해자가 어떤 AWS 서비스를 사용하는지, 해당 AWS 계정 번호가 무엇인지, 명령 실행의 주체가 누구인지와 관련된 정보를 포함하고 있습니다. 사용자 ID는 일종의 고유 식별자이기도 하고요. 즉 주요 사용자의 민감 정보들을 고스란히 가져갈 수 있었던 것이죠.”

그렇게 피해자에 대한 조사를 마친 공격자들은 AWS 계정 내 IAM 권한을 가진 사용자들의 목록을 작성할 수 있었다고 한다. 그리고 이를 바탕으로 ListBuckets API를 호출했고, 그러면서 연결되어 있는 모든 S3 버킷들까지 파악할 수 있었다. “공격자는 피해자에 대해 더 깊숙하게 알 수 있었고, 자신이 추가 공격의 표적을 삼을 S3 버킷이 무엇인지 결정할 수 있었습니다.”

이 과정에서 피해자의 두 번째 실수가 큰 역할을 했다. “최초 탐색을 위해 공격자는 하나의 IAM 계정에 대한 접근 권한을 가져가야 했습니다. 이 때 이들이 공략한 IAM 계정이 지나치게 많은 권한을 가지고 있었습니다. 다른 IAM 계정에 새로운 권한을 부여할 수 있는 권한이었죠. 그래서 공격자는 새 IAM 계정을 하나 만들고, 여기에 모든 권한을 부여한 뒤, 이 새 계정을 가지고 손쉽게 피해자를 탐색할 수 있었습니다. 만약 권한 설정이 알맞게 되어 있었다면 이 과정이 좀 더 복잡해졌겠죠. 공격자의 할 일이 훨씬 많아졌을 겁니다. 한 마디로 권한 상승 공격을 공짜로 해낸 것이나 다름 없었습니다.”

여기까지 공격을 실행시킨 공격자는 아마존 엘라스틱 클라우드 컴퓨트(EC2) 자원을 사용하는 인프라 스택과, AWS 람다(Lambda)를 사용하는 또 다른 인프라 스택을 생성했다. 그러면서 새로운 보안 그룹과 EC2 인스턴스를 생성하려 했지만 실패했다고 한다. 대신 여러 개의 람다 함수를 생성해 IAM 역할을 부여하는 데에는 성공했다. “공격자는 이 함수들을 가지고 자동 스캐닝과 암호화폐 채굴을 하려 했습니다.”

자동화 기술이 아니면 불가능한 피해 규모
자동 스캔을 통해 공격자는 추가로 노출된 .env 파일을 포함한 도메인을 최소 11만 개 발견할 수 있었다. 이를 발견한 후 위에 언급된 절차를 반복해 공격을 이어갔다. 11만 개 이상의 도메인에 침투하여 결국 클라우드 인프라에 접근했고, 거기서 알맞은 S3 버킷을 찾아낸 것이다. 그러면서 수없이 많은 데이터를 확보할 수 있었다. “이 과정이 거의 대부분 자동화 기술로 실행된 듯합니다. 이 공격의 과정을 단순화하여 자동 반복되게 한 것이죠. 자동화 기술이 발전하면서 사이버 공격의 스케일이 커지는데, 이번 사례가 그것을 증명합니다.” 이번 캠페인의 표적이 무려 2억 3천만 개인 것으로 확인되고 있는데, 이는 수동 공격으로 감당할 수 없는 숫자다.

수많은 버킷들에 접근한 공격자는 데이터를 외부로 빼돌렸다. 그런 후 버킷들을 전부 비워내고 협박 편지 한 통을 남겨두었다. 피해자들에게 “돈을 내지 않으면 여기 있던 데이터는 전부 사라지거나 다른 사람에게 넘어간다”는 내용이었다. 어떤 피해 기업이 얼마나 이들에게 돈을 냈는지, 또 얼마나 이 제안을 거절했는지는 아직 다 알 수 없으나 여기에 당한 기업들이 수없이 많아 공격자는 상당한 수익을 남겼을 것으로 예상된다.

실제로 팔로알토 측에서 노출된 .env 파일들을 분석했더니 클라우드 인프라에 대한 접근 키만이 아니라 각종 소셜미디어 및 온프레미스 애플리케이션에 대한 로그인 정보도 저장된 경우가 많았다고 한다. “이 중요한 파일을 아무런 보호 장치 없이 전체 공개로 설정한다는 건, 공격자들에게 대문을 열어주는 것과 같습니다. 초대장을 발부한 것이죠. 현대의 공격자들은 이런 실수를 반드시 발견한다는 걸 기억해야 합니다. 자동화 기술로 무장된 공격자라면 더욱 그렇습니다.”

팔로알토가 조사한 결과 인터넷에 노출되어 있는 환경변수 파일이 9만 개 이상이며, 이 중 7천여 개가 클라우드 서비스와 관련되어 있었다고 한다. 공격자에게 있어 이러한 상황은, 금맥으로 가는 길이 친절히 안내되어 있는 것과 다름이 없다. “이 때 클라우드 서비스 제공 업체 측의 잘못은 전혀 없었습니다. 클라우드가 안전하면서도 안전하지 않은 건, 제공 업체 측이 최대한 안전하게 클라우드를 보호하지만 사용자가 부실하게 운영하기 때문입니다. 이 두 가지 요소가 공존하는 게 현재 클라우드입니다.”

어떻게 대응해야 하는가
팔로알토는 이러한 위협에 대응하기 위해서 제일 먼저 IAM 접근 키의 권한을 유한하게 설정해야 한다고 강조한다. “여러 작업을 위해 일반 직원이나 개발자가 높은 권한을 필요로 할 때가 있습니다. 그럴 때 당사자의 IAM을 높게 설정해주는 것이 보통이죠. 그리고 그 작업이 끝나도 그 높은 설정이 그대로 유지됩니다. 그래서 기업들마다 무제한 권한을 가진 IAM 계정이 넘쳐납니다. 이것부터 조정해야 합니다. 권한을 부여할 때는 반드시 기한을 정해두어야 합니다.”

또, AWS 계정 내 사용하지 않는 모든 리전들을 비활성화시키는 것도 좋은 예방법이라고 팔로알토는 말한다. “실질적으로는 사용되지 않는 리전들이 조직들마다 상당히 많은 것으로 알고 있습니다. 이런 리전들은 공격자들이 숨어드는 곳이 됩니다. 따라서 그런 리전들을 일일이 찾아 비활성화시키는 게 좋습니다.”

그 다음 로깅을 활성화 하고 모니터링을 강화하는 것을 팔로알토는 권장하고 있다. “각종 보안 장치를 있는 그대로 신뢰할 것이 아니라, 그 장치들이 어떤 기능을 발휘하고 있는지를 항상 살펴야 합니다. 분명 어디선가 실수든 뭐든, 구멍이 나게 마련이거든요. 실수를 원천적으로 막을 방법은 존재하지 않더라도, 그 실수를 최대한 빨리 무효화시킬 수는 있습니다.”

3줄 요약
1. 노출된 .env 파일 하나로부터 시작된 11만 개 도메인 강탈 사건.
2. 조사해 보니 아직도 노출된 .env 파일이 적게 잡아도 9만 개 이상.
3. IAM의 지나치게 무제한적인 권한 역시 문제를 악화시킴.

[국제부 문가용 기자(globoan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>

헤드라인 뉴스

TOP 뉴스

이전 스크랩하기


과월호 eBook List 정기구독 신청하기

    • 이노뎁

    • 인콘

    • 엔텍디바이스코리아

    • 마이크로시스템

    • 다봄씨엔에스

    • 아이디스

    • 씨프로

    • 웹게이트

    • 씨게이트

    • 하이크비전

    • 한화비전

    • ZKTeco

    • 비엔에스테크

    • 비엔비상사

    • 원우이엔지
      줌카메라

    • 지인테크

    • 인텔리빅스

    • 이화트론

    • 다누시스

    • 테크스피어

    • 렉스젠

    • 슈프리마

    • 혜성테크윈

    • 시큐인포

    • 미래정보기술(주)

    • 비전정보통신

    • 다후아테크놀로지코리아

    • 경인씨엔에스

    • 지오멕스소프트

    • 성현시스템

    • 한국씨텍

    • 프로브디지털

    • 디비시스

    • 유니뷰코리아

    • 스피어AX

    • 투윈스컴

    • 세연테크

    • 트루엔

    • 위트콘

    • 유에치디프로

    • 주식회사 에스카

    • 포엠아이텍

    • 세렉스

    • 안랩

    • 제이슨

    • 에스지에이솔루션즈

    • 이롭

    • 샌즈랩

    • 쿼리시스템즈

    • 신우테크
      팬틸드 / 하우징

    • 에프에스네트워크

    • 네이즈

    • 케이제이테크

    • 셀링스시스템

    • 에이티앤넷

    • 아이엔아이

    • (주)일산정밀

    • 새눈

    • 에스에스티랩

    • 유투에스알

    • 태정이엔지

    • 네티마시스템

    • HGS KOREA

    • 에이앤티코리아

    • 미래시그널

    • 두레옵트로닉스

    • 지와이네트웍스

    • 넥스트림

    • 에이앤티글로벌

    • 현대틸스
      팬틸트 / 카메라

    • 지에스티엔지니어링
      게이트 / 스피드게이트

    • 동양유니텍

    • 모스타

    • 엔에스정보통신

    • 구네보코리아주식회사

    • 엘림광통신

    • 엔시드

    • 넥스텝

    • 메트로게이트
      시큐리티 게이트

    • 포커스에이치앤에스

    • 티에스아이솔루션

    • 엠스톤

    • 글로넥스

    • 유진시스템코리아

    • 카티스

    • 세환엠에스(주)

Copyright thebn Co., Ltd. All Rights Reserved.

MENU

회원가입

Passwordless 설정

PC버전

닫기