가용성을 보호하는 디자인
- 10분
 
| 
               | 
|---|
원활하게 실행되도록 유지하고 안전하게 유지하는 것 사이의 적절한 균형을 찾아야 합니다. 사람들이 필요한 데이터를 얻을 수 있도록 시스템은 항상 작동해야합니다. 그러나 동시에 올바른 사용자만 액세스할 수 있어야 하며 데이터는 신뢰할 수 있어야 합니다. 보안 제어는 잘못된 행위자를 차단해야 하지만 합법적인 사용자를 느리게 하지 않아야 합니다.
예제 시나리오
Contoso Concierge는 미국 전역의 50개 이상의 호텔 브랜드에서 사용하는 호텔 관리 소프트웨어 시스템을 운영하고 있습니다. 예약, 체크인, 게스트 서비스 및 하우스키핑을 처리합니다. 이 시스템은 클라우드 기반이며, 두 개의 미국 지역에서 실행되며, 주로 가상 머신 확장 집합에서 호스트됩니다. 호텔 직원은 브라우저를 통해 액세스합니다.
강력한 보안을 통해 안정성 강화
보안 컨트롤 및 디자인 패턴을 사용하여 공격과 버그가 시스템을 오버로드하거나 사람들을 잠그는 것을 막을 수 있습니다.
이 방법은 누군가가 DDoS(분산 서비스 거부) 공격과 같은 방법으로 시스템을 중단하려고 하더라도 시스템을 계속 가동하고 실행하는 데 도움이 됩니다.
Contoso의 과제
워크로드 팀과 워크로드 관련자들은 호텔 투숙객이 비즈니스 및 레저 여행 모두에 의존하기 때문에 이 시스템이 매우 안정적이어야 한다는 것을 알고 있습니다. 다운되면 호텔이 제대로 실행되지 않습니다.
팀은 시스템이 제대로 작동하고 업데이트를 롤아웃하는 안전한 방법을 사용하는 것을 포함하여 작동 상태를 유지하기 위해 기능 및 비기능 요구 사항을 테스트하는 데 많은 노력을 기울였습니다.
그들은 신뢰할 수있는 것들을 유지하는 데 초점을 맞추고 있지만 보안에 많은 관심을 지불하지 않았습니다. 최근 업데이트는 해커가 활용하는 버그가 있었다, 여러 호텔에 대한 시스템을 충돌. 이 공격으로 한 지역의 서버가 4시간 넘게 오버로드되어 게스트와 직원에게 큰 문제가 발생했습니다.
공격자는 앱의 서버를 사용하여 지역 스토리지 시스템에 대한 요청을 몰래 가져와 가짜 folio 데이터를 끌어올 수 있습니다. 그 가짜 folios 중 하나는 거 대 한 하 고 메모리 부족 서버 발생. 그런 다음 사용자가 다시 시도하면 모든 서버에 문제가 확산됩니다.
접근 방식 및 결과 적용
팀은 앱 서버가 더 이상 folio 요청을 직접 처리하지 않도록 디자인을 변경했습니다. 대신 발레 키 접근 방식을 사용하여 액세스를 제한합니다. 이 접근 방식은 공격을 완전히 막지는 못했지만 피해를 유지했을 것입니다.
또한 시스템에 도달하기 전에 의심스러운 항목을 정리하기 위해 더 나은 입력 검사를 추가했습니다.
더 강력한 입력 필터링과 더 스마트한 디자인으로 이러한 종류의 공격이 다시 발생할 위험을 줄여 줍니다.
적극적으로 공격 벡터 제한
코드의 버그, 약한 네트워크 설정 또는 누락된 바이러스 백신과 같이 공격자가 침입하려는 일반적인 방법을 차단하기 위해 컨트롤을 미리 설정합니다.
정기적으로 코드를 검사하고, 보안 업데이트를 설치하고, 소프트웨어를 최신 상태로 유지하고, 바이러스 백신 도구를 실행합니다. 이러한 사례는 공격자가 들어갈 수 있는 방법을 줄이는 데 도움이 되며, 작업을 원활하게 실행하는 데 도움이 됩니다.
Contoso의 과제
시스템은 Azure Marketplace의 최신 Ubuntu 이미지를 사용하는 Azure VM(가상 머신)에서 실행됩니다. 각 VM이 시작되면 일부 인증서를 설치하고, 몇 가지 SSH 설정을 조정하고, 앱 코드를 로드합니다. 그러나 바이러스 백신 또는 맬웨어 방지 도구를 사용하지는 않습니다.
Azure Application Gateway는 솔루션을 전면에 배치하지만 인터넷 게이트웨이로만 사용됩니다. WAF(웹 애플리케이션 방화벽) 함수는 현재 사용하도록 설정되지 않았습니다.
이러한 선택을 통해 시스템은 코드의 취약성 또는 실수로 인한 맬웨어 설치와 같은 잠재적 위험에 노출됩니다.
접근 방식 및 결과 적용
Contoso의 보안 팀과 통신한 후 이제 VM이 엔터프라이즈 관리 바이러스 백신 솔루션에 등록됩니다.
또한 팀은 앱에 도달하기도 전에 WAF 함수를 활성화하고 미세 조정하여 SQL 삽입 시도와 같은 위험한 트래픽을 차단합니다.
이제 앱과 플랫폼 모두 시스템을 안정적이고 안전하게 유지하는 데 도움이 되는 보다 강력한 계층화된 방어 기능을 갖추고 있습니다.
복구 전략 확보
백업 및 복구 설정이 보안 제어 및 백업 빈도를 포함하여 주 환경과 마찬가지로 안전한지 확인합니다.
문제가 발생할 경우 항상 깨끗하고 안전한 버전의 시스템을 준비해야 합니다. 이렇게 하면 위협 없이 보안 백업 시스템으로 전환하고 데이터를 복원할 수 있습니다.
비효율적인 복구 프로세스로 인해 복구 속도가 느려질 수 있으므로 복구 대상이 누락될 수 있습니다. 예를 들어 암호 해독하거나 손상된 백업 데이터를 해독할 수 없는 암호화된 백업 데이터와 같은 보안 문제로 인해 복구 속도가 느려질 수 있습니다.
Contoso의 과제
시스템은 지역 전체에서 활성-활성 모드로 실행되며, 팀은 최악의 시나리오에서 작업을 복원하는 데 도움이 되는 재해 복구 계획을 가지고 있습니다.
이 계획의 일부에는 미국의 세 번째 지역에 백업을 보내는 작업이 포함됩니다.
최근 훈련에서 이러한 백업이 자주 확인되지 않고 강력한 보안이 없는 시스템에 저장되고 있음을 발견했습니다.
모든 백업이 맬웨어에 감염되었습니다. 만약 그 당시에 실제 재난이 닥쳤다면, 성공적으로 복구할 수 없었을 것입니다.
접근 방식 및 결과 적용
팀은 백업 위치를 보호하기 위해 시간과 노력을 투자했습니다. 더 강력한 네트워크 및 ID 보호를 추가했으며, 이제 백업은 변경하거나 변조할 수 없는 방식으로 저장됩니다.
팀에서는 보안 제어를 검토한 결과 복구 프로세스 중에 애플리케이션이 일정 시간 동안 WAF 없이 실행된다는 것을 발견했습니다. 이러한 차이를 좁히기 위해 작업 순서를 변경합니다.
팀은 백업 및 복구 프로세스가 훨씬 더 안전하며 더 이상 쉽지 않은 대상이라고 확신합니다.