기사CMS 보안: 웹사이트를 안전하게 유지하는 방법
게시 됨: 2022-08-12웹상의 사이트 수가 증가하고 있으며, 매년 해킹당하는 사이트의 비율도 증가하고 있습니다. 알려진 취약점을 악용하려는 봇이거나 조직에 대한 직접적인 표적 공격일 수 있습니다. 어느 쪽이든, 당신은 해킹 당할 것이라는 사고 방식을 취해야합니다. 이런 식으로 생각하는 것은 능동적인 행동과 더 나은 관행을 장려할 것입니다.
누군가가 귀하의 웹사이트를 해킹하고 싶어하지 않을지 의심스럽다면 언젠가 귀하의 웹 로그를 살펴보십시오. 누군가 또는 일부 봇이 웹 서버를 해킹하려는 증거를 찾을 수 있습니다. 조직이 세간의 이목을 끄는 조직이라면 매일 그런 일이 발생한다는 것을 알 수 있습니다. 해킹이 어떻게 발생할 수 있는지, 어떤 영향을 미칠 수 있는지, 피해를 완화하는 방법을 미리 아는 것이 필수적입니다. 어떻게 일어나는지 살펴보겠습니다.
코드 취약점
웹을 공격한 가장 악명 높은 익스플로잇 중 하나는 Heartbleed로 알려진 OpenSSL의 취약점이었습니다. OpenSSL은 안전한 데이터 트랜잭션을 위해 서버에서 암호화를 처리하는 소프트웨어 계층입니다. Heartbleed는 OpenSSL이 웹 서버 소프트웨어와 함께 낮은 수준에서 작동하기 때문에 어떤 콘텐츠 관리 시스템(CMS)을 사용했는지 상관하지 않았습니다. 아주 자격을 갖춘 프로그래머가 도입한 단순한 버그였으며 누구나 저지를 수 있는 유형의 실수였습니다.
이 실수가 주목할만한 이유는 모든 보안 웹사이트의 3분의 2 이상이 영향을 받았다는 것입니다. OpenSSL에 100명 이상의 기여자와 21,000명 이상의 고유한 코드 기여에도 불구하고 이 간단한 취약점은 거의 3년 동안 발견되지 않고 패치되었습니다.
두 가지 최신 유명 익스플로잇인 Spectre와 Meltdown은 모두 대부분의 최신 컴퓨터 프로세서에 내재된 취약점을 이용했습니다. 이를 통해 웹 서버와 같은 공유 컴퓨터 사용자가 동일한 하드웨어에서 실행되는 다른 사이트와 자신의 환경을 분리하는 가상 벽을 엿볼 수 있습니다.
대부분의 웹사이트는 수십 개의 고유한 애플리케이션, 수백만 줄의 코드 및 수천 명의 개별 개발자(웹사이트 자체의 코드는 제외)에 의존하므로 모든 운영 체제, 웹 서버, CMS에 취약점이 있다고 가정할 수 있습니다.
부적절한 구성
사이트가 해킹되는 가장 일반적인 이유는 잘못된 초기 구성입니다. 많은 웹사이트 관리자는 경험이 많지 않고 알아야 할 것이 엄청나게 많습니다. 운영 체제와 CMS 모두에서 사용자 구성, 해당 사용자의 권한 관리, 방화벽 규칙 관리, 웹 서버 구성 - 목록은 계속됩니다. 그러나 이러한 모든 요소는 보안에 매우 중요합니다.
많은 기사와 방법 가이드는 새로운 사용자를 위해 간단하게 유지하기 위해 최소한의 내용만 다루고 있습니다. 이는 개인이나 소규모 사업체에는 괜찮을지 모르지만 대규모 상장 기업에서는 용납할 수 없습니다. 이 수준에서 해킹은 단순한 불편이 아닙니다. 비즈니스에 심각한 영향을 미칠 수 있습니다.
유지 관리 부족
코드 취약점이 발견되면 패치가 생성되고 취약점이 대중에게 발표되기 전에 사용자에게 시스템을 업그레이드할 시간이 주어집니다. 안타깝게도 많은 웹사이트가 정기적으로 패치되지 않습니다. Heartbleed의 예로 돌아가서 패치가 릴리스된 지 3년이 넘었지만 여전히 취약한 이전 버전의 OpenSSL을 실행하는 웹 서버가 200,000개 이상 있었습니다.
최신 콘텐츠 관리 시스템은 애플리케이션 레이어 위에 레이어가 있습니다. 일반적인 WordPress 설치에는 Linux 운영 체제, 웹 서버 소프트웨어, PHP, MySQL 및 여러 플러그인이 있습니다. 이 모든 것을 지속적으로 모니터링하고 유지 관리해야 합니다. 많은 서비스 제공업체가 따라가지 못하는 것이 사실입니다.
인간은 인간이다
코드 취약점과 유지 관리 부족이 두려운 것처럼 보일 수 있지만 인간이 CMS를 사용하도록 함으로써 초래되는 위험에 비하면 창백할 수 있습니다. 우리
모든 사람은 도움이 되고 똑똑해 보이기를 원하기 때문에 본질적으로 사회 공학에 취약합니다. 다음과 같은 특정 요청으로 인해 알람 벨이 울려야 합니다.
- "안녕하세요, 저는 IT 부서의 Bob입니다. 귀하의 컴퓨터에서 비정상적인 트래픽이 들어오는 것을 감지하고 있습니다..."
- "진단 도구를 보내 드리겠습니다."
- "당신은 우리의 파워 유저 중 한 명입니다. 그래서 저를 도와주시겠습니까..."
불행히도 이러한 기술은 종종 취약한 사람들에게 효과가 있습니다.
또 다른 일반적인 함정은 잘못된 암호 관행입니다. 이 일반적인 암호 목록을 간단히 살펴보십시오. 뭔가 낯익지 않나요? 비밀번호의 루트처럼 보이거나 유사한 기술을 사용하는 항목이 있습니까?
그렇다면 솔루션이 독특하거나 영리하지 않으므로 지금 비밀번호를 변경해야 합니다! 무차별 대입 공격은 이와 같은 목록으로 시작하여 변형을 도입하고 몇 분 안에 암호를 찾을 수 있습니다.
가난한 사람과 함께

사이트를 안전하게 유지하는 방법
"우리는 해킹할 수 없다"고 말하는 사람은 운명을 유혹하지만 위험을 크게 최소화할 수 있습니다. 다음은 악의적인 행위자로부터 사이트를 보호하기 위해 적용할 수 있는 몇 가지 기본적인 보호 장치 및 프로세스입니다.
좋은 보안 습관
자격 증명이 손상될 위험을 크게 줄이기 위해 사용자가 할 수 있는 몇 가지 간단한 작업이 있습니다.
- "구문" 암호를 사용하십시오. 국립표준기술원에 따르면,
암호 더 기억에 남고 안전합니다. 특수 문자 및 숫자가 포함된 암호 요구 사항은 효과적이지 않습니다. - 암호 관리자를 사용하십시오. 비밀번호 관리자는 모든 사이트에서 고유한 비밀번호를 사용하도록 도와줍니다. 또한 고유한 암호 지침을 설정하고 시행할 수도 있습니다.
- 사회 공학 기술을 가르칩니다. 사용자에게 발생하는 동안 인식할 수 있는 지식을 제공하고 성공하기 전에 종료할 수 있는 확신을 제공합니다.
정기 유지 보수
보안 패치 및 새 릴리스로 항상 소프트웨어를 최신 상태로 유지하십시오. 웹 서버 유지 관리에 대한 책임이 없는 경우 기술 스택이 최신 중요 패치를 실행하도록 하는 프로세스에 대한 세부 정보를 보려면 모든 서비스 제공업체에 문의하십시오.
여기에는 운영 체제, 웹 서비스,
우수한 유지 관리 방법은 웹을 넘어 하드웨어까지 확장됩니다.
새로운 익스플로잇이 발견될 때마다 마지못해 악당들과 경쟁하게 될 것임을 기억하십시오. 그들이 당신을 찾기 전에 패치를 제자리에 가져와야합니다. 취해야 할 조치와 모니터링할 항목이 많기 때문에 웹 서버를 유지 관리하는 것은 정규직입니다.
승인된 사용자 목록을 최신 상태로 유지하고 조직을 떠난 사용자를 항상 정리하십시오. 불만이 있는 근로자는 단기간에 많은 피해를 입힐 수 있으므로 해고 처리 계획을 조정합니다.
공격 벡터 제거
웹사이트에 코드와 복잡성을 추가하는 모든 계층은 잠재적인 취약성을 유발하므로 기술 스택을 최대한 간결하고 단순하게 유지하십시오. 필요하지 않은 모든 응용 프로그램과 서비스를 제거합니다. 웹사이트와 CMS가 작동하는 데 필요한 서비스만 실행하십시오.
웹 사이트, CMS 또는 기타 필요한 서비스에 필요한 포트에서 웹 서버에 대한 인바운드 트래픽만 허용합니다. 사용하지 않는 서비스를 노출하는 것은 의미가 없습니다.
CMS에 대한 액세스를 네트워크 또는 VPN의 사용자로 제한합니다. 이는 콘텐츠 관리자에게 영향을 줄 수 있으므로 이 절충안을 신중하게 고려하십시오.
계속 순환 백업
앞서 언급했듯이 가장 안전한 사고방식은 해킹당할 것이라고 가정하는 것입니다. 좋은 백업을 유지하는 것의 가치를 강조합니다. 철저한 백업 계획에는 매일 6회 순환 백업, 4주마다, 6개월마다 및 연간 백업을 유지하는 것이 포함될 수 있습니다.
해킹이 항상 즉시 발견되는 것은 아니기 때문에 얼마나 멀리 돌아가야 하는지 알 수 없습니다. 일일 백업은 위험합니다.
또한 단순히 백업 계획을 설정하는 것만으로는 충분하지 않습니다. 모든 백업이 실행 중이고 이러한 백업에서 적시에 복구할 수 있는지 정기적으로 확인해야 합니다. 해킹을 당한 후에야 백업이 작동하지 않는다는 사실을 발견했다고 상상해 보세요... 사람들이 원하는 시나리오가 아닙니다.
그렇다면 SAM은 어떻습니까?
SAM에는 다른 콘텐츠 관리 시스템으로 구축된 사이트보다 이 도구로 구축된 사이트를 해킹하기가 더 어려운 몇 가지 고유한 속성이 있습니다.
SAM은 플러그인이 없고 Windows Server 운영 체제의 핵심 구성 요소인 기본 서비스만 필요하기 때문에 계속 업데이트되는 단일 앱입니다. Microsoft의 자동 업데이트를 사용하는 경우 서버에 항상 패치가 적용됩니다.
더욱 주목할만한 점은 SAM은 정적 사이트 생성기입니다. 대부분의 콘텐츠 관리 시스템은 사용자가 요청할 때 요청 시 페이지를 생성하지만 정적 사이트 생성기는 콘텐츠가 변경될 때마다 페이지를 생성하고 파일 시스템에 게시하는 방식으로 작동합니다.
사용자가 라이브 웹사이트를 보기 위해 CMS가 필요하지 않으며 SAM은 네트워크 내부에 숨길 수 있습니다. 즉, 해킹할 공개적으로 보이는 CMS가 없습니다! 대부분의 고객은 차이점을 전혀 인식하지 못하지만 SAM을 군중과 진정으로 구별하는 품질입니다.
참조 및 리소스
- 웹사이트 해킹 동향 보고서
- NoHacked: 1년 검토 중
- 웹사이트 보안: 웹사이트는 어떻게 해킹됩니까?
- 웹사이트 해킹 방법: 일반적인 기술 개요
- 2017년 11월 웹 서버 설문조사
- 하트블리드 버그
- 멜트다운과 스펙터
- NIST 디지털 신원 가이드라인
- 2016년 최악의 비밀번호
