디렉토리 탐색이란 무엇입니까?
게시 됨: 2023-05-09공격자는 웹 서버를 속여 제한된 정보를 노출함으로써 시스템을 손상시키고 심각한 피해를 입힐 수 있는 강력한 도구를 얻을 수 있습니다. 디렉터리 순회는 이를 달성하는 데 사용되는 일반적인 방법입니다. 특정 웹 사이트용으로 예약된 파일 시스템 영역 외부를 탐색하려는 시도는 데이터 도난 및 임의 코드 실행으로 이어질 수 있습니다.
일반적으로 웹 서버는 웹 사이트의 파일을 문서 루트 폴더라고도 하는 루트 디렉터리에 가두어 파일 시스템에 대한 액세스를 제한합니다. 그러나 사이버 범죄자는 이러한 보안 제어를 우회하고 안전하지 않은 파일 권한을 악용할 수 있습니다. 이렇게 하면 피해자 서버의 다른 곳에 저장된 중요한 정보에 무단으로 액세스할 수 있습니다.
플러그인 및 테마에서 정기적으로 식별되는 파일 포함 취약점으로 인해 WordPress 웹사이트는 디렉터리 통과와 관련된 공격의 최우선 대상이 됩니다. 안전한 코딩 방법을 구현하는 것은 플러그인 및 테마 개발자의 작업이지만 좋은 보안 방법을 구현하는 것은 웹 사이트 소유자의 책임입니다.
디렉토리 순회에 대한 이 가이드에서는 해커가 제한된 데이터에 액세스하기 위해 웹 사이트의 루트 디렉토리를 탈출하기 위해 사용하는 일반적인 방법을 살펴봅니다. 경로 순회를 통해 공격자가 LFI(로컬 파일 포함) 취약성을 성공적으로 악용하여 피해를 입히는 방법과 강력한 보안 관행을 구현하여 이러한 유형의 공격으로부터 WordPress 웹 사이트를 보호하는 방법을 배우게 됩니다.
먼저 보안 서버 작업의 개념을 자세히 살펴보겠습니다. 보다 구체적으로 서버 환경에서 다양한 유형의 데이터가 어떻게 분리되어 있으며 웹 사이트 데이터가 이 생태계에서 어떤 위치에 있는지.
데이터 파티셔닝이 서버 운영을 보호하는 방법
웹사이트와 웹 애플리케이션은 데이터를 저장하기 위해 서버에 의존합니다. 그런 다음 이 데이터는 요청된 웹 페이지로 인터넷을 통해 방문자의 브라우저에 전달되기 전에 웹 및 데이터베이스 서버와 기타 특정 애플리케이션에서 처리됩니다. 기본 하드웨어 및 소프트웨어 구성 요소는 함께 작동하여 이 기능을 강화하는 강력한 인프라를 만듭니다.
그러나 이 클라이언트-서버 아키텍처에는 서버 보안에 대한 신중한 접근 방식도 필요합니다. 중요한 서비스 및 서버 운영 체제의 기타 구성 요소는 사용자 파일 및 웹 사이트 데이터와 완전히 분리되어야 합니다. 파일 시스템에서 이러한 데이터 분리는 일반적으로 데이터 파티셔닝으로 알려져 있습니다.
데이터 파티셔닝은 서로 다른 유형의 데이터를 별도의 파티션으로 분리하여 서버 운영의 가장 취약한 측면을 보호하는 데 도움이 됩니다. 파일 시스템 파티셔닝 및 기타 보안 메커니즘을 구현하면 민감한 정보에 대한 무단 액세스 및 시스템 수준 손상으로부터 서버를 보호할 수 있습니다. 또한 데이터 파티셔닝은 주로 읽기 전용 파일에서 자주 수정되는 데이터를 분리하고 시스템 및 사용자 데이터를 격리하여 효율적인 리소스 관리를 가능하게 하고 서버 성능을 향상시킵니다.
웹 서버 액세스 제어: 문서 루트로 웹 사이트 데이터 제한
시스템 데이터에서 웹 사이트 데이터를 분리하기 위해 웹 서버는 문서 루트 개념을 활용합니다. 여기에는 웹사이트 파일을 웹사이트의 루트 디렉터리로 알려진 파일 시스템의 지정된 디렉터리로 제한하는 것이 포함됩니다. 문서 루트를 정의함으로써 웹 서버는 해당 웹 사이트의 콘텐츠에 대한 들어오는 요청을 올바르게 지시하고 응답할 수 있습니다. 이 루트 디렉토리는 해당 웹 사이트에 대한 웹 요청을 처리하기 위한 시작점입니다.
이 제한은 지정된 루트 디렉토리 외부에 저장된 운영 체제 정보 및 주요 구성 파일과 같은 중요한 서버 데이터에 대한 무단 액세스를 방지하는 데 도움이 됩니다. 즉, 특정 웹 사이트와 관련된 모든 스크립트 또는 기타 콘텐츠 및 기능은 루트 디렉터리 및 해당 하위 디렉터리 내의 데이터에만 액세스하고 수정할 수 있으므로 보안 위반 시 서버의 나머지 부분을 보호합니다.
문서 루트 외에도 웹 서버는 다른 액세스 제어 메커니즘을 사용하여 웹 사이트 데이터에 대한 액세스를 추가로 제한합니다. 가장 주목할만한 메커니즘 중 하나는 파일 권한입니다. 파일 권한은 최소 권한 원칙을 적용하는 데 도움이 됩니다. 즉, 시스템 사용자 또는 프로세스에는 의도한 기능을 수행하는 데 필요한 최소 수준의 액세스 권한만 부여됩니다.
이 접근 방식의 강력한 보안에도 불구하고 해커는 이를 우회하기 위해 여러 가지 악의적인 기술을 사용할 수 있습니다. 그러한 방법 중 하나는 디렉토리 순회입니다. 디렉터리 순회 공격은 웹사이트 코드의 약점과 보안 권한 구현을 악용하여 웹 서버를 속여 브라우저에서 액세스할 수 없는 제한된 정보를 공개하도록 합니다.
디렉토리 탐색이란 무엇입니까?
경로 순회라고도 하는 디렉터리 순회는 대상 웹 사이트 또는 웹 응용 프로그램의 문서 루트 외부에 있는 제한된 파일 및 디렉터리에 대한 액세스 권한을 부여하는 것을 목표로 하는 악의적인 기술입니다. 경로 순회를 통해 공격자는 브라우저를 통해 서버의 파일 시스템을 통해 루트 디렉터리 및 기타 제한된 폴더까지 탐색할 수 있습니다. 이는 정상적인 상황에서는 불가능해야 하는 동작 유형입니다.
디렉터리 순회는 경로 순회 시퀀스로 알려진 특수 문자를 사용하여 파일을 참조하는 변수를 조작하여 수행됩니다. 점-점-슬래시 '../'와 같은 시퀀스는 웹 서버에서 해석되어 파일 시스템 계층 구조에서 한 디렉토리 위로 이동하여 웹 사이트의 문서 루트에서 멀어지게 합니다.
웹사이트가 /home/user/public_html에 저장되어 있는 경우 '../../../etc'의 디렉터리 순회 시퀀스를 제공하면 공격자가 Linux에서 중요한 시스템 구성을 저장하는 /etc 디렉터리로 이동할 수 있습니다. 서버.
웹 서버 구성에서 디렉토리 목록이 비활성화된 경우 사이버 범죄자는 요청된 디렉토리의 내용을 볼 수 없습니다. 이렇게 하면 공격자가 브라우저에 표시하려는 정확한 파일을 지정해야 하므로 시스템의 보안을 부분적으로 강화하고 디렉터리 통과 공격으로 인한 잠재적 손상을 제한할 수 있습니다. 그러나 대부분의 경우 해커는 자신이 찾고 있는 정보를 정확히 알고 있으므로 디렉터리 목록을 비활성화해도 액세스가 차단되지 않습니다.
/etc/passwd 파일은 디렉터리 통과 공격의 일반적인 대상 중 하나입니다. Linux 서버에서 /etc/passwd 파일에는 서버에서 생성된 사용자 목록이 포함되어 있습니다. 이렇게 하면 해커가 사용자 자격 증명에 대한 무차별 대입 공격을 시작할 수 있는 좋은 출발점이 될 수 있습니다. /etc/passwd에는 644의 파일 권한이 있으므로 웹 서버를 실행하는 사용자를 포함하여 시스템의 모든 사용자가 읽을 수 있습니다. 이렇게 하면 웹 서버가 브라우저를 통해 파일의 내용을 렌더링할 수 있습니다.
디렉토리 순회는 어떻게 작동합니까?
악의적인 기술인 디렉터리 통과는 피해자 서버의 민감한 정보에 액세스하는 유일한 수단으로 거의 사용되지 않습니다. 첫째, 공격자는 대상 웹사이트의 취약점을 악용하여 요청된 정보를 브라우저에 표시할 수 있는 방법을 찾아야 합니다. 그런 다음 제한된 디렉토리에 도달하기 위해 피해자의 서버 파일 시스템을 탐색하는 데 디렉토리 통과가 사용됩니다.
파일 포함 취약점은 디렉터리 통과를 가능하게 합니다. 웹 사이트가 동적 파일 포함을 사용하여 제공된 파일 경로와 같은 사용자 입력을 적절하게 삭제하지 않는 경우 디렉터리 탐색 취약점이 발생합니다. LFI(로컬 파일 포함)와 디렉토리 탐색 취약점이 결합되어 해커가 대상 웹사이트의 문서 루트 외부 데이터에 액세스하여 중요한 서버 정보를 노출할 수 있습니다.
디렉터리 통과의 예
로컬 파일 포함 및 디렉터리 통과 취약점이 어떻게 악용될 수 있는지 더 잘 이해하기 위해 다음 예를 살펴보겠습니다. 이 예제는 파일 포함 결함을 통해 디렉토리 순회가 사용되는 방식을 단순화한 것입니다.
웹 개발자는 웹사이트가 사용자의 요청에 따라 동적으로 다른 페이지 또는 구성 요소를 로드할 수 있도록 하는 데 사용될 웹 페이지 content.php를 추가합니다. 예를 들어, 웹사이트 방문자가 "문의하기" 페이지를 보고자 하는 경우 요청이 브라우저 주소 표시줄에 "https://website.com/content.php?page=contact_us"로 표시될 수 있습니다.
content.php 페이지는 로컬 파일 포함 기술을 사용하여 "contact_us" 매개변수에 해당하는 파일을 참조합니다. 여기에는 요청된 "문의하기" 페이지에 대한 PHP 및 HTML 코드가 포함될 수 있습니다. 이 예제에서 content.php 웹 페이지는 사용자 입력에 따라 동적으로 콘텐츠를 생성하는 적절한 파일을 로드하는 컨트롤러 역할을 합니다.
그러나 사용자의 입력이 적절하게 검증되거나 삭제되지 않으면 공격자가 파일 포함 및 디렉터리 통과 취약성을 악용하여 임의의 파일을 포함할 수 있으며, 이 파일은 브라우저에 표시됩니다.
예를 들어 해커는 "../../../../../var/log/apache2/access.log"를 페이지 쿼리 매개변수의 값으로 전달할 수 있습니다. 파일 시스템에서 Apache 웹 서버의 기본 액세스 로그 주소. 이렇게 하면 공격자는 IP 주소, 사용자 에이전트 문자열, 웹 사이트 방문자가 요청한 URL과 같은 민감한 정보가 포함된 로그 파일의 내용을 볼 수 있습니다.
파일 권한이 디렉터리 순회를 촉진하거나 완화하는 방법
파일 권한은 서버 및 웹 사이트 보안을 보장하는 데 큰 역할을 합니다. 파일에 대한 액세스를 특정 시스템 사용자 및 그룹으로만 제한함으로써 권한은 디렉터리 순회를 용이하게 하거나 완화하는 데 도움이 될 수 있습니다.
디렉터리 통과를 사용하는 파일 포함 공격에서 공격자가 요청한 파일의 내용은 해당 파일 권한이 웹 서버 실행을 사용하는 시스템이 파일을 읽을 수 있도록 허용하는 경우에만 브라우저에 표시됩니다. /etc/password와 같은 일부 제한된 파일에는 644의 권한이 있어 모든 시스템 사용자가 읽을 수 있지만 다른 파일은 루트 사용자만 액세스할 수 있습니다.
Linux 서버의 모든 사용자에 대한 암호화된 암호를 포함하는 /etc/shadow 파일은 파일 권한이 640이므로 루트 이외의 사용자는 액세스할 수 없습니다. 이로 인해 해커가 디렉토리 순회를 통해 브라우저를 통해 파일에 액세스할 수 없습니다.
WordPress 사이트에서 디렉터리 통과 취약점을 감지하는 방법은 무엇입니까?
워드프레스 코어는 높은 수준의 보안을 유지하고 파일 포함 취약점 및 디렉토리 통과로부터 완전히 보호됩니다. 그러나 플랫폼이 제공하는 높은 사용자 지정 옵션은 이러한 취약점이 WordPress 사이트에 존재할 가능성을 높입니다. 가장 평판이 좋은 WordPress 플러그인 및 테마에도 정기적으로 발견되는 보안 결함이 있을 수 있습니다.
iThemes 주간 WordPress 취약성 보고서는 디렉터리 순회를 포함하여 WordPress 플러그인 및 테마에서 새로 공개된 취약성을 신속하게 식별하고 패치하는 데 도움이 됩니다. 취약성 보고서를 확인하여 WordPress 사이트에서 사용하는 플러그인과 활성 테마에서 최근에 보안 취약점이 발견되었는지 확인하고 패치가 릴리스되었는지 확인하십시오.
iThemes Security Pro는 귀하의 WordPress 웹사이트에서 취약점을 스캔하는 프로세스를 자동화하고 귀하를 대신하여 식별된 결함을 신속하게 패치할 수 있습니다. iThemes Security Pro는 하루에 두 번 고급 취약점 검색을 수행하고 취약점이 감지되면 이메일을 보내며 보안 수정 사항이 있으면 자동으로 업데이트를 설치합니다.
디렉터리 통과를 방어하는 방법은 무엇입니까?
플러그인 및 테마에서 발견된 취약점을 악용하는 것은 해커가 무단 액세스 권한을 얻고 민감한 데이터를 훔치고 백도어 셸을 포함한 맬웨어를 WordPress 웹사이트에 업로드하는 데 사용하는 가장 큰 공격 벡터 중 하나입니다. 안전한 코딩 관행을 따르는 것은 플러그인 및 테마 개발자의 책임 범위에 속하지만 WordPress 웹사이트 소유자는 로컬에서 보호 조치를 구현할 책임이 있습니다. WordPress 보안에 대한 다각적인 접근 방식만이 최신의 정교한 사이버 공격의 희생양이 될 위험을 줄이는 데 도움이 될 수 있습니다.
모든 소프트웨어 업데이트 유지
WordPress 코어, 활성 플러그인 및 선택한 테마를 사용 가능한 최신 버전으로 업데이트하는 것은 디렉터리 순회 및 기타 심각한 애플리케이션 수준 취약성을 제거하기 위한 첫 번째 단계입니다. WordPress 사이트를 지원하는 소프트웨어에서 새로운 보안 결함이 확인되었으므로 보안 패치가 제공되는 즉시 설치하는 것이 가장 중요합니다. 플러그인 또는 테마 개발자가 발견된 취약점을 해결하기 전에 영향을 받는 소프트웨어를 비활성화하여 공격 표면을 줄일 수 있습니다.
플러그인 및 테마 업데이트를 추적하는 것은 어려운 작업일 수 있지만 iThemes Security Pro를 사용하면 웹사이트 소유자는 프로세스를 단순화하고 웹사이트를 최신 상태로 유지하고 보안 취약성으로부터 보호하는 데 도움이 되는 포괄적인 솔루션에 액세스할 수 있습니다. 버전 관리 기능은 자동 소프트웨어 업데이트를 제공하여 WordPress 사이트를 보호합니다.
보안 파일 권한 구성
보안 WordPress 파일 권한은 민감한 웹 사이트 및 서버 정보에 대한 액세스를 목표로 하는 공격에 대한 추가 방어 계층을 제공합니다. 그리고 중요한 시스템 구성 파일 및 기타 제한된 서버 데이터의 파일 권한을 변경할 필요가 거의 없지만 웹 사이트 파일에 대한 보안 권한을 설정하는 책임은 종종 웹 사이트 소유자에게 있습니다.
wp-config.php 파일과 같은 중요한 WordPress 정보를 유지하면 디렉토리 통과 취약점을 악용하는 파일 포함 공격의 심볼릭 링크를 통해 교차 계정 손상을 효과적으로 방지할 수 있습니다. iThemes Security Pro의 파일 권한 검사는 웹 사이트 소유자가 이 중요한 보안 메커니즘이 WordPress 사이트에서 올바르게 구현되도록 도와줍니다.
웹 애플리케이션 방화벽 구현
방화벽은 웹 서버에 전달되기 전에 알려진 패턴과 일치하거나 비정상적인 패턴을 나타내는 악의적인 웹 요청을 필터링하여 작동합니다. Dos(서비스 거부) 및 DDoS(분산 서비스 거부)와 같은 다양한 봇 기반 사이버 공격과 XSS(교차 사이트 스크립팅) 및 SQL과 같은 데이터 주입 공격에 대한 강력한 1차 방어선으로 인젝션(SQLi).
웹 애플리케이션 방화벽(WAF) 또는 호스트 기반 및 클라우드 기반 침입 방지 솔루션의 조합을 구현하면 성공적인 침입 시도 가능성을 크게 줄일 수 있습니다. 파일 포함 및 디렉터리 통과 취약성에 대한 두 번째 방어 계층 역할을 하는 웹 애플리케이션 방화벽은 해커가 패치되지 않은 버전의 플러그인 및 테마에서 발견된 보안 취약점을 악용할 수 있도록 합니다.
IThemes Security Pro를 사용하면 무차별 대입 보호 및 내장된 봇 관리 솔루션을 통해 악성 봇을 막고 악의적인 웹 요청이 웹 사이트에 도달하지 못하도록 필터링할 수 있습니다. 생체 인식 로그인이 포함된 암호 키로 구동되는 다단계 인증이 추가된 이 포괄적인 보안 제품군은 다양한 유형의 보안 위협으로부터 웹 사이트를 보호하기 위한 다각적인 접근 방식을 제공합니다.
iThemes Security Pro로 WordPress 웹사이트 보호
파일 포함 및 디렉터리 통과 취약점은 민감한 데이터에 대한 무단 액세스 권한을 얻거나 피해자의 서버에서 악성 코드를 실행하려는 해커가 자주 악용하기 때문에 웹 사이트 보안에 심각한 위협이 됩니다. 공격자는 디렉터리 순회 시퀀스를 사용하고 취약한 웹 사이트에 특정 데이터에 대한 경로를 제공하여 웹 서버를 속여 제한된 서버 및 웹 사이트 정보를 노출하도록 할 수 있습니다.
널리 연구되고 인식되고 있음에도 불구하고 디렉토리 순회는 오래된 소프트웨어에 의존하고 적절한 보안 조치가 부족한 WordPress 웹 사이트의 주요 관심사로 남아 있습니다. 적시에 WordPress 코어, 테마 및 플러그인 업데이트를 수행하고 보안 파일 권한을 구성하고 웹 애플리케이션 방화벽을 구현하면 웹 사이트가 디렉토리 통과를 활용하는 파일 포함 공격에 취약해질 위험을 크게 줄일 수 있습니다.
iThemes Security Pro는 웹 사이트 보안에 대한 포괄적이고 다각적인 접근 방식을 제공하여 광범위한 사이버 위협으로부터 WordPress 웹 사이트를 보호할 수 있도록 도와줍니다. 고급 취약성 검색, 자동 소프트웨어 업데이트 및 강력한 봇 관리 솔루션이 내장된 iThemes Security Pro는 개인 보안 고문 역할을 하여 WordPress 웹사이트를 항상 안전하게 보호합니다.
WordPress 보안 및 보호를 위한 최고의 WordPress 보안 플러그인
WordPress는 현재 모든 웹사이트의 40% 이상을 지원하므로 악의적인 의도를 가진 해커의 손쉬운 표적이 되었습니다. iThemes Security Pro 플러그인은 WordPress 보안에서 추측을 제거하여 WordPress 웹사이트를 쉽게 보호하고 보호할 수 있도록 합니다. WordPress 사이트를 지속적으로 모니터링하고 보호하는 상근 보안 전문가가 있는 것과 같습니다.
Kiki는 정보 시스템 관리 학사 학위를 가지고 있으며 Linux 및 WordPress에서 2년 이상의 경험을 가지고 있습니다. 그녀는 현재 Liquid Web 및 Nexcess의 보안 전문가로 일하고 있습니다. 그 전에 Kiki는 Liquid Web Managed Hosting 지원 팀의 일원으로 수백 명의 WordPress 웹 사이트 소유자를 도왔고 자주 발생하는 기술적 문제를 배웠습니다. 글쓰기에 대한 그녀의 열정은 사람들을 돕기 위해 그녀의 지식과 경험을 공유할 수 있게 합니다. 기술 외에도 Kiki는 우주에 대해 배우고 실제 범죄 팟캐스트를 듣는 것을 즐깁니다.