백엔드 개발/Node.js&Nest.js

EC2에 올린 MongoDB가 해킹을 당한 사건에 대하여

방구석 코딩쟁이 2024. 9. 1. 16:01

졸업작품 프로젝트 배포를 하고, 테스트를 진행 중인 상황이었습니다.

회원가입하고, 로그인하는 등의 테스트를 진행했었죠. 그런데, EC2에서 실행 중인 MongoDB가 수시간마다 초기화되는 웃지 못할 상황이 발생했었습니다. 처음에는 제가 MongoDB의 설정을 초기화하도록 잘못 설정한 것인가 싶었습니다.

 

MongoDB를 확인해보니, 외국에 사는 괴도가 제 MongoDB의 데이터를 훔친 후에 당당히 비트코인을 요구한 것입니다...!

내 DB를 털어가고 당당히 돈을 요구하는 상황...

 

다행히 아직 제가 만든 서비스는 제 데이터만 들어있었고, 서비스에서 개인 정보들은 요구하지 않은 상황이므로 개인 정보가 털리진 않았던 상황이었습니다. 

내 DB 털어가지마~

 

이 상황을 해결하기 위해 문제 상황을 확인해봤습니다.

 

1. 계정을 너무 쉽게 해놓았다.

이 부분은 아니라고 생각했습니다.

왜냐하면 제 계정은 기본 계정인 root, admin이 아닌 다른 계정으로 진행했었고, 비밀번호 또한 복잡하게 설정해두었기 때문입니다.

 

2. 인바운드 포트를 열어두었다.

이부분이 유력해보였습니다. mongoDB Compass에서도 접속이 가능할 만큼 인바운드에서 모든 포트를 열어두었었기 때문입니다.

DB 포트 설정을 `<PublicIP>/32` 로 수정하여 저장하였습니다.

 

 

3. mongoDB 설정에 보안 설정을 안해두엇다.

이 부분도 제가 놓치고 있던 부분입니다.

ec2의 `/etc/mongod.conf` 설정 파일에 다음과 같은 설정을 추가하여 보안을 강화했습니다.

security:
  authorization: enabled

 

 

앞으로 지금 모니터링 도구를 추가하고, 보안에 좀 더 신경을 써야함을 배울 수 있었습니다.

이를 통해 모니터링 도구의 중요성과 보안의 중요성을 깨달을 수 있었습니다.

 

내 DB 털어가지마라!