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

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-100520-laranode-path-traversal — Path Traversal -> Laranode < 1.2.1의 RCE (CWE-22). PoC + 권고문 작성. | Kitploit
도구/GitHubGitHub/wvllxe/cve-2026-100520-laranode-path-traversal
Vulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration TestingRemote Access Tool
GitHubwvllxe/cve-2026-100520-laranode-path-traversal

CVE-2026-100520-laranode-path-traversal

Path Traversal -> Laranode < 1.2.1의 RCE (CWE-22). PoC + 권고문 작성.

저장소 보기
251일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-100520 — Laranode 파일 관리자의 경로 순회(Path Traversal) → RCE

허가된 보안 연구. 방어 및 교육 목적으로만 사용되는 PoC입니다.

CVSS 3.1 CVSS 4.0 CWE-22 Status

Laranode의 파일 관리자 업로드 엔드포인트에서 발생하는 인증된 경로 순회 취약점을 통해, 낮은 권한의 테넌트가 자신의 홈 디렉터리 외부에 임의의 파일을 작성할 수 있습니다 — 다른 테넌트의 웹 루트에 PHP 웹 셸을 심는 것도 가능하며 — 이는 해당 테넌트 권한으로의 원격 코드 실행으로 이어집니다.

CVECVE-2026-100520
제품Laranode (멀티 테넌트 호스팅 제어판, Laravel)
영향 받는 버전>= 0, < 1.2.1
수정된 버전v1.2.1
취약점경로 순회 (CWE-22) → 임의 파일 쓰기 → RCE
권한인증됨 (모든 낮은 권한의 패널 사용자)
CVSS 3.18.8 HIGH — AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 4.08.7 HIGH — AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H
발견자Alisher Qarshibayev
권고문VulnCheck · GHSA-34h2-2696-vfvr

근본 원인

app/Actions/Filemanager/UploadFileAction.php는 사용자가 제공한 path 및 originalName 요청 필드를 테넌트의 홈 디렉터리에 직접 연결하여 대상 경로를 구성합니다 — 정규화도, 순회 검사도 없이:

// app/Actions/Filemanager/UploadFileAction.php  (< 1.2.1)
$r->validate([
    'file'         => 'required|file',
    'originalName' => 'required|string|max:255',
    'path'         => 'required|string',          // <-- 공격자 제어, 정제되지 않음
]);

$file = $r->file('file');

$path = '/home/' . $r->user()->systemUsername . '/' . $r->path;   // <-- 순회 싱크

File::append($path . '/' . $r->originalName, $file->get());        // <-- 임의 쓰기

이 라우트는 auth 뒤에만 위치해 있어, 인증된 모든 테넌트가 접근할 수 있습니다:

// routes/web.php
Route::post('/filemanager/upload-file', [FilemanagerController::class, 'uploadFile'])
     ->middleware(['auth'])->name('filemanager.uploadFile');

path가 ../ 시퀀스를 허용하기 때문에, ../victim/public_html과 같은 값은 호출자의 홈 디렉터리를 벗어나 업로드를 다른 테넌트의 웹 루트에 떨어뜨립니다. 그곳에 .php 파일을 작성하면 HTTP로 요청되는 순간 코드 실행이 이루어집니다.

개념 증명(Proof of Concept)

요구 사항: 대상 Laranode 인스턴스에 대한 유효한 낮은 권한 계정 (이것이 CVE가 가정하는 권한입니다). PoC는 로그인하여 CSRF 토큰을 가져오고, 순회를 통해 형제 테넌트의 웹 루트에 마커 PHP 파일을 작성합니다.

python3 poc.py \
    --url https://panel.example.com \
    --user [email protected] \
    --pass 'Password123' \
    --victim victimuser \
    --webroot public_html

예상 결과 — 서버가 공격자의 홈 외부에 대한 쓰기 대상을 확인합니다:

[*] Logging in as [email protected] ...
[+] Authenticated, CSRF token acquired
[*] Uploading pwn_<rand>.php via path traversal ...
[+] Server destination: /home/victimuser/public_html/pwn_<rand>.php
[+] Verifying execution ...
[+] RCE confirmed: https://victim.example.com/pwn_<rand>.php -> CVE-2026-100520 <uname>

poc.py를 참조하세요. 마커 셸은 실행을 증명하기 위해 id/uname만 실행합니다 — 파괴적인 동작은 없습니다.

영향

  • 공유 호스팅 패널에서 테넌트 간 임의 파일 쓰기.
  • 동일 호스팅된 모든 테넌트 권한으로의 원격 코드 실행 → 해당 사이트와 데이터의 완전한 침해.
  • 멀티 테넌트 제어판의 핵심 격리 보장을 무력화합니다.

해결 방안

Laranode 1.2.1로 업그레이드하세요 (수정 커밋). 이 수정은 해석된 경로를 정규화하고 테넌트 홈 디렉터리를 벗어나는 모든 대상을 거부합니다 (realpath() 포함 검사). 일반적인 지침: 원시 사용자 입력으로 파일 시스템 경로를 구성하지 말고 — 정규화한 후 결과가 허용된 기본 디렉터리 내에 머무는지 확인하세요.

타임라인

날짜이벤트
2026-09-21공개 공개 날짜
2026-09-26CVE-2026-100520 예약 및 게시 (VulnCheck)

공개

벤더에 책임 있게 공개되었고 VulnCheck를 통해 조정되었습니다. 이 PoC가 공개되기 전에 v1.2.1에서 수정되었습니다. 방어 및 교육 목적으로 게시되었습니다.

도구 다운로드