Wordpress
Trickest를 사용하여 세계에서 가장 고급 커뮤니티 도구로 구동되는 워크플로우를 쉽게 구축하고 자동화하세요. 오늘 바로 액세스하세요:
기본 정보
업로드된 파일은 여기로 이동합니다: http://10.10.10.10/wp-content/uploads/2018/08/a.txt
테마 파일은 /wp-content/themes/에 있으므로 테마의 일부 php를 변경하여 RCE를 얻으려면 해당 경로를 사용할 수 있습니다. 예: 테마 twentytwelve를 사용하여 /wp-content/themes/twentytwelve/404.php에서 404.php 파일에 액세스할 수 있습니다.
다른 유용한 URL은: /wp-content/themes/default/404.php
wp-config.php에서 데이터베이스의 루트 암호를 찾을 수 있습니다.
확인해야 할 기본 로그인 경로: /wp-login.php, /wp-login/, /wp-admin/, /wp-admin.php, /login/
주요 워드프레스 파일
index.php
license.txt
에는 설치된 워드프레스 버전과 같은 유용한 정보가 포함되어 있습니다.wp-activate.php
는 새로운 워드프레스 사이트를 설정할 때 이메일 활성화 프로세스에 사용됩니다.로그인 폴더(숨기기 위해 이름이 변경될 수 있음):
/wp-admin/login.php
/wp-admin/wp-login.php
/login.php
/wp-login.php
xmlrpc.php
는 WordPress의 기능을 나타내는 파일로, HTTP를 전송 메커니즘으로 사용하고 XML을 인코딩 메커니즘으로 사용합니다. 이러한 유형의 통신은 WordPress REST API에 의해 대체되었습니다.wp-content
폴더는 플러그인 및 테마가 저장되는 주요 디렉토리입니다.wp-content/uploads/
는 플랫폼에 업로드된 모든 파일이 저장되는 디렉토리입니다.wp-includes/
는 인증서, 글꼴, JavaScript 파일 및 위젯과 같은 코어 파일이 저장되는 디렉토리입니다.wp-sitemap.xml
은 워드프레스 버전 5.5 이상에서 Worpress가 모든 공개 게시물 및 공개 쿼리 가능한 게시 유형 및 분류에 대한 사이트맵 XML 파일을 생성합니다.
포스트 익스플로잇레이션
wp-config.php
파일에는 데이터베이스 이름, 데이터베이스 호스트, 사용자 이름 및 암호, 인증 키 및 솔트, 데이터베이스 테이블 접두사와 같이 WordPress가 데이터베이스에 연결하는 데 필요한 정보가 포함되어 있습니다. 이 구성 파일은 문제 해결에 유용한 DEBUG 모드를 활성화하는 데도 사용할 수 있습니다.
사용자 권한
관리자
편집자: 자신과 다른 사람의 게시물을 게시하고 관리합니다.
작가: 자신의 게시물을 게시하고 관리합니다.
기고자: 자신의 게시물을 작성하고 관리하지만 게시할 수는 없습니다.
구독자: 게시물을 둘러보고 프로필을 편집할 수 있습니다.
수동 열거
워드프레스 버전 확인
/license.txt
또는 /readme.html
파일을 찾을 수 있는지 확인하세요.
페이지의 소스 코드(예: https://wordpress.org/support/article/pages/) 내에서:
grep
meta name
CSS 링크 파일
JavaScript 파일
플러그인 가져오기
테마 가져오기
일반적으로 버전 추출하기
Trickest를 사용하여 세계에서 가장 고급 커뮤니티 도구로 구동되는 워크플로우를 쉽게 구축 및 자동화하세요. 오늘 바로 액세스하세요:
활성 열거
플러그인 및 테마
아마도 모든 플러그인 및 테마를 찾을 수는 없을 것입니다. 모든 것을 발견하려면 플러그인 및 테마 목록을 적극적으로 브루트 포스해야 합니다 (다행히도 이 목록을 포함하는 자동화된 도구가 있습니다).
사용자
ID 브루트
WordPress 사이트에서 유효한 사용자를 얻으려면 사용자 ID를 브루트 포스해야 합니다:
만약 응답이 200 또는 30X이면, id가 유효하다는 것을 의미합니다. 응답이 400이면, id가 유효하지 않습니다.
wp-json
또한 쿼리를 사용하여 사용자에 대한 정보를 얻을 수도 있습니다:
다른 /wp-json/
엔드포인트는 사용자에 관한 정보를 공개할 수 있습니다.
이 엔드포인트는 게시물을 작성한 사용자만 노출됩니다. 이 기능을 활성화한 사용자에 대한 정보만 제공됩니다.
또한 /wp-json/wp/v2/pages은 IP 주소를 노출시킬 수 있습니다.
로그인 사용자 이름 열거
**/wp-login.php
**에 로그인할 때 메시지는 지정된 사용자 이름이 존재하는지 여부에 따라 다릅니다.
XML-RPC
xml-rpc.php
가 활성화되어 있다면 자격 증명 브루트 포스를 수행하거나 다른 리소스에 DoS 공격을 실행할 수 있습니다. (예를 들어 여기를 사용하여이 프로세스를 자동화할 수 있습니다).
활성화되어 있는지 확인하려면 _/xmlrpc.php_에 액세스하고 이 요청을 보냅니다:
확인
자격 증명 브루트포스
wp.getUserBlogs
, wp.getCategories
또는 **metaWeblog.getUsersBlogs
**는 자격 증명을 브루트포스할 수 있는 메서드 중 일부입니다. 이 중 하나를 찾을 수 있다면 다음과 같이 보낼 수 있습니다:
200 코드 응답 내부의 "잘못된 사용자 이름 또는 비밀번호" 메시지는 자격 증명이 유효하지 않을 때 나타납니다.
올바른 자격 증명을 사용하면 파일을 업로드할 수 있습니다. 응답에는 경로가 표시됩니다 (https://gist.github.com/georgestephanis/5681982)
또한 **system.multicall
**을 사용하여 동일한 요청에서 여러 자격 증명을 시도할 수 있기 때문에 자격 증명을 빠르게 브루트 포스할 수 있는 보다 빠른 방법이 있습니다:
2FA 우회
이 방법은 프로그램을 위한 것이며 사람을 위한 것이 아니며 오래되어 2FA를 지원하지 않습니다. 따라서 유효한 자격 증명을 가지고 있지만 본 입구가 2FA로 보호되어 있는 경우, xmlrpc.php를 남용하여 해당 자격 증명으로 2FA를 우회하여 로그인할 수 있을 수도 있습니다. 콘솔을 통해 수행할 수 있는 모든 작업을 수행할 수는 없지만, Ippsec이 https://www.youtube.com/watch?v=p8mIdm93mfw&t=1130s에서 설명한 대로 RCE에 도달할 수도 있습니다.
DDoS 또는 포트 스캔
목록 내에서 pingback.ping 메서드를 찾을 수 있다면 Wordpress에게 임의의 요청을 보내도록 할 수 있습니다. 이를 사용하여 수천 개의 Wordpress 사이트가 한 위치에 액세스하도록 요청하거나 Wordpress가 일부 내부 네트워크를 스캔하도록 할 수 있습니다(임의의 포트를 지정할 수 있음).
만약 faultCode 값이 0 (17)보다 큰 경우, 해당 포트가 열려 있다는 것을 의미합니다.
**system.multicall
**의 사용법을 살펴보고 이 방법을 남용하여 DDoS를 유발하는 방법을 배우세요.
DDoS
wp-cron.php DoS
이 파일은 일반적으로 워드프레스 사이트의 루트 아래에 존재합니다: /wp-cron.php
이 파일에 액세스하면 "무거운" MySQL 쿼리가 수행되므로, 공격자가 DoS를 발생시키는 데 사용할 수 있습니다.
또한 기본적으로 wp-cron.php
은 모든 페이지 로드(클라이언트가 워드프레스 페이지를 요청할 때마다)마다 호출되며, 고트래픽 사이트에서 문제를 일으킬 수 있습니다 (DoS).
Wp-Cron을 비활성화하고 호스트 내에서 필요한 작업을 정기적으로 수행하는 실제 cronjob을 생성하는 것이 권장됩니다.
/wp-json/oembed/1.0/proxy - SSRF
_https://worpress-site.com/wp-json/oembed/1.0/proxy?url=ybdk28vjsa9yirr7og2lukt10s6ju8.burpcollaborator.net_에 액세스를 시도하면 워드프레스 사이트가 요청을 보낼 수 있습니다.
작동하지 않을 때의 응답:
SSRF
이 도구는 methodName: pingback.ping을 확인하고 /wp-json/oembed/1.0/proxy 경로를 찾아 존재하는 경우 이를 악용하려고 시도합니다.
Automatic Tools
Trickest를 사용하여 세계에서 가장 고급 커뮤니티 도구로 구동되는 워크플로우를 쉽게 구축하고 자동화하세요. 오늘 바로 액세스하세요:
비트를 덮어쓰기로 액세스 얻기
실제 공격보다는 호기심입니다. CTF https://github.com/orangetw/My-CTF-Web-Challenges#one-bit-man에서는 워드프레스 파일 중 아무거나 1비트를 뒤집을 수 있습니다. 따라서 파일 /var/www/html/wp-includes/user.php
의 위치 5389
를 뒤집어서 NOT (!
) 연산을 NOP으로 만들 수 있습니다.
패널 RCE
사용 중인 테마의 php 수정 (관리자 자격 증명 필요)
외관 → 테마 편집기 → 404 템플릿 (오른쪽에 위치)
php 쉘을 위한 내용 변경:
인터넷에서 어떻게 해당 업데이트된 페이지에 액세스할 수 있는지 검색하십시오. 이 경우 여기에 액세스해야 합니다: http://10.11.1.234/wp-content/themes/twentytwelve/404.php
MSF
다음을 사용할 수 있습니다:
플러그인 RCE
PHP 플러그인
플러그인으로 .php 파일을 업로드할 수 있습니다. 예를 들어 다음과 같이 php 백도어를 만듭니다:
그런 다음 새 플러그인을 추가합니다:
플러그인을 업로드하고 지금 설치를 누릅니다:
Procced를 클릭합니다:
아마도 이것은 외관상 아무것도 하지 않을 것입니다. 그러나 미디어로 이동하면 업로드된 쉘을 볼 수 있습니다:
액세스하면 역술을 실행할 URL을 볼 수 있습니다:
악성 플러그인 업로드 및 활성화
이 방법은 취약하다고 알려진 악성 플러그인을 설치하고 웹 쉘을 얻기 위해 악용할 수 있는 방법입니다. 이 프로세스는 다음과 같이 WordPress 대시보드를 통해 수행됩니다:
플러그인 획득: 플러그인은 여기와 같은 Exploit DB와 같은 소스에서 얻습니다.
플러그인 설치:
WordPress 대시보드로 이동한 다음
대시보드 > 플러그인 > 플러그인 업로드
로 이동합니다.다운로드한 플러그인의 zip 파일을 업로드합니다.
플러그인 활성화: 플러그인이 성공적으로 설치되면 대시보드를 통해 활성화해야 합니다.
악용:
"reflex-gallery" 플러그인이 설치되고 활성화된 경우 취약점을 악용할 수 있습니다.
Metasploit 프레임워크는 이 취약점에 대한 악용을 제공합니다. 적절한 모듈을 로드하고 특정 명령을 실행하여 미터프리터 세션을 설정할 수 있으며, 이를 통해 사이트에 무단 액세스 권한이 부여됩니다.
WordPress 사이트를 악용하는 다양한 방법 중 하나임을 강조합니다.
콘텐츠에는 WordPress 대시보드에서 플러그인을 설치하고 활성화하는 단계를 보여주는 시각적 지원이 포함되어 있습니다. 그러나 이러한 취약점을 악용하는 것은 적절한 승인 없이는 불법이며 윤리적이지 않습니다. 이 정보는 책임 있게 사용되어야 하며 명시적인 허가를 받은 펜테스팅과 같은 법적 맥락에서만 사용되어야 합니다.
더 자세한 단계는 확인하세요: https://www.hackingarticles.in/wordpress-reverse-shell/**
사후 악용
사용자 이름과 비밀번호 추출:
관리자 비밀번호 변경:
워드프레스 보호
정기적인 업데이트
워드프레스, 플러그인 및 테마가 최신 상태인지 확인하세요. 또한 wp-config.php에서 자동 업데이트가 활성화되어 있는지 확인하세요:
또한 신뢰할 수 있는 WordPress 플러그인과 테마만 설치하십시오.
보안 플러그인
기타 권장 사항
기본 admin 사용자 제거
강력한 암호 및 2단계 인증 사용
주기적으로 사용자 권한 검토
브루트 포스 공격 방지를 위해 로그인 시도 제한
wp-admin.php
파일 이름 변경 및 내부 또는 특정 IP 주소에서만 액세스 허용
Trickest를 사용하여 세계에서 가장 고급 커뮤니티 도구로 구동되는 워크플로우를 쉽게 구축하고 자동화하세요. 오늘 바로 액세스하세요:
Last updated