원격 코드 실행: WordPress 사용자를 위한 가이드

게시 됨: 2021-04-28

웹사이트의 보안에 대해 진지하게 생각하고 있다면 원격 코드 실행 취약점의 위험성과 이를 방지할 수 있는 방법에 대해 알아볼 때입니다.

원격 코드 실행(RCE)이라는 용어는 여러 가지 다양한 해킹 기술과 사이버 공격을 의미하지만 모두 한 가지 중요한 공통점이 있습니다. 코드 삽입이라고도 하는 RCE는 해커가 WordPress를 콘텐츠 관리 시스템으로 실행하는 사이트를 포함하여 모든 종류의 웹사이트를 손상시키는 점점 더 일반적인 방법입니다.

이 가이드에서는 원격 코드 실행 공격이 어떻게 보이는지, 공격을 피하기 위해 취해야 하는 정확한 단계에 대해 자세히 설명합니다. 한 번 보자.

이 가이드에서

    원격 코드 실행(RCE) 공격이란 무엇입니까?

    RCE(원격 코드 실행)는 해커가 다른 사람이 소유한 컴퓨터나 데이터베이스에 액세스하고 변경할 수 있는 일종의 취약점입니다. RCE 공격 시 해커는 악성코드(임의 악성 소프트웨어)를 사용하여 서버나 컴퓨터를 추월합니다.

    원격 코드 실행 공격은 하드웨어 소유자의 권한 없이 수행되며 데이터가 어디에 저장되어 있는지는 중요하지 않습니다.

    RCE 공격 설명

    흰개미 감염과 같은 원격 코드 실행 공격을 생각하는 것이 도움이 될 수 있습니다.

    • 흰개미가 집 아래를 파고 있습니다.
    • 집주인은 그것을 알지 못하며 그들이 의도하는 피해에 대해 알았다면 흰개미를 초대하지 않았을 것입니다.
    • 흰개미는 집이 더 이상 서지 않을 때까지 집의 기초를 먹습니다.

    은유가 RCE 공격이 작동하는 방식과 정확히 같지는 않지만 RCE 공격은 실제로 더 나쁩니다 . 집(또는 집)에 있어야 하는 흰개미와 달리 해커는 어디에서나 웹사이트에 접근할 수 있습니다.

    사실, RCE 공격은 해커가 취약한 서버에서 모든 유형의 악성 코드를 실행할 수 있기 때문에 매우 위험합니다. 숙련된 RCE 해커가 액세스 권한을 얻은 경우 WordPress 사이트에 할 수 있는 피해에는 제한이 없습니다.

    원격 코드 실행 예

    2018년 Microsoft는 소프트웨어 프로그램인 Excel에서 발견된 원격 코드 실행 취약점을 공개했습니다. 공격자는 취약점을 악용하여 현재 사용자의 컨텍스트에서 임의 코드를 실행할 수 있습니다.

    현재 사용자가 관리자 권한으로 로그온한 경우 공격자가 영향을 받는 시스템을 제어할 수 있습니다. 그런 다음 공격자는 프로그램을 설치할 수 있습니다. 데이터 보기, 변경 또는 삭제 또는 전체 사용자 권한으로 새 계정을 만듭니다. 시스템에 대해 더 적은 사용자 권한을 갖도록 계정이 구성된 사용자는 관리 사용자 권한으로 작업하는 사용자보다 영향을 덜 받을 수 있습니다.

    원격 코드 실행

    다양한 유형의 원격 코드 실행은 무엇입니까?

    RCE 해킹을 더 잘 이해하려면 다양한 유형의 원격 코드 실행을 알고 있어야 합니다.

    SQL 주입

    WordPress 웹 사이트는 MySQL 데이터베이스를 사용하여 작동합니다. SQL 인젝션은 공격자가 WordPress 데이터베이스와 모든 웹사이트 데이터에 액세스할 때 발생합니다.

    SQL 주입을 통해 공격자는 새로운 관리자 수준 사용자 계정을 생성하여 WordPress 웹사이트에 로그인하고 전체 액세스 권한을 얻을 수 있습니다. SQL 인젝션은 악성 또는 스팸 웹사이트에 대한 링크를 포함하여 데이터베이스에 새로운 데이터를 삽입하는 데에도 사용할 수 있습니다.

    많은 RCE 취약점은 WordPress SQL 문이 구성되는 방식을 공격합니다. 예를 들어, 애플리케이션이 데이터베이스 사용자 이름을 읽어야 하는 경우 개발자는 사용자 이름 검색에 아래와 같은 코드를 사용하는 실수를 범할 수 있습니다.

     SELECT * FROM 사용자 WHERE 이름 = '사용자 이름'

    그러나 RCE와 관련하여 이와 같은 쿼리의 문제는 무엇입니까? WordPress 사이트 방문자는 나쁜 의도를 가진 해커라도 사용자 이름을 입력할 수 있습니다. 예를 들어 해커는 '1”1'= –, OR '를 입력하면 다음과 같은 SQL 문이 생성됩니다.

     SELECT * FROM 사용자 WHERE 이름 = '1'='1' --' 또는 ''

    응용 프로그램이 사이트 사용자 이름에 대한 전체 데이터베이스 검색을 진행하고 빈 이름이 있는 각 필드를 선택한다고 가정하고 1이 1일 때 후자는 항상 참입니다. 결국 해커에게 SQL 데이터베이스 내의 모든 사용자 이름이 제공됩니다.

    그러나 이와 같은 데이터 누출이 SQL 주입의 유일한 위험은 아닙니다. 공격자는 또한 중요한 WordPress 사이트 데이터를 덮어쓰거나 삭제할 수 있는 수많은 명령을 SQL 데이터베이스에 보낼 수 있습니다.

    사이트 간 스크립팅

    사이트 간 스크립팅은 또 다른 RCE 취약점입니다. 서버가 아닌 사이트 방문자에게 직접적인 영향을 미칩니다. XSS(교차 사이트 스크립팅)는 모든 WordPress 사이트에서 사이트 간 취약점을 악용하여 실행되는 맬웨어 공격 유형입니다. 실제로 XSS 취약점이 있는 WordPress 플러그인이 너무 많기 때문에 WordPress 사이트가 해킹되는 가장 일반적인 방법입니다.

    각 웹 페이지 내에서 코드와 콘텐츠는 동일한 방식으로 렌더링됩니다. 그러나 웹 브라우저는 항상 스크립트 태그로 래핑되기 때문에 콘텐츠와 코드를 구분할 수 있습니다. 이것이 의미하는 바는 적절한 필터가 없으면 공격자가 텍스트를 입력할 수 있는 웹 페이지의 모든 위치에 악성 코드를 넣을 수 있다는 것입니다. 적절한 필터가 없으면 공격자는 텍스트를 입력할 수 있는 웹 페이지의 모든 위치에 악성 코드를 삽입할 수 있습니다. 보호받고 있습니까?

    여기에는 검색 창(종종 WordPress 사이트의 모든 페이지에 있음), 댓글 섹션 또는 표시 이름과 같은 취약한 필드가 포함됩니다.

    이 공격이 실행되면 웹사이트를 실행하는 브라우저가 악성 코드를 실행합니다.

    사이트 간 스크립팅이 공격자의 브라우저에서만 실행된다면 보안 문제만큼 크지 않을 것입니다. 그러나 블로그 게시물의 댓글 섹션과 같이 악성 코드가 대중에게 공개되면 콘텐츠를 보는 모든 방문자에게도 영향을 미칩니다.

    모든 코드를 원격으로 실행할 수 있는 이 위험한 기능을 통해 공격은 쉽게 암호를 훔치고 합법적인 사용자인 것처럼 가장할 수 있습니다.

    그들은 또한 잠재적으로 신용 카드 세부 정보 또는 PayPal 계정 정보와 같은 사용자의 개인 정보를 볼 수 있습니다.

    경고: 해커 침입이 사용자에게 전달될 수 있습니다. 귀하의 보호뿐만 아니라 그들의 보호를 위한 올바른 보안.

    디렉토리 순회

    이 공격은 애플리케이션이나 WordPress 사이트 방문자를 대상으로 하지 않습니다. 대신, 주요 타겟은 실제 웹사이트입니다.

    RCE 취약점은 사이트 파일이 웹사이트 서버의 파일 시스템에 저장되는 방식을 악용합니다.

    일반적으로 데이터는 /home/user/public_html과 같은 표준 디렉토리에 저장됩니다. 디렉토리 내의 스크립트는 /home/user/public_html/wp-admin/index.php를 직접 참조하는 wp-admin/index.php와 같은 상대 경로를 사용하여 파일에 액세스합니다.

    스크립트가 현재 디렉토리 외부에 있는 파일에 액세스하도록 구성된 경우 "../"를 포함하기만 하면 됩니다. 이것은 현재 디렉토리보다 한 단계 위에 있는 디렉토리를 나타냅니다.

    예를 들어 /home/user/public_html/../ 디렉토리 패턴은 /home/user/로 지정됩니다.

    스크립트가 사용자 지정 파일 이름에서 읽거나 업로드할 수 있는 경우 공격자는 ../../../../../../../와 같은 이름을 사용하여 디렉터리를 탐색하도록 응용 프로그램을 지시합니다. ../../etc/passwd.

    입력 필터링과 같은 중요한 보안 기능을 구현하지 않은 경우 해커가 서버의 핵심 파일에 직접 액세스할 수 있으며 이는 사이트 보안에 좋지 않은 소식입니다.

    RCE(원격 코드 실행) 공격을 방지하려면 어떻게 해야 합니까?

    이 안내서에 제공된 자세한 정보는 귀하를 위협하거나 두려움을 유발하기 위한 것이 아닙니다. 오히려 가장 강력한 WordPress 사이트 보안 조치를 항상 실행하는 것의 중요성이 증가하고 있음을 강조하기 위한 것입니다.

    또한 플러그인이 새로운 RCE 취약점에 노출되지 않도록 플러그인을 항상 업데이트 상태로 유지하라는 알림 역할도 합니다.

    RCE 공격의 대다수는 이러한 공격을 인지하고 발생하기 전에 대비하는 것만으로도 완화되거나 완전히 중지될 수 있습니다. WordPress 사이트 소유자는 사이트 서버가 사용자가 제공한 정보를 처리하는 방법을 예상하고 이해하는 것이 중요합니다.

    원격 코드 실행(RCE) 공격을 방지하는 방법: 5단계

    귀하의 사이트가 RCE 취약점으로부터 안전한지 확인하는 가장 좋은 방법은 다면적 방어 시스템을 사용하는 것입니다. 다시 말해, 한 방어선이 실패하더라도 잠재적인 공격으로부터 계속 보호받을 수 있습니다.

    그렇다면 이러한 악의적이고 종종 위험한 공격을 방지하기 위해 취해야 하는 가장 중요한 몇 가지 단계를 살펴보겠습니다. 몇 가지 요인으로 인해 WordPress 사이트가 성공적인 공격에 더 취약해질 수 있습니다.

    1. iThemes Security Pro 플러그인 다운로드 및 설치

    사이트 보안 및 보호를 시작하려면 iThemes Security Pro 플러그인을 다운로드하여 설치하세요.

    지금 iThemes Security Pro 받기

    2. 버전 관리를 활성화하여 워드프레스 코어, 플러그인 및 테마를 최신 상태로 유지

    간단히 말해서: 웹사이트에서 오래된 버전의 WordPress, 플러그인 및 테마를 실행하는 경우 공격을 받을 위험이 있습니다. 버전 업데이트에는 원격 코드 실행(RCE) 취약점을 포함하여 코드의 보안 문제에 대한 패치가 포함되는 경우가 많으므로 항상 WordPress 웹사이트에 설치된 모든 소프트웨어의 최신 버전을 실행하는 것이 중요합니다.

    업데이트가 제공되는 즉시 WordPress 대시보드에 업데이트가 표시됩니다. 백업을 실행한 다음 WordPress 사이트에 로그인할 때마다 사용 가능한 모든 업데이트를 실행하는 연습을 하십시오. 업데이트를 실행하는 작업이 불편하거나 지루해 보일 수 있지만 중요한 WordPress 보안 모범 사례입니다.

    워드프레스 플러그인 업데이트

    공개된 모든 WordPress 취약점을 추적하고 WordPress 취약점 라운드업에서 추적하고 공유하고 해당 목록을 웹사이트에 설치한 플러그인 및 테마 버전과 비교하는 것은 어렵습니다. 그러나 이것이 WordPress 해커가 알려진 취약점이 있는 플러그인과 테마를 대상으로 삼는 것을 막지는 못합니다. 사이트에 알려진 취약점이 있는 소프트웨어를 설치하면 해커가 웹사이트를 인수하는 데 필요한 청사진을 얻을 수 있습니다.

    iThemes Security Pro 플러그인의 버전 관리 기능을 사용하면 WordPress, 플러그인 및 테마를 자동으로 업데이트할 수 있습니다. 그 외에도 버전 관리에는 오래된 소프트웨어를 실행할 때 웹사이트를 강화하고 오래된 웹사이트를 검색하는 옵션도 있습니다.

    버전 관리를 시작하려면 보안 설정의 기본 페이지에서 모듈을 활성화하십시오.

    이제 설정 구성 버튼을 클릭하여 사이트를 보호하도록 설계된 설정을 자세히 살펴보십시오.

    • WordPress 업데이트 – 최신 WordPress 릴리스를 자동으로 설치합니다.
    • 플러그인 업데이트 – 최신 플러그인 업데이트를 자동으로 설치합니다. 이 설정을 활성화하면 충돌을 방지하기 위해 WordPress 자동 업데이트 플러그인 기능이 비활성화됩니다.
    • 테마 업데이트 – 최신 테마 업데이트를 자동으로 설치합니다. 이 설정을 활성화하면 충돌을 방지하기 위해 WordPress 자동 업데이트 테마 기능이 비활성화됩니다.
    • 오래된 소프트웨어 실행 시 사이트 강화 – 사용 가능한 업데이트가 한 달 동안 설치되지 않은 경우 사이트에 추가 보호 기능을 자동으로 추가합니다.
    • 오래된 WordPress 사이트 검색 – 공격자가 서버를 손상시킬 수 있는 오래된 WordPress 사이트에 대한 호스팅 계정의 일일 검색을 실행합니다. 취약점이 있는 오래된 WordPress 사이트 하나는 공격자가 동일한 호스팅 계정의 다른 모든 사이트를 손상시킬 수 있습니다.
    • 취약점 수정 시 자동 업데이트 – 이 옵션은 iThemes Security Pro 사이트 스캔과 함께 작동하여 웹사이트에서 알려진 WordPress, 플러그인 및 테마 취약점을 확인하고 패치가 있을 때 적용합니다.

    플러그인 및 테마 업데이트

    이제 플러그인 및 테마 업데이트 구성에 대해 자세히 살펴보겠습니다. 시작하기 전에 플러그인 및 테마 업데이트 설정을 활성화하면 충돌을 방지하기 위해 WordPress 자동 업데이트 기능이 비활성화됩니다.

    플러그인 및 테마 업데이트 설정에는 세 가지 선택 사항이 있습니다.

    1. 공백/없음 – 설정을 공백으로 두면 WordPress에서 플러그인 및 테마 업데이트를 관리할 수 있습니다.
    2. 사용자 지정 – 사용자 지정 옵션을 사용하면 업데이트를 원하는 대로 정확하게 사용자 지정할 수 있습니다. 우리는 이것을 조금 더 다룰 것입니다.
    3. 모두 – 모두는 업데이트가 제공되는 즉시 모든 플러그인 또는 테마를 업데이트합니다.

    이제 사용자 지정 옵션을 자세히 살펴보겠습니다.

    사용자 지정 옵션을 선택하면 플러그인 및 테마 업데이트에 대해 세 가지 선택 사항이 제공됩니다. 보시다시피 사용자 지정 자동 업데이트 설정은 WordPress의 자동 업데이트 켜기/끄기 옵션보다 훨씬 더 많은 유연성을 제공합니다.

    3. 취약한 플러그인 및 테마에 대한 사이트 스캔

    iThemes Security Pro Site Scanner는 모든 소프트웨어 해킹의 가장 큰 원인인 오래된 플러그인과 알려진 취약점이 있는 테마로부터 WordPress 웹사이트를 보호하고 보호하는 또 다른 방법입니다. Site Scanner는 사이트에서 알려진 취약점을 확인하고 사용 가능한 경우 패치를 자동으로 적용합니다.

    3가지 취약점 체크

    1. 워드프레스 취약점
    2. 플러그인 취약점
    3. 테마 취약점

    새로 설치할 때 사이트 스캔을 활성화하려면 iThemes Security Pro 설정으로 이동하여 사이트 스캔 설정 모듈에서 활성화 버튼을 클릭하십시오.

    수동 사이트 스캔을 실행하려면 보안 설정의 오른쪽 사이드 바에 있는 사이트 스캔 위젯 에서 지금 스캔 버튼을 클릭하십시오.

    사이트 스캔 결과가 위젯에 표시됩니다.

    사이트 스캔이 취약점을 감지하면 취약점 링크를 클릭하여 세부 정보 페이지를 봅니다.

    사이트 스캔 취약점 페이지에서 해당 취약점에 대한 수정 사항이 있는지 확인할 수 있습니다. 사용 가능한 패치가 있는 경우 플러그인 업데이트 버튼을 클릭하여 웹 사이트에 수정 사항을 적용할 수 있습니다.

    패치를 사용할 수 있는 시점과 수정 사항을 반영하기 위해 iThemes 보안 취약성 데이터베이스가 업데이트되는 사이에는 지연이 있을 수 있습니다. 이 경우 취약점과 관련된 경고를 더 이상 받지 않도록 알림을 음소거할 수 있습니다.

    중요: 현재 버전에 보안 수정 사항이 포함되어 있거나 취약점이 사이트에 영향을 미치지 않음을 확인할 때까지 취약점 알림을 음소거하면 안 됩니다.

    4. 세션 하이재킹 방지

    원격 코드 실행 취약점으로부터 자신을 보호하려면 WordPress 웹사이트의 관리자와 편집자를 위한 세션 하이재킹 보호 기능이 있어야 합니다.

    iThemes Security Pro 신뢰할 수 있는 장치 기능은 세션 하이재킹을 과거의 일로 만듭니다. 세션 중에 사용자의 장치가 변경되면 iThemes Security는 사용자의 이메일 주소 변경 또는 악성 플러그인 업로드와 같은 사용자 계정의 무단 활동을 방지하기 위해 자동으로 사용자를 로그아웃합니다.

    iThemes Security Pro의 신뢰할 수 있는 장치 기능은 귀하와 다른 사용자가 WordPress 사이트에 로그인하는 데 사용하는 장치를 식별하는 데 사용됩니다. 귀하의 장치가 식별되면 세션 하이재커 및 기타 악의적인 행위자가 귀하의 웹사이트에 피해를 입히는 것을 막을 수 있습니다.

    사용자가 인식할 수 없는 장치에 로그인한 경우 신뢰할 수 있는 장치는 관리자 수준 기능을 제한할 수 있습니다. 즉, 공격자가 WordPress 사이트의 백엔드에 침입할 수 있는 경우 웹사이트를 악의적으로 변경할 수 없습니다.

    신뢰할 수 있는 장치 사용을 시작하려면 보안 설정의 기본 페이지에서 활성화한 다음 설정 구성 버튼을 클릭합니다.

    신뢰할 수 있는 장치 설정에서 기능을 사용할 사용자를 결정하고 기능 제한세션 하이재킹 방지 기능을 활성화합니다.

    새로운 신뢰할 수 있는 장치 설정을 활성화한 후 사용자는 인식할 수 없는 장치 보류에 대한 알림을 WordPress 관리 표시줄에 받게 됩니다. 현재 장치가 신뢰할 수 있는 장치 목록에 추가되지 않은 경우 이 장치 확인 링크를 클릭하여 승인 이메일을 보냅니다.

    인식할 수 없는 로그인 이메일에서 장치 확인 버튼을 클릭하여 현재 장치를 신뢰할 수 있는 장치 목록에 추가합니다.

    신뢰할 수 있는 장치가 활성화되면 사용자는 WordPress 사용자 프로필 페이지에서 장치를 관리할 수 있습니다. 이 화면에서 신뢰할 수 있는 장치 목록의 장치를 승인하거나 거부할 수 있습니다.

    또한 일부 타사 API에 등록하여 신뢰할 수 있는 장치 식별의 정확성을 높이고 정적 이미지 맵을 사용하여 인식할 수 없는 로그인의 대략적인 위치를 표시할 수 있습니다. 사용 가능한 통합을 보려면 신뢰할 수 있는 장치 설정을 확인하십시오.

    5. 모든 관리자에 대해 2단계 인증 켜기

    이중 인증은 두 가지 별도의 인증 방법을 요구하여 개인의 신원을 확인하는 프로세스입니다. Google은 블로그에서 이중 인증을 사용하면 자동화된 봇 공격을 100% 막을 수 있다고 공유했습니다. 나쁘지 않은 확률!

    iThemes 보안 플러그인을 사용하면 WordPress 사이트에 대한 이중 인증을 활성화할 수 있으므로 사용자가 로그인하려면 보조 코드를 입력해야 합니다.

    iThemes Security Pro에서 제공하는 3가지 2단계 인증 방법은 다음과 같습니다.

    1. 모바일 앱 – 모바일 앱 방식은 iThemes Security Pro에서 제공하는 이중 인증 중 가장 안전한 방식입니다. 이 방법을 사용하려면 Authy 또는 Google Authenticator와 같은 무료 2단계 모바일 앱을 사용해야 합니다.
    2. 이메일 – 이중 요소의 이메일 방식은 시간에 민감한 코드를 사용자의 이메일 주소로 보냅니다.
    3. 백업 코드 – 기본 2단계 방법이 손실된 경우 로그인하는 데 사용할 수 있는 일회성 사용 코드 세트입니다.

    웹사이트에서 이중 인증을 사용하려면 iThemes Security Pro 설정의 메인 페이지에서 이 기능을 활성화하세요.

    WordPress 사이트에 대한 이중 인증 설정을 계속하려면 여기의 단계를 따르십시오. 권장 사항을 따르고 권한 있는 사용자에 대한 강제 요구 사항을 활성화한 경우 다음으로 보게 될 것은 2단계 토큰을 입력하는 위치입니다.

    이중 인증

    RCE 예방: 추가 팁

    1. 잘 구축된 소프트웨어 응용 프로그램 및 플러그인만 사용

    "이스케이프" 프로세스는 RCE 취약성에 대한 첫 번째 방어선으로 잘 작동합니다. 그러나 스크립트 태그 외에도 서버와 브라우저에서 코드를 해석할 수 있는 몇 가지 추가 방법이 있습니다.

    목표가 스스로 추적하는 것이라면 매우 복잡하고 많은 시간과 자원이 필요합니다.

    다행히 응용 프로그램 개발자는 RCE 취약점 문제에 대해 많은 생각을 했습니다.

    플랫폼에 바로 구축된 솔루션과 플랫폼에서 실행하는 테마 및 플러그인이 있기 때문에 WordPress와 같이 신뢰할 수 있고 평판이 좋은 CMS(콘텐츠 관리 시스템)를 사용하는 것이 가장 좋습니다.

    새 버전이 출시되면 모든 소프트웨어 응용 프로그램과 플러그인을 항상 최신 상태로 유지하는 것이 중요합니다. 취약점이 발견되면 소프트웨어 개발자는 발견한 취약점보다 앞서 나가기 위해 24시간 노력할 것입니다.

    이것은 플러그인 작성자와 테마 작성자 모두에게 해당됩니다.

    WordPress 대신 사용자 지정 CMS를 사용하는 경우 매개 변수화된 쿼리를 활용하여 잠재적인 SQL 주입으로부터 사이트를 안전하게 보호할 수 있습니다. 이 쿼리 유형은 실행할 정확한 쿼리 유형을 사전에 애플리케이션에 알려줍니다. 그런 다음 해커가 삽입을 시도할 수 있는 추가된 명령을 인식하고 제거합니다. 삽입에 성공하는 대신 원래 쿼리를 보내고 추가된 문자열을 제외합니다.

    위의 예에서 매개변수화된 쿼리는 다음과 같습니다.

     $query="SELECT * FROM users WHERE name = ?"
    $results=$query.execute(" ' OR '1'='1' --")

    이 시나리오에서 데이터베이스는 ' OR '1'='1'을 올바른 방식으로 처리하고 있습니다. 이 쿼리를 텍스트로만 구성된 문자열로 보고 제공된 이름과 연결된 사용자가 없음을 이해합니다.

    2. 사용자 입력 확인

    RCE 취약점을 방지하기 시작하는 가장 좋은 위치는 사이트 사용자가 애플리케이션과 상호 작용하는 곳입니다.

    가장 간단한 방법은 원하지 않는 문자를 제거하고 필터링하는 것입니다.

    또 다른 옵션은 콘텐츠를 이스케이프 처리하여 보존하는 것입니다.

    이스케이프가 무엇을 의미하는지 잘 모르는 경우, 이는 코드로 보이는 것을 일반 텍스트로 보도록 컴퓨터에 지시하는 프로세스입니다. 예를 들어 스크립트 태그를 "<script>"로 교체합니다.

    이렇게 하면 웹 브라우저는 지정된 위치에 "<보다 작고 ">보다 큼 기호를 표시하는 것으로 이해합니다. 그러나 전체 텍스트 문자열을 코드로 취급하지 않습니다.

    사용자에게 결과는 보이지 않습니다.

    3. 최소 권한 원칙

    제로 데이 RCE 취약점이 발생할 수 있는 드문 경우가 있을 수 있습니다. 이는 귀하나 CMS 및 응용 프로그램 개발자 모두 특정 새로운 유형의 공격을 인식하지 못한다는 것을 의미합니다.

    이와 같은 경우에도 응용 프로그램이 수행할 수 있는 작업에 대한 몇 가지 간단한 규칙을 설정하여 공격자가 할 수 있는 피해를 제한할 수 있습니다.

    예를 들어 데이터베이스에서 읽는 응용 프로그램을 설계한다고 가정해 보겠습니다. 새 응용 프로그램에 데이터베이스 레코드를 삭제하거나 쓸 수 있는 권한이나 권한을 부여할 필요는 없습니다.

    이 경우 공격자가 스크립트를 손상시키려 해도 오류가 발생하고 시도에 실패합니다.

    최소 권한 원칙은 PHP 기능과 관련하여 유용합니다.

    PHP 함수는 모든 종류의 온라인 공격자의 표준 대상입니다. ini_set()(스크립트 내에서 PHP 설정을 업데이트할 수 있음) 또는 exec()(텍스트로 전달된 코드를 실행)와 같이 앱에 필요하지 않을 수 있는 강력한 기능은 비활성화해야 합니다.

    이렇게 하면 해커와 공격자가 악의적인 목적으로 사용하는 것을 방지할 수 있습니다.

    이 특정 아이디어는 웹사이트의 공개 영역과 서버 측 코드를 보호하는 데 적용됩니다.

    4. 콘텐츠 보안 정책

    Content-Security-Policy는 대부분의 최신 웹 브라우저에서 HTTP에서 사용하는 헤더입니다. 브라우저가 웹 사이트에 로드해야 하는 콘텐츠 유형을 결정합니다. 애플리케이션이나 웹 서버에서 헤더를 보낼 때 실행할 수 있는 스크립트 유형과 위치를 지정할 수 있습니다.

    이 전략을 사용하면 해커가 악성 스크립트를 삽입하는 것을 방지할 수 있습니다.

    5. 쿠키 읽기에서 스크립트 중지

    또 다른 옵션은 스크립트가 쿠키를 읽지 못하도록 하는 것입니다. 이렇게 하면 요청이 다른 사이트로 전송되지 않습니다.

    SameSite=Strict 또는 HttpOnly 속성으로 설정하면 됩니다. 해커의 코드가 WordPress 사이트에서 실행되는 시나리오에서도 사이트 사용자의 인증 쿠키에 대한 액세스 권한을 얻지 못하게 됩니다.

    이렇게 하면 WordPress 원격 코드 실행 공격 중에 잠재적인 손상을 크게 줄일 수 있습니다.

    마무리: WordPress 원격 코드 실행

    WordPress 사이트를 찾는 잠재적인 보안 위협을 모두 발견했을 때 약간 압도당했다고 생각하지 마십시오. 위협은 많지만 해결책은 간단할 수 있습니다.

    이 가이드가 WordPress 사이트에 대한 RCE 공격의 위험을 이해하는 데 도움이 되었기를 바랍니다. 위의 5단계와 함께 몇 가지 WordPress 보안 모범 사례를 구현하면 더 나은 방어선을 갖게 됩니다.

    받은 편지함으로 전달되는 주간 WordPress 취약점 보고서 받기
    보고서 등록

    원격 코드 실행