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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-30480 — # CVE-2026-30480 개념 증명 LibreNMS NFSen 모듈의 로컬 파일 포함(Local File Inclusion) 취약점으로, 경로 탐색을 통해 임의의 PHP 파일을 포함시키는 방법과 영향 분석을 시연합니다. | Kitploit
도구/GitHubGitHub/parlakbarann/cve-2026-30480
Vulnerability AnalysisExploitationWeb Application ExploitationPapers & ResearchLearning & Education
GitHubparlakbarann/cve-2026-30480

CVE-2026-30480

# CVE-2026-30480 개념 증명 LibreNMS NFSen 모듈의 로컬 파일 포함(Local File Inclusion) 취약점으로, 경로 탐색을 통해 임의의 PHP 파일을 포함시키는 방법과 영향 분석을 시연합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-30480: LibreNMS 로컬 파일 포함(LFI) 취약점 - 경로 탐색(Path Traversal)을 통한 공격

개요

LibreNMS의 NFSen 모듈에 로컬 파일 포함(LFI) 취약점이 존재합니다. 인증된 공격자는 경로 탐색 시퀀스를 악용하여 서버 파일시스템의 임의의 PHP 파일을 포함시킬 수 있습니다.

필드값
제품LibreNMS
공급업체LibreNMS 프로젝트
취약점 유형로컬 파일 포함(LFI) / 경로 탐색(Path Traversal)
CWECWE-98, CWE-22
CVSS 점수7.5 - 8.5 (높음)
인증 필요예
발견 날짜2026-02-01

영향을 받는 구성 요소

파일: includes/html/pages/device/nfsen.inc.php
라인: 46-48

root@kitploit:~
if (is_file('includes/html/pages/device/nfsen/' . $vars['nfsen'] . '.inc.php')) {
    include 'includes/html/pages/device/nfsen/' . $vars['nfsen'] . '.inc.php';
} else {
    include 'includes/html/pages/device/nfsen/general.inc.php';
}

취약점 설명

$vars['nfsen'] 매개변수는 사용자 입력($_GET/$_POST)에서 파생되며 적절한 검증 없이 include() 문에 직접 연결됩니다. 수행되는 유일한 검증은 is_file() 확인이며, 이는 경로 탐색 시퀀스를 방지하지 못합니다.

근본 원인

  1. 사용자 입력이 파일 경로 구성에 직접 유입됨
  2. 경로 탐색 문자(../)에 대한 검증 부재
  3. 허용 값에 대한 화이트리스트 검증 부재
  4. is_file()은 존재 여부만 확인할 뿐 경로 안전성은 확인하지 않음

개념 증명(PoC)

사전 요구 사항

  • 인증된 LibreNMS 사용자
  • Netflow/NFSen 탭이 있는 장치 하나 이상에 대한 접근 권한

재현 단계

  1. 인증된 사용자로 LibreNMS에 로그인

  2. 임의 장치의 Netflow 탭으로 이동:

    root@kitploit:~
    https://[TARGET]/device/[DEVICE_ID]/tab=netflow
    
  3. 악성 매개변수 추가:

    root@kitploit:~
    https://[TARGET]/device/[DEVICE_ID]/tab=netflow?nfsen=..%2f..%2fapi-access
    
  4. NFSen 콘텐츠 대신 API 액세스 페이지 콘텐츠가 로드되는 것을 확인

기대 동작 vs 실제 동작

시나리오기대 동작실제 동작
정상 요청NFSen 일반 페이지 (Flows, Packets, Traffic)NFSen 일반 페이지
악성 요청NFSen 일반 페이지API 액세스 페이지 콘텐츠

영향

영향 유형설명
정보 공개임의의 .inc.php 파일 포함 및 실행
권한 상승낮은 권한 사용자가 관리자 전용 페이지에 접근
잠재적 RCE공격자가 임의의 .inc.php 파일 콘텐츠를 제어할 수 있는 경우

스크린샷

0. LibreNMS 버전

URL: https://[REDACTED]/about

버전: 22.11.0-23-gd091788f2 (2022년 12월 15일 목요일)

설명: 테스트된 버전을 보여주는 LibreNMS 버전 정보입니다. 이 버전은 CVE-2021-44278 패치(v21.12.0) 이후 버전으로, 이는 새로운 패치되지 않은 취약점임을 확인합니다.

Version


1. 정상 NFSen 페이지

URL: https://[REDACTED]/device/114/tab=netflow

설명: Flows, Packets, Traffic 섹션을 보여주는 정상 NFSen/Netflow 페이지입니다. 이는 악용 없이 기대되는 동작입니다.

Normal


2. 악용됨 - API 액세스 페이지 (관리자 사용자)

URL: https://[REDACTED]/device/114/tab=netflow?nfsen=..%2f..%2fapi-access

페이로드: ..%2f..%2fapi-access (URL 인코딩된 경로 탐색)

설명: 악성 페이로드가 주입되면 NFSen 콘텐츠 대신 API 액세스 페이지 콘텐츠가 로드됩니다. 이는 general.inc.php 대신 api-access.inc.php 파일이 포함된 성공적인 로컬 파일 포함을 입증합니다.

Exploit Admin


3. 악용됨 - 권한 오류 (전역 읽기 사용자)

URL: https://[REDACTED]/device/114/tab=netflow?nfsen=..%2f..%2fapi-access

페이로드: ..%2f..%2fapi-access (URL 인코딩된 경로 탐색)

설명: 낮은 권한 사용자(전역 읽기)로 동일한 악용을 시도했습니다. 페이지에 "이 페이지를 볼 수 있는 권한이 충분하지 않습니다" 오류가 표시됩니다. 이는 다음을 확인합니다:

  1. LFI 취약점이 작동함 (파일이 포함됨)
  2. 대상 파일의 내부 권한 검사가 트리거됨
  3. 정상 NFSen 페이지와 비교하여 다른 콘텐츠가 표시됨

Exploit User

영향을 받는 버전

  • NFSen 모듈이 포함된 LibreNMS 버전
  • 테스트 버전: 22.11.0-23-gd091788f2 (2022년 12월 15일)
  • 현재 master 브랜치에 취약점 존재
  • 참고: 이는 CVE-2021-44278(showconfig.inc.php에 영향을 미치며 v21.12.0에서 패치됨)과 다른 취약점입니다. 이 취약점은 nfsen.inc.php에 영향을 미치며 패치되지 않은 상태입니다.

해결 방안

권장 수정 사항

화이트리스트 기반 검증 구현:

root@kitploit:~
$allowed_pages = ['general', 'stats', 'channel'];

if (in_array($vars['nfsen'], $allowed_pages, true)) {
    include 'includes/html/pages/device/nfsen/' . $vars['nfsen'] . '.inc.php';
} else {
    include 'includes/html/pages/device/nfsen/general.inc.php';
}

대체 수정 사항

basename()을 사용하여 경로 탐색 제거:

root@kitploit:~
$nfsen_page = basename($vars['nfsen']);
if (is_file('includes/html/pages/device/nfsen/' . $nfsen_page . '.inc.php')) {
    include 'includes/html/pages/device/nfsen/' . $nfsen_page . '.inc.php';
}

타임라인

날짜조치
2026-02-01취약점 발견
2026-04-14CVE 게시, 공급업체에 통보
2026-04-14공개 공개

참고 자료

  • CWE-98: Include/Require 문의 파일명 부적절한 제어
  • CWE-22: 제한된 디렉토리에 대한 경로명의 부적절한 제한
  • OWASP 경로 탐색
  • LibreNMS 공식 웹사이트

면책 조항

이 취약점 보고서는 교육 및 승인된 보안 연구 목적으로만 제공됩니다. 연구자는 공개 공개 전에 공급업체에 통보하는 책임 있는 공개 관행을 따랐습니다.

크레딧

발견자: Ömer Baran Parlak
연락처: [email protected]
GitHub: parlakbarann

도구 다운로드