[Let U Win] AWS EC2 보안

이호정·2022년 10월 13일
0

Project.LetUWin

목록 보기
4/7
post-thumbnail

네이버 블로그에서 이전, 원글 작성일시 : 2021.10.23.21:45

오늘은 나의 경험을 얘기해보려 한다.

이전 포스팅에서 말했듯 AWS EC2를 생성하여 사용하고 있었다.
인스턴스에 데이터베이스를 마련하고, 거기에 데이터를 쌓는걸 목적으로 사용하고 있었다.

참고로 사용중인 인스턴스의 보안에 대해 설명하자면,
0.0.0.0/0으로 모든 IP의 접속을 허용하고,
데이터베이스가 사용하는 포트를 외부에 오픈한 상태였다.

굉장히 위험해 보이는 짓이지만, 평소 여러 카페를 다니면서 프로젝트를 진행하기 때문에
어느정도는 필요에 의한 것이었다.

어쨋든, 데이터가 잘 쌓이고 있나 확인하려고 들어가 봤더니, 모든 데이터가 다 사라진 것이었다.
대신 처음 보는 DB가 하나 생겨있었고, 거기엔 README라는 컬렉션이 들어있었다.
그 컬렉션을 조회한 뒤, 모든 사건의 진상을 알게 되었다.

컬렉션에는 데이터가 하나 담겨있었는데, 그 내용을 직역하자면 아래와 같았다.

당신의 모든 데이터는 백업되었다. 원상복구를 원한다면, 48시간 이내에 0.02BTC를 보내라.
48시간이 지나면, 우리는 당신의 데이터를 유출할것이다.
만약 요구에 응하지 않으면, GDPR(General Data Protection Regulation)에 연락해,
당신이 사용자 데이터를 공개되고 안전하지 않은 곳에 저장하고 있다는 사실을 알릴 것이다.
그렇게 되면, 당신은 법에 따라 무거운 벌금 또는 체포를 당하게 될 것이고,
당신의 데이터베이스는 우리의 손아귀에 떨어질 것이다.
~~에서 비트코인을 살 수 있으며, 오래걸리지 않는다.
지불이 완료되면 ~~에 당신의 DB IP를 포함해 메일을 보내라,
그러면 당신의 데이터를 찾을 수 있는 링크가 담긴 메일을 받을 수 있을것이다.

황당했다.

진상을 알고보니, 모든 IP와 DB 포트를 열어둔 것도 위험했지만
결정적인 문제는 github에서 발견되었다.

데이터를 긁어서 DB에 저장하는 파이썬 스크립트 파일이 github에 그대로 올라가 있었는데,
그 안에 인스턴스의 공개 IP와 DB 포트 정보가 담겨있었던 것이다.

전부 열어놨기 때문에 저 2 가지로도 충분히 DB에 접근할 수 있었고, 이를 통해 데이터를 빼간 것이다..

몇일간 쌓아놓은 데이터가 단숨에 날아가서 허탈하면서도 굉장히 빡쳤다.

그 당시 기준, 약 150만원 정도를 지불할 용의도 없었고, 개인정보가 없었던 걸로 기억해, 그냥 다시 쌓기로 했다.


일전에 MongoDB Atlas를 사용하면서, 실수로 접속 url을 github에 올린적이 있었다.
그랬더니 github 측에서, 위험한 정보를 올렸다고 메일이 왔었다.

그 당시만 해도, "와 이런걸 바로 알아채서 알려주네? 세상 참 좋다~"라는 가벼운 생각과
"설마 저걸로 접속해보는 사람이 있겠어?"라는 안일한 사고방식을 가지고 있었다.

이번 기회로 보안에 대한 문제를 다시 생각해보게 되었다.
"설마 볼품없는 우리걸 누가 들어와 보겠어?" 굉장히 안일한 생각이었다.
직접 피해를 입을 줄, 누가 알았으랴....

앞으로 한번 더 생각해보고, 보안 관련해서도 공부해봐야겠다.

어찌보면 고마운 사람이라고 해야할까...

범행 현장

0개의 댓글