Cloud Computing - AWS (4) 보안 2 (클라우드 보안 이슈 13가지)

Alex of the year 2020 & 2021·2020년 9월 19일
0

AWS, Cloud

목록 보기
5/5
post-thumbnail

클라우드 컴퓨팅에 대한 주요 위협

많은 사람의 생각과 달리, 클라우드에서 기업 데이터를 보호하는 책임은 서비스 공급업체가 아닌 클라우드 고객에게 있다. 클라우드 보안 연합(Cloud Security Alliance, CSA)은 조직이 클라우드 도입 전략에서 현명한 결정을 내릴 수 있도록 클라우드 보안에 대한 이해를 돕기 위해 <클라우드 컴퓨팅에 대한 12가지 주요 위협: 산업 인사이트 보고서>의 최신 버전을 발행했다. (2019년 기준)

1. 데이터 유출

“데이터 유출은 표적 공격의 주 목표이기도 하지만 단순히 사람의 실수나 애플리케이션 취약점 또는 잘못된 보안 관행의 결과일 수도 있다”

유출되는 데이터에는 개인 건강 정보, 금융 정보, 개인 식별 정보, 영업 비밀, 지적 재산을 포함한 온갖 종류의 정보가 포함된다. 조직의 클라우드 기반 데이터는 다양한 이유로 여러 사람들에게 가치가 있을 수 있다. 데이터 유출 위험은 클라우드 컴퓨팅에만 국한된 사항은 아니지만 클라우드 고객 입장에서는 가장 큰 우려 사항이다.

[대표 사례]
2012년 링크드인(LinkedIn) 비밀번호 해킹 사건
링크드인이 비밀번호 데이터베이스를 암호화하지 않았기 때문에 공격자는 1억 6,700만 개의 비밀번호를 훔칠 수 있었다. 보고서에 따르면, 조직은 항상 사용자 자격 증명이 포함된 데이터베이스를 암호화하고 적절한 로깅 및 행위 이상 분석을 구현해야 한다.

2. 불충분한 ID, 자격 증명 및 액세스 관리

합법적인 사용자, 운영자 혹은 개발자로 가장한 공격자는 데이터를 읽고 수정하고 삭제할 수 있다. 또한 제어 및 관리 기능을 통해 전송 중인 데이터를 엿보거나 합법적인 소스를 가장해 악의적인 소프트웨어를 배포할 수 있다. 결과적으로 ID, 자격 증명 또는 키 관리가 제대로 되지 않으면 데이터에 대한 무단 액세스를 허용하게 되고 조직이나 최종 사용자에게 치명적인 피해를 입힐 수 있다.

후속 보고서에 따르면, 불충분한 액세스 관리 사례는 몽고DB(MongoDB) 데이터베이스의 보호되지 않은 기본 설치를 발견한 것이다. 이 기본 구현은 인증없이 액세스를 허용하는 포트를 열어뒀다. 이 보고서는 예방 제어가 모든 경계선에 적용될 것을 권고한다. 조직은 매니지드, 공유, 퍼블릭 환경 등에서도 취약점을 검색해야 한다.

3. 안전하지 않은 인터페이스와 API

클라우드 공급업체는 고객이 클라우드 서비스를 관리하고 상호작용하는데 사용하는 일련의 소프트웨어 UI(user interfaces)나 API(Application Programming Interfaces)를 제공한다. 프로비저닝, 관리, 모니터링은 모두 이런 인터페이스를 사용해 수행되며 일반적인 클라우드 서비스의 보안과 가용성은 API의 보안에 따라 좌우된다. 따라서 API는 정책을 우회하기 위한 우발적, 혹은 악의적인 시도를 차단하도록 설계돼야 한다.

4. 시스템 취약점

시스템 취약점은 프로그램에 존재하는 악용할 수 있는 버그로, 공격자가 시스템에 침투해 데이터를 훔치고, 시스템 제어 권한을 탈취하거나 서비스 운영을 방해하게끔 해준다. CSA는 “운영체제 구성요소 내에 있는 취약점이 있다면 모든 서비스와 데이터의 보안이 심각한 위험에 처하게 된다”고 말했다. 클라우드에서 멀티 테넌트(multi-tenancy)가 확산되면서 다양한 조직의 시스템이 서로 밀접하게 위치하고 공유 메모리와 리소스에 액세스할 수 있게 되고 이는 새로운 공격 표면을 형성한다.

5. 계정 도용

계정 또는 서비스 도용은 새로운 것은 아니지만 클라우드 서비스로 인해 새로운 위협이 추가된 상황이다. 공격자가 사용자 자격 증명을 획득하게 되면 활동과 거래를 도청하고 데이터를 조작하고 위조된 정보를 반환하고 클라이언트를 불법적인 사이트로 돌릴 수 있다. 계정 또는 서비스 인스턴스는 공격자에게 새로운 기반이 될 수 있다. 자격 증명을 도용한 공격자는 종종 클라우드 컴퓨팅 서비스의 주요 영역에 액세스해 해당 서비스의 기밀성, 무결성, 가용성을 훼손할 수 있다.

[대표 사례]
더티 카우(Dirty COW) APT 그룹은 약한 곳이나 소셜 엔지니어링을 통해 기존 계정을 넘겨받음으로써 시스템의 관리자 수준 권한까지 획득할 수 있었다. 후속 보고서는 액세스 권한에 대해 알아야 할 액세스 정책과 계정 탈취 기술에 대한 소셜 엔지니어링 교육을 권장하고 있다.

6. 악의적인 내부자

악의적인 내부자에 대한 위협의 수준은 논쟁의 여지가 있지만 내부자 위협이 실체가 있는 적이라는 사실에는 논란의 여지가 없다. 시스템 관리자가 악의적인 내부자인 경우, 민감한 정보에 액세스할 수 있으며 매우 중요한 시스템과 데이터에 대한 더 높은 수준의 액세스 권한을 가질 수 있다. 클라우드 서비스 공급업체에게 전적으로 보안을 맡기는 시스템은 더 큰 위험에 노출된다.

[대표 사례]
불만을 품은 징가(Zynga)의 직원이 회사의 기밀 비즈니스 데이터를 다운로드해 공개해버린 사례. 당시 징가는 유출 방지 제어가 없었다. 이와 같은 사례를 막기 위해서는 DLP(Data Loss Prevention) 제어를 적용하고 의심스러운 활동에 대한 인식과 보고 프로세스를 개선하기 위해 보안 및 개인정보보호 프로그램을 마련할 것을 권장한다.

7. APT

APT(Advanced Persistent Threats)는 기생충 형태의 사이버 공격으로, 시스템에 침투해 목표 조직의 IT 인프라 내에 활동 거점을 만들어 데이터를 훔친다. APT는 장기간에 걸쳐 은밀하게 목표를 공격하며 APT를 차단하는 보안 조치에 따라 자체적으로 적응하는 경우가 많다. CSA는 “일단 내부에 침입한 APT는 데이터센터 네트워크에서 횡으로 이동하며 정상적인 네트워크 트래픽 사이에 섞여 목표를 달성한다”고 말했다.

8. 데이터 손실

CSA는 “클라우드 내 저장된 데이터는 악의적인 공격 이외 다른 이유로 손실될 수 있다”고 말했다. 클라우드 서비스 공급업체가 실수로 삭제하거나 화재나 지진과 같은 물리적인 재해를 당할 경우, 클라우드 공급업체나 소비자가 데이터 백업, 재해복구 등의 비즈니스 연속성에 대한 모범 사례에 따라 적절한 조치를 취하지 않았다면 데이터를 영구적으로 손실할 수 있다.

9. 불충분한 실사

경영진은 비즈니스 전략을 수립할 때, 클라우드 기술과 서비스 공급업체를 고려해야 한다고 CSA는 말했다. 공급업체를 평가할 때 실사를 위한 효과적인 로드맵과 체크리스트를 만드는 것이 필수적이다. 클라우드 기술을 급하게 도입하고 실사 없이 공급업체를 선택하는 조직은 여러 가지 위험에 노출된다.

10. 클라우드 서비스 남용과 악의적인 사용

보안이 취약한 클라우드 서비스, 무료 클라우드 서비스 평가판, 결제 수단 사기를 통한 사기성 계정 등록은 클라우드 컴퓨팅 모델을 악의적인 공격에 노출시킨다. 공격자는 클라우드 컴퓨팅 리소스를 활용해 사용자, 조직 또는 다른 클라우드 공급업체를 공격 대상으로 삼을 수 있다.

[클라우드 기반 리소스 악용 대표 사례]
DDoS(Distributed Denial-of-Service) 공격, 이메일 스팸 및 피싱 사기

11. DoS

DoS(Denial of service) 공격은 서비스 사용자가 데이터 또는 애플리케이션에 액세스할 수 없도록 한다. 공격자는 공격 대상 클라우드 서비스가 프로세서, 메모리, 디스크 공간, 또는 네트워크 대역폭과 같은 한정된 시스템 리소스를 과도하게 소비하도록 해 시스템 속도를 저하시키고 합법적인 서비스 사용자가 서비스에 액세스할 수 없도록 만든다.

Dos 공격 (서비스 거부 공격)

  • 시스템을 악의적으로 공격해 해당 시스템의 자원을 부족하게 하여 원래 의도된 용도로 사용하지 못하게 하는 공격
  • 특정 서버에게 수많은 접속 시도를 만들어 다른 이용자가 정상적으로 서비스 이용을 하지 못하게 하거나, 서버의 TCP 연결을 바닥내는 등의 공격이 이 범위에 포함
  • 수단, 동기, 표적은 다양할 수 있지만, 보통 인터넷 사이트 또는 서비스의 기능을 일시적 또는 영구적으로 방해 및 중단을 초래
  • 통상적으로 DoS는 유명한 사이트, 즉 은행, 신용카드 지불 게이트웨이, 또는 심지어 루트 네임 서버(root name server)를 상대로 이루어진다

DDos 공격 (분산 서비스 거부 공격)

  • 여러 대의 공격자를 분산적으로 배치해 동시에 서비스 거부 공격을 하는 방법이다. 이는 IAB의 정당한 인터넷 사용 정책에 반하는 것으로 여겨지며 거의 모든 인터넷 서비스 공급자의 허용할 수 있는 사용 정책도 위반한다. 또한 개별 국가의 법률에도 저촉된다.
  • 사실 대학교 수강신청, 큐넷 자격증 접수, 인터파크 공연 티켓팅 등에서 자주 보이는 정상 접속이 폭주해 서버가 먹통이 되는 사례들도 DDoS와 같은 원리이다. (다만 위의 사례는 DDos 'Attack'이 아닐 뿐)
  • 악성코드나 바이러스 등의 악의적인 프로그램들을 통해서 일반 사용자의 PC를 감염시켜 좀비PC로 만든 다음 C&C 서버를 통해 DDoS 공격이 수행됨
  • DDoS 공격은 악의적인 프로그램에서 정한 특정 시간대에 시작된다

[대표 사례]
2016년 10월 21일(현지시각), 미국의 호스팅 기업인 딘(Dyn)이 대규모 DDoS 공격을 받았다. 무려 전세계에 있는 Dyn의 모든 데이터센터들이 목표가 되었는데 특히 DNS 서비스를 노린 치밀한 공격 계획으로 인해 Dyn에서 관리하는 수천개의 도메인이 마비되었으며, 특히 미국 동부의 인터넷 이용에 큰 지장이 있었다. 공격자는 이런 국가 규모의 공격을 성공시키기 위해 기존의 봇넷과 더불어 마찬가지로 미라이 악성코드를 이용한 수십만대의 사물 인터넷 디바이스들을 동원했으며, 무려 1.2Tbps의 규모를 달성하여 기존의 1Tbps 규모를 갱신했다. 이 공격에 가담한 IoT 장치들은 기본적인 자격 증명을 사용했기 때문에 손쉽게 해킹 당했다. 공격 규모가 너무나도 컸기에 전문가들은 공격자가 일부 공격 자원을 빌려왔을 것으로 추정했으며, 일부 인터넷 서비스 업체들은 공격으로 인한 혼잡을 피하기 위해 라우팅 경로를 일시적으로 변경하기도 했다. 이 보고서는 네트워크 트래픽 분석을 통해 이례적인 사항을 파악하고 비즈니스 연속성 계획을 검토, 테스트할 것을 권장했다.

Dos 공격에 대한 대책

  • 핵심 서버들의 비상시의 IP를 준비하고 분산시켜 놓기

  • 공격이 일어났을 때 우회할 수 있는 방법과 대체할 수 있는 시스템에 대해 투자하는 것

  • 라우터에 트래픽 정책을 변경하여 DoS 공격자들을 제한
    (대부분의 네트워크 장비 회사들은 DoS 공격을 예방할 수 있는 최소한의 라우팅 설정에 대한 안내서를 제공)

  • 유해사이트 차단
    7.7 DDos, 3.3 DDos 사건 모두 악성코드에 감염된 P2P와 웹하드에 접속한 PC가 좀비화 되어 발생했다. DDos 공격을 초래하는 숙주사이트인 P2P, 웹하드, 불법사이트 접근을 차단해 DDos 공격을 근본적으로 차단해야 한다. 개인PC의 경우 개인의 자유이므로 불법사이트 접근을 지양하는 것이 좋으며, 내부에 개인정보, 기밀정보 등 주요정보가 저장된 기업, 기관의 경우 자체적으로 DDos 숙주사이트, 악성코드 배포사이트, 불법사이트 접근을 관리하는 것이 중요하다.

12. 공유 기술 취약점

클라우드 서비스 공급업체는 인프라, 플랫폼 또는 애플리케이션을 공유함으로써 서비스 확장성을 제공한다. 클라우드 기술은 기존 하드웨어/소프트웨어를 대폭 변경하지 않고도 서비스 형태(as-a-service)의 주문을 소화할 수 있는데, 종종 그 대가로 보안이 희생된다. 클라우드 서비스를 지원하는 인프라의 기반 구성 요소가 멀티 테넌트 아키텍처 또는 다중 고객 애플리케이션을 위한 강력한 격리 특성을 제공하도록 설계되지 않은 경우도 있다. 이로 인해 모든 제공 모델에서 악용될 가능성이 있는 공유 기술 취약점이 발생할 수 있다.

CSA는 악의적인 외부 행위자가 소프트웨어 취약점을 활용해 보안 서비스 제공업체인 클라우드플레어(Cloudflare)의 API 키, 비밀번호, 기타 자격 증명을 도용할 수 있는 클라우드블리드(Cloudbleed) 취약점을 이 사례로 들었다. 보고서는 모든 민감한 데이터를 암호화하고 민감도 수준에 따라 데이터를 분류할 것을 권고했다.

13. 스펙트라와 멜트다운

2018년 1월, 연구원은 악의적인 자바스크립트 코드를 사용해 암호화된 데이터를 비롯한 콘텐츠를 메모리에서 읽을 수 있게 해주는 대부분의 최신 마이크로프로세서의 설계 오류를 공개했다. 멜트다운(Meltdown)과 스펙트라(Spectre)는 스마트폰에서 서버에 이르기까지 모든 장치에 영향을 미친다. 특히 스펙트라의 위협 특성으로 인해 클라우드 위협 목록에도 추가하게 됐다.

스펙트라와 멜트다운은 애플리케이션 사이에 차단을 없애기 때문에 부채널 공격(side-channel attacks)을 허용한다. 권한이 없는 로그인을 통해 시스템에 액세스할 수 있는 공격자는 커널에서 정보를 읽거나 공격자가 게스트 가상머신의 관리자일 경우, 호스트 커널을 읽을 수 있다.

이는 클라우드 서비스 제공업체에게는 큰 문제다. 패치가 이뤄지면 공격을 실행하기 어려워진다. 다만 이 패치로 인해 성능이 저하될 수 있으므로 일부 기업에서는 시스템들을 패치를 적용하지 않은 상태로 둘 수 있다. CERT는 영향을 받은 모든 프로세서를 대체할 것을 권장하고 있다.

지금까지 멜트다운이나 스펙트라를 활용한 알려진 악용 사례는 없다. 하지만 전문가들은 가능성이 상대적으로 높다는 것에 동의한다. 클라우드 공급업체가 이를 방지하는 가장 좋은 방법은 최신 패치가 있는지 확인하는 것이다. 기업 고객은 클라우드 공급업체가 멜트다운과 스펙트라에 대해 어떻게 대응하고 있는지 정보를 요구해야 한다.



reference:
http://www.itworld.co.kr/news/125934#csidx04e9fa859cb5afc80f20c014de433b1
https://ko.wikipedia.org/wiki/%EC%84%9C%EB%B9%84%EC%8A%A4_%EA%B1%B0%EB%B6%80_%EA%B3%B5%EA%B2%A9

profile
Backend 개발 학습 아카이빙 블로그입니다. (현재는 작성하지 않습니다.)

0개의 댓글