AWS야, 나 조때써 (AWS 해킹 과금 면제 회고)

한지훈·2022년 12월 16일
2
post-thumbnail

서론

대한민국이 카타르 월드컵에 심취하여 있을 무렵 하나의 이메일을 AWS 측으로 받게된다. AWS 계정의 경우 프리티어를 써볼까 생각하고 만들어 둔 계정은 가입만 해둔채로 몇 년을 유지만 시켜두었고, 이 계정을 직접 사용한 적은 전무한 상태였다.

AWS에서 이메일 주소가 업데이트 되었다는 당황스러운 메일을 받게 되었다. 대부분 동일한 이메일로 계정을 관리하고 있을 터라 이메일이 변경된 사실을 이상하게 여기고 있을 때 즈음 다음 이메일이 도착하였다.

처음 보는 Action Required라는 머릿말을 붙이고 온 메일의 정체는 나의 AWS Access Key가 승인되지 않은 행동 패턴에 일치하여 경고를 준다는 내용을 담고 있었는데, 무슨 뜻인가 본문 전체를 읽어보니 계정 해킹이 분명하여 보였다.

지금 추측하건데 개인적으로 별도의 키를 생성하지는 않았던터라 AWS 계정 자체를 탈취당한 것으로 추측한다.

그렇게 AWS Billing Consol을 열람하게된 필자는 순간적으로 경악을 금치 못한다.

13,987불, 그러니까 원화로 1,900만원 정도의 금액이 청구된 상태였다. 실질적인 요금이 크게 부과된 곳은 Data Transfer이었으며, 전세계 곳곳에 EC2 인스턴스가 생성되어 있는 상태였다.

사람이 이것저것 큰일을 겪게되면 상황에 초연하게 대처할 수 있게 된다.

필자는 1년 사이 집주인 잠적으로 인한 전세금 경매 절차 및 반환 소송 진행 및 지금은 어느정도 정상생활을 할 수 있게 되었지만 추간판탈출증 및 말총증후군으로 인한 하반신 마비 등 다양한 흥미로운 사건들을 겪은 바 있기 때문에, 차분하게 AWS 측에 문의를 하기 시작했다.

아래는 필자의 문의 내역 요약 및 해결 과정에 대해 이야기한다.


과정

11/28 당일

AWS측과 채팅을 통하여 커뮤니케이션을 시작하였다. 몇가지의 절차를 소개받았으며 필자측에서 직접 행동을 취하여야 하는 것들이 있었다.

  1. 비밀번호를 변경하였으며, CloudTrail Log를 통하여 허가되지 않은 활동들을 체크.
  2. 필자의 AWS 계정에 대해 승인되지 않은 사항이 존재하는지 확인

이를 체크하여보니 생성하지 않은 인스턴스 및 서비스들이 다수 존재함을 확인하였고 이를 AWS 측에 보고하였다.

곧바로 받은 AWS의 답변에서는 몇가지의 행동 사항에 대해 설명하여 주었다.

  1. 허가되지 않은 Access Key의 삭제 등

필자 측에서 이러한 상황에서 발생된 요금의 청구 면제를 지원해줄 수 있느냐 질의한 답변에서는 먼저 사용자 행동이 우선되어야지 가능하다고 답변하여 주었다.

11/29 사건 발생 1일차

몇 가지를 체크하여준 AWS측은 다음의 행동을 추가적으로 제시하였다.

  1. EC2 Key Pairs 삭제
  2. Launch Template 삭제

모든 것들을 삭제한 후 행동을 취했음을 보고하였다. 더불어 본 서비스 요금의 청구가 승인되지 않은 서비스의 이용이며, 개인적으로 이를 사용한 적 없음을 피력하는 메일을 전송하였다.

생각하지도 못한 큰 금액이었기 때문에, 몇가지 부당함과 결백함을 호소하였으며, 감정에 호소하는 메일을 첨부하였다.

회신을 기다리는 중에 허가되지 않았던 모든 인스턴스와 네트워크 서비스들을 자체적으로 삭제하기 시작했다. Global 대시보드에서 내역들을 확인하고 Region을 바꾸어가며 존재하는 서비스를 직접 삭제하여야 하였기 때문에 시간이 다소 소요되었다.

11/30 사건 발생 2일차

AWS에서 3가지 행동을 요구하였다.

  1. Budget과 Cloud Watch 등의 선택지에서 2가지를 설정할 것.
  2. MFA 등의 선택지에서 하나 이상을 설정할 것.
  3. 위 사항을 설정하고 어떠한 사항을 설정했는지 회신할 것.

더불어 AWS 고객 계약 및 AWS 공동 책임 모델을 정기적으로 검토하여 서비스 오퍼링 사용과 관련된 계약 및 책임을 이해했는지 확인할 것을 요구했다.

필자는 다음을 설정하였다.

  1. 프리티어 수준의 Budget을 설정하였으며, CLoud Watch Service를 설정하였다.
  2. OTP 애플리케이션을 통한 MFA를 설정하였다.

12/01 사건 발생 3일차

AWS 측에서 모든 설정이 확인되었음을 알리고, 11월에 청구된 요금이 모두 승인되지 않았음을 질의하였다.

필자는 모든 요금에 대해서 직접 사용하지 않았다는 점을 피력하였으며, 현재 신분에 많은 요금을 낼 수 없다는 점을 강조하였다. 물론 계정을 제대로 간수하지 못한 개인의 잘못도 분명이 존재하기에 대부분 감정에 호소함에 있었다.

그리고 답변으로 결제 팀에 문의하여 승인되지 않은 리소스와 관련된 청구 문제를 검토하고 있다는 메일을 받게 되었다.

그 뒤에는 하루에서 이틀에 한 번 꼴로 현재 프로세스가 진행 중이며 당신의 케이스를 잊지 않고 있다는 답변을 전달 받았다.

달이 넘어가면서 결제 요청이 카드사에 들어오게 되었고, 잔액 부족으로 결제는 거부되었다. 이를 확인한 후, 혹시나 싶어 카드 분실신고를 진행하였다.

12/07 사건 발생 9일차

AWS 고객 계약의 일환으로 고객은 자신의 계정에서 발생하는 모든 활동과 AWS 서비스 사용에 적용되는 모든 요금에 대해 책임을 진다는 경고와 함께 한 번의 예외로 11월 청구서인 12,715.67달러를 면제해준다는 답변을 전달 받았다.

다행히 세금을 포함한 모든 서비스 요금이 면제되었다.

그 후 바로 청구될 요금이 없음과 실행중인 서비스가 없음을 확인하고 앞으로 사용하지 않을 것 같아 계정을 폐쇄하였다.


결론

이렇게 다사다난 하였던 AWS 해킹 과금 면제기가 종료되었다. 지금까지 크게 신경쓰지 않았던 계정 보안에 경각심을 일깨워준 경험이 되었다.

필자는 이러한 경험 이후 Bitwarden(Vaultwarden)을 개인 NAS 및 백업용 개인 서버에 설치하여 모든 비밀번호를 변경 및 MFA를 설정하는 작업에 착수하였다.

소 잃고 외양간 고치는 격이기는 하지만 앞으로 다가올 어떠한 불행이 빗겨나가면 그것만으로도 크나큰 성과라고 생각된다.

많은 분들이 이러한 문제에 직면할 수 있다고 생각되며, 실제로 이러한 사건이 자주 일어난다고 전해들었다.

모든 분들께서 부당한 청구에 대해 정상적으로 감면 혹은 면제를 받고, 계정 보안에 경각심을 가져 되돌아 볼 수 있는 좋은 결과를 가지게 되면 좋을 듯하다.

0개의 댓글