즉시 구현해야 하는 7가지 드루팔 보안 전략! (상위 Drupal 9 보안 모듈 포함)
게시 됨: 2022-12-13웹 사이트 보안은 일회성 목표가 아니라 지속적인 관심이 필요한 지속적인 프로세스입니다. 재해에 대응하는 것보다 항상 재해를 예방하는 것이 좋습니다. Drupal 웹 사이트를 사용하면 Drupal 보안 팀이 보고된 보안 문제를 해결할 것이라고 확신할 수 있습니다.
Drupal은 수백만 개의 웹 사이트를 지원했으며 그 중 다수는 매우 중요한 데이터를 처리합니다. 당연히 Drupal은 정부 웹사이트, 은행 및 금융 기관, 전자 상거래 매장 등과 같이 중요한 정보를 처리하는 웹사이트에서 선택한 CMS였습니다. Drupal 보안 업데이트 및 기능은 OWASP(Open Web Application Security Project)의 상위 10개 보안 위험을 모두 해결합니다. ).
그러나 보안 모범 사례를 따르고 지속적으로 진화하는 보안 전략을 구현하여 웹 사이트를 안전하게 유지하는 것은 궁극적으로 귀하의 책임입니다. 방법을 알아보려면 자세히 읽어보세요.
Drupal 보안 취약점
커뮤니티가 Drupal의 보안을 매우 중요하게 생각하고 Drupal 보안 업데이트/패치를 계속 릴리스한다는 것은 말할 필요도 없습니다. Drupal 보안 팀은 취약점이 공개되기 전에도 항상 능동적으로 패치를 준비합니다. 예를 들어, Drupal 보안 팀은 보안 취약성 업데이트인 SA-CORE-2018-002가 실제로 악용되기 며칠 전에 발표했습니다(Drupalgeddon2). 패치 및 Drupal 보안 업데이트가 곧 출시되어 Drupal 사이트 관리자에게 웹사이트 업데이트를 권고했습니다.
보안 취약점에 대한 그의 블로그 중 하나에서 Dries를 인용 – “Drupal 보안 팀은 "공동 공개 정책"을 따릅니다. 수정 사항이 게시될 때까지 문제는 비공개로 유지됩니다. 위협이 해결되고 보안 버전의 Drupal 코어도 사용할 수 있게 되면 공개 발표가 이루어집니다. 버그 수정이 가능할 때에도 Drupal 보안 팀은 커뮤니케이션에 대해 매우 사려 깊습니다.“
CVE 세부 정보에 의한 Drupal의 취약점 통계에 대한 몇 가지 흥미로운 통찰:
1. 진정하고 최신 정보 유지 – Drupal 보안 업데이트
Drupal 보안 팀은 항상 취약점을 찾기 위해 최선을 다하고 있습니다. 패치/Drupal 보안 업데이트는 발견 즉시 즉시 릴리스됩니다. 또한 Drupal 8과 지속적인 혁신을 채택한 후 마이너 릴리스가 더 자주 발생합니다. 이로 인해 더 좋고 더 안전한 버전의 Drupal 업데이트가 쉽고 빠르게 이루어졌습니다.
Drupal 버전과 모듈을 최신 상태로 유지하는 것은 웹 사이트의 안전을 보장하기 위해 할 수 있는 최소한의 조치입니다. Drupal 기여자들은 최신 정보를 유지하고 항상 재앙을 불러일으킬 수 있는 보안 위협을 찾고 있습니다. Drupal 업데이트에는 새로운 기능뿐만 아니라 보안 패치 및 버그 수정도 함께 제공됩니다. Drupal 보안 업데이트 및 발표는 사용자의 이메일에 게시되며 사이트 관리자는 보안을 보장하기 위해 버전을 최신 상태로 유지해야 합니다.
2. 입력 관리
대화형 웹 사이트는 일반적으로 사용자로부터 입력을 수집합니다. 웹 사이트 관리자로서 이러한 입력을 적절하게 관리하고 처리하지 않는 한 웹 사이트는 높은 보안 위험에 노출됩니다. 해커는 웹 사이트 데이터에 큰 피해를 줄 수 있는 SQL 코드를 주입할 수 있습니다.
사용자가 "SELECT", "DROP" 또는 "DELETE"와 같은 SQL 관련 단어를 입력하지 못하게 하면 웹 사이트의 사용자 경험이 손상될 수 있습니다. 대신 Drupal의 보안을 통해 데이터베이스 API에서 사용할 수 있는 이스케이프 또는 필터링 기능을 사용하여 유해한 SQL 주입을 제거하고 필터링할 수 있습니다. 코드를 삭제하는 것은 안전한 Drupal 웹사이트를 향한 가장 중요한 단계입니다.
3. 드루팔 9 보안
Drupal 9은 보다 강력하고 안전한 웹 사이트를 구축하는 데 어떻게 도움이 됩니까?
- Symfony – Drupal 9는 Symfony 프레임워크를 채택하여 핵심 Drupal 개발자로 제한하는 것 외에 더 많은 개발자에게 문을 열었습니다. Symfony는 더 안전한 프레임워크일 뿐만 아니라 버그를 수정하고 보안 패치를 만들기 위해 다양한 통찰력을 가진 더 많은 개발자를 끌어들였습니다.
- Twig 템플릿 – 입력을 더 잘 처리하기 위해 코드를 삭제하는 방법에 대해 방금 논의한 것처럼 Drupal을 사용하면 이미 처리되었음을 알려드립니다. 어떻게? Drupal 9이 템플릿 엔진으로 Twig를 채택한 덕분입니다. Twig를 사용하면 자동으로 삭제되므로 추가 필터링 및 입력 이스케이프가 필요하지 않습니다. 또한 Twig는 로직과 프리젠테이션 사이에 별도의 레이어를 적용하여 SQL 쿼리를 실행하거나 테마 레이어를 오용하는 것을 불가능하게 만듭니다.
- 보다 안전한 WYSIWYG - Drupal의 WYSIWYG 편집기는 사용자를 위한 훌륭한 편집 도구이지만 XSS 공격과 같은 공격을 수행하는 데 오용될 수도 있습니다. Drupal 보안 모범 사례를 따르는 Drupal 9에서는 이제 필터링된 HTML 형식만 사용할 수 있습니다. 또한 사용자가 이미지를 오용하는 것을 방지하고 CSRF(Cross-Site Request Forgery)를 방지하기 위해 Drupal의 핵심 텍스트 필터링은 사용자가 로컬 이미지만 사용할 수 있도록 합니다.
- 구성 관리 이니셔티브(CMI) – 이 Drupal 이니셔티브는 사이트 관리자와 소유자가 코드에서 구성을 추적할 수 있도록 하므로 매우 효과적입니다. 모든 사이트 구성 변경 사항을 추적하고 감사하여 웹 사이트 구성을 엄격하게 제어할 수 있습니다.
4. Drupal 모듈을 현명하게 선택하십시오
모듈을 설치하기 전에 모듈이 얼마나 활성화되어 있는지 확인하십시오. 모듈 개발자가 충분히 활동적입니까? Drupal 보안 업데이트를 자주 릴리스합니까? 이전에 다운로드한 적이 있습니까, 아니면 첫 번째 희생양입니까? 언급된 모든 세부 정보는 모듈 다운로드 페이지 하단에서 찾을 수 있습니다. 또한 모듈이 업데이트되었는지 확인하고 더 이상 사용하지 않는 모듈을 제거하십시오.
5. 구조에 대한 Drupal 보안 모듈
두꺼운 스웨터 한 벌보다 레이어드 의류가 겨울철 보온에 더 효과적인 것처럼 웹 사이트는 레이어드 방식으로 보호하는 것이 가장 좋습니다. Drupal 보안 모듈은 웹사이트에 추가 보안 계층을 제공할 수 있습니다.
자동 업데이트
이것은 현재 기여 모듈이지만 곧 Drupal 10의 핵심으로 이동할 것입니다. 자동 업데이트 이니셔티브의 목표는 Drupal 웹 사이트를 자동으로 업데이트하는 쉽고 안전하며 안전한 방법을 제공하는 것입니다. 핵심 패치 및 보안 릴리스로 사이트를 자동으로 업데이트하는 데 도움이 됩니다. 업데이트 프로세스 중 모든 문제가 감지되고 보고되므로 나중에 확인할 필요가 없습니다.
로그인 보안
이 모듈은 사이트 관리자가 사용자 로그인에 대한 다양한 제한을 추가할 수 있도록 하여 Drupal의 보안을 보장합니다. Drupal 로그인 보안 모듈은 계정을 차단하기 전에 잘못된 로그인 시도 횟수를 제한할 수 있습니다. 일시적 또는 영구적으로 IP 주소에 대한 액세스가 거부될 수 있습니다.
이중 인증
이 Drupal 보안 모듈을 사용하면 사용자가 사용자 ID와 암호로 로그인하면 추가 인증 계층을 추가할 수 있습니다. 휴대폰으로 전송된 코드를 입력하는 것과 같습니다.
비밀번호 정책
이것은 로그인 양식에 또 다른 보안 계층을 추가하여 봇 및 기타 보안 위반을 방지할 수 있는 훌륭한 Drupal 보안 모듈입니다. 길이, 문자 유형, 대소문자(대문자/소문자), 구두점 등에 대한 제약과 같은 사용자 암호에 대한 특정 제한을 적용합니다. 또한 사용자가 암호를 정기적으로 변경하도록 합니다(암호 만료 기능).
사용자 이름 열거 방지
기본적으로 Drupal은 입력한 사용자 이름이 존재하지 않는지 또는 존재하는지(다른 자격 증명이 잘못된 경우) 알려줍니다. 이것은 해커가 실제로 유효한 사용자 이름을 찾기 위해 임의의 사용자 이름을 입력하려고 하는 경우 유용할 수 있습니다. 이 모듈은 Drupal의 보안을 활성화하고 표준 오류 메시지를 변경하여 이러한 공격을 방지합니다.
콘텐츠 액세스
이름에서 알 수 있듯이 이 모듈을 사용하면 콘텐츠에 대한 보다 자세한 액세스 제어를 제공할 수 있습니다. 각 콘텐츠 유형은 사용자 지정 보기, 편집 또는 삭제 권한으로 지정할 수 있습니다. 역할 및 작성자별로 콘텐츠 유형에 대한 권한을 관리할 수 있습니다.
보안 키트
이 Drupal 보안 모듈은 많은 위험 처리 기능을 제공합니다. 교차 사이트 스크립팅(또는 스니핑), CSRF, 클릭재킹, 도청 공격 등과 같은 취약점은 이 Drupal 9 보안 모듈로 쉽게 처리하고 완화할 수 있습니다.
보안 문자
우리가 인간임을 증명하는 것을 싫어하는 만큼, CAPTCHA는 원치 않는 스팸봇을 걸러내는 최고의 Drupal 보안 모듈 중 하나일 것입니다. 이 Drupal 모듈은 스팸봇의 자동화된 스크립트 제출을 방지하고 Drupal 웹사이트의 모든 웹 형식에서 사용할 수 있습니다.
6. 권한 확인
Drupal을 사용하면 관리자, 인증된 사용자, 익명 사용자, 편집자 등과 같은 여러 역할과 사용자를 가질 수 있습니다. 웹 사이트 보안을 미세 조정하려면 이러한 각 역할이 특정 유형의 작업만 수행하도록 허용되어야 합니다. 예를 들어 익명 사용자에게는 콘텐츠 보기와 같은 최소한의 권한이 부여되어야 합니다. Drupal을 설치하거나 더 많은 모듈을 추가한 후에는 각 역할에 수동으로 액세스 권한을 할당하고 부여하는 것을 잊지 마십시오.
7. HTTPS 받기
HTTP를 통해 전송되는 모든 트래픽이 거의 모든 사람에 의해 스누핑되고 기록될 수 있다는 것을 이미 알고 계실 것입니다. 로그인 ID, 암호 및 기타 세션 정보와 같은 정보는 공격자가 가져오고 악용할 수 있습니다. 전자 상거래 웹사이트가 있는 경우 결제 및 개인 정보를 다루기 때문에 더욱 중요해집니다. 서버에 SSL 인증서를 설치하면 전송되는 데이터를 암호화하여 사용자와 서버 간의 연결을 보호합니다. HTTPS 웹사이트는 또한 SEO 순위를 향상시킬 수 있으므로 완전히 투자할 가치가 있습니다.
마지막 생각들
오래된 속담처럼 – 최고를 기대하되 최악을 대비하십시오. 기본적으로 Drupal은 매우 안전한 콘텐츠 관리 프레임워크이지만 숙면을 취하려면 여전히 보안 전략을 구현하고 Drupal 보안 모범 사례를 따라야 합니다. Drupal 9는 보다 강력하고 안전한 웹 사이트를 위해 완전히 새로운 보안 기능을 제공합니다. 그럼에도 불구하고 Drupal 보안 업데이트로 웹 사이트를 최신 상태로 유지하는 것은 필수 불가결합니다. 깨끗하고 안전한 코드를 작성하는 것은 웹 사이트 보안에서 중요한 역할을 합니다. 효과적인 보안 전략 및 구현 서비스를 제공할 수 있는 전문 Drupal 개발 에이전시를 선택하십시오.
이 기사가 유용했습니까? 다음은 복사, 포함 또는 공유할 수 있는 이 기사의 매우 작은 URL입니다.
bit.ly/3UPJbap
URL을 클립보드에 복사하려면 클릭하세요.