| 늘어나는 애플리케이션, 백엔드 보안도 생각해야 한다 | 2017.06.02 |
비관계형 데이터베이스들, 보안 위주로 설계 안 돼
플랫폼 자체에 의존하면 안 되고 추가로 보안 조치 취해야 [보안뉴스 오다인 기자] 기업 데이터 보안의 심각한 위협 요소로 애플리케이션 개발자들이 꼽히는 연구 보고서가 나왔다. 애플리케이션과 연결되어 있는 백엔드 서버와 데이터베이스에 대한 보안 조치에 관심이 없거나 실수가 많아서라고 한다. 모바일 전문업체인 앱소리티(Appthority)가 조사한 내용이다. ![]() [이미지=iclickart] 앱소리티는 이런 위협을 “환자복(Hospital Gown)”이라고 명명했는데, 다소 가볍게 느껴지는 위협 이름에 비해 기업이 실제로 겪게 될 위험은 훨씬 심각한 수준이다. “앱을 개발하는 과정에서 개발자들이 방화벽이나 인증 기술로 백엔드를 보호할 생각을 하지 않으니, 사실상 리버스 엔지니어링이나 스캔을 조금 할 줄 아는 사람이면 누구나 출입해 각종 기록들을 마음대로 가져가거나 암호화시켜 랜섬웨어 공격처럼 돈을 요구할 수도 있게 됩니다.” 게다가 앱 제조사의 백엔드에서 유출이 일어나면 기업 입장에서 그러한 사실을 파악하기도 힘들고 통제하기도 힘들다는 게 더 큰 문제다. “취약점을 제거하는 방법은 침해된 애플리케이션의 백엔드 플랫폼 구성을 개선하거나 코드 자체를 바꾸는 것 밖에 없다. 취약점이 서버 단에 존재하는 것이라면 애플리케이션을 업데이트해서 문제를 해결하는 것도 불가능한 선택지가 된다.” 앱소리티 보고서 내용의 일부다. 실제로 앱소리티는 다양한 플랫폼에서 수십 테라바이트의 데이터가 노출되어 있는 걸 발견했다고 한다. 하지만 그걸 다 분석하기엔 너무 많아 비관계형 데이터베이스 하나를 골라 집중 분석했다. “기업들이 보다 유연하고 사용이 편한 비관계형 데이터베이스를 선호하기 때문이죠. 그래서 엘라스틱서치를 선택했습니다.” 현재 기업들은 엘라스틱서치와 같은 종류의 프로그램을 사용해 지속적으로 저장되는 사용자 정보를 빠르게 추출해 분석하고 있다. 문제는 엘라스틱서치를 위시로 한 대다수 데이터베이스 솔루션들의 디폴트 환경설정이 편리를 위해서 보안을 희생시키고 있다는 것이다. “엘라스틱서치는 보안이나 접근 제어를 위해 만들어진 게 아니기 때문에, 보안 특성을 구축하려면 인증 플러그인이나 접근 API 같은 외부 실행 방안에 의존해야 한다”고 보고서가 설명하는 그대로다. 디폴트 설정 그대로 엘라스틱서치 서버를 인터넷에 연결시켜 둔다면 무슨 일이 일어날까? 데이터베이스에 대해 좀 아는 사람은 모두 자유롭게 드나들 수 있게 된다. 이론상의 문제인 것만도 아니다. 올해 초만 해도 이런 사건들이 있었다. 누군가 수백 개의 엘라스틱서버를 장악한 뒤 랜섬웨어 공격을 펼친 것이다. 그 일이 있기 전에 몽고디비 서버들도 비슷하게 노출된 적이 있었는데, 여기에서 힌트를 얻은 공격자들의 소행인 것으로 보인다. SAP 보안솔루션 업체 이알피스캔(ERPScan)과 작업한 보안 연구자들은 고객의 의뢰를 받고 공격이 발생했을 때 인터넷 상에 노출된 데이터베이스를 정밀 검사했는데, 당시 43,000건 이상의 엘라스틱서치 노출 사례를 발견할 수 있었다. 이알피스캔의 마티어 젤리(Mathieu Geli)는 “아마 조사를 할 때마다 그 숫자는 커질 것”이라고 말한다. “왜냐하면 기업의 관리자들은 지금도 빅데이터 처리에 관한 신기술을 개발하거나 적용하는 중이기 때문입니다. 사용률이 올라간다는 뜻이죠. 그런데 대부분 보안에 대해 생각하지 않습니다.” 관리자만이 아니다. 엘라스틱서치나 몽고디비 등을 제작하는 사람들조차 속도와 편리성에만 집중한다. 결과적으로 애플리케이션의 보안을 강화할 책임은 엘라스틱서치나 기타 유사한 백엔드 기술을 활용하는 개발자들에게 있다고 할 수 있다. 기업의 관리자나 플랫폼 개발자가 바뀌길 바라는 건 사실상 무의미하기 때문이다. 앱서리티가 보고서를 발표한 가장 근본적인 이유도 바로 이것, 애플리케이션 개발 단계에서의 보안 강화다. 개발자의 부주의로 보안 강화가 되지 않은 앱, 즉 취약점이 있는 앱 1000개 이상이 있을 때, 공격자들은 1) 애플리케이션을 역설계해서 2) 엘라스틱서치 서버의 IP 주소를 획득하고, 3) 그 IP를 통해 인증이나 발각될 위험 없이 수신되는 트래픽을 염탐할 수 있다. 앱소리티는 1,000개가 넘는 이 애플리케이션 중에 39개를 심층 분석했으며, 이 39개 애플리케이션에서 유출된 기록만 2억8천만 건 이상이라고 보고했다. 분석한 애플리케이션은 모두 합법적인 것들로서, “그 중 몇 개는 훌륭하게 보안을 실행하는 유명 공급업체들이 개발한 것도 있었다”고 보고서는 설명했다. 개발자만 보안에 신경 써도 이런 일이 막아진다는 것이다. 그 39개 앱 중에는 펄스 워크스페이스(Pulse Workspace)와 잭토 앱스(Jacto Apps)도 있었다. 펄스 워크스페이스는 제약품 공급업체, 미국 연방법원, 미국 미사일 회사 등을 포함해 광범위한 기업들에서 사용되는 가상 사설망(VPN) 애플리케이션이다. 잭토 앱스(Jacto Apps)라는 애플리케이션은 사물인터넷 데이터를 잭토의 판매용 농사 기계로부터 회사 중앙 서버까지 연결해, 고객 대신에 데이터를 저장하는 기능을 가지고 있다. 결국 데이터란 것이 모바일 기기에서 출발해 애플리케이션을 통해 클라우드에 저장되는 과정에도 보안이 필요하다는 개념이 심겨져야 한다는 것이다. “데이터 저장이나 분석을 위해 백엔드 플랫폼을 사용하는 모든 새로운 모바일 애플리케이션은 이런 위험의 잠재적 위협요소가 된다”고 보고서 저자들은 설명한다. “백엔드와 앱을 연동시키는 부분에 있어서 코딩에서부터 환경설정까지 개발자들이 다 알아서 안전하게 하겠거니 믿는 건, 데이터가 유출돼도 상관없다는 거나 마찬가지”라는 일침이 날카롭다. [국제부 오다인 기자(boan2@boannews.com)] Copyrighted 2015. UBM-Tech. 117153:0515BC |
|
|
|