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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-49049 — Joomla Helix3의 임의 파일 쓰기 취약점인 CVE-2026-49049를 스캔하는 Python 스캐너이자 개념 증명 도구로, PHP 웹 셸 업로드와 원격 코드 실행을 가능하게 합니다. | Kitploit
도구/GitHubGitHub/matakucing-ofc/cve-2026-49049
Vulnerability ScannersVulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration TestingRemote Access Tool
GitHubmatakucing-ofc/cve-2026-49049

CVE-2026-49049

Joomla Helix3의 임의 파일 쓰기 취약점인 CVE-2026-49049를 스캔하는 Python 스캐너이자 개념 증명 도구로, PHP 웹 셸 업로드와 원격 코드 실행을 가능하게 합니다.

저장소 보기
13시간 31분 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-49049

이 저장소는 Joomla Helix3 컴포넌트의 취약점에 대한 Python 기반 스캐너와 개념 증명(proof-of-concept)을 포함하고 있습니다. 이 버그는 공격자가 웹에서 접근 가능한 위치에 PHP 페이로드를 작성할 수 있을 때 원격 코드 실행(RCE)으로 이어질 수 있는 임의 파일 쓰기(arbitrary file write) 문제입니다.

버그의 정체

취약한 동작은 요청 파라미터가 적절한 검증 없이 파일 경로나 파일 내용을 제어하는 데 사용될 때 발생합니다. Helix3 AJAX 인터페이스의 경우, 엔드포인트가 서버 파일 시스템에 파일을 작성하는 데 사용될 수 있는 데이터를 받아들입니다. 애플리케이션이 대상 경로를 제한하지 않고 내용을 검증하지 않으면, 공격자는 웹 서버가 실행하는 위치에 악성 PHP 스크립트를 생성할 수 있습니다.

다시 말해, 이 취약점은 단순히 "파일이 작성될 수 있다"는 것이 아니라 위험한 연쇄 과정입니다:

  1. 공격자가 조작된 파일 경로를 제출
  2. 백엔드가 공격자가 제어하는 내용을 디스크에 작성
  3. 파일이 웹에서 접근 가능한 디렉터리에 배치됨
  4. PHP 인터프리터가 파일을 실행
  5. 공격자가 서버에서 원격 코드 실행 권한을 획득

이것은 전형적인 임의 파일 쓰기에서 웹 셸로 이어지는 시나리오입니다.

위험한 이유

공격자가 사이트 루트나 다른 실행 가능한 디렉터리에 PHP 파일을 작성할 수 있게 되면, 다음과 같은 작업을 할 수 있습니다:

  • 웹 셸 업로드
  • 서버에서 민감한 파일 읽기
  • PHP를 통해 시스템 명령 실행
  • 애플리케이션 파일이나 구성 파일 조작
  • 더 넓은 내부 네트워크로 피벗

단순한 파일 쓰기 결함을 완전한 서버 침해로 전환할 수 있기 때문에 영향이 심각합니다.

취약한 패턴

근본적인 문제는 일반적으로 다음과 같은 로직과 유사합니다:

root@kitploit:~
$file = $_POST['layoutName'];
$content = $_POST['content'];
file_put_contents($file, $content);

$file의 값이 공격자에 의해 제어되고 경로가 제한되지 않으면, 애플리케이션은 실행 가능한 경로에 PHP 코드를 작성할 수 있습니다. 그런 다음 악성 스크립트가 브라우저에서 사용 가능해지고 웹 서버에 의해 실행될 수 있습니다.

이 스캐너의 작동 방식

이 프로젝트에는 다음을 시도하는 멀티스레드 Python 도구가 포함되어 있습니다:

  • 대상 Joomla 호스트 목록 로드
  • Helix3 AJAX 엔드포인트 쿼리
  • 임의의 이름으로 임시 PHP 파일 작성 시도
  • 응답이 페이로드가 성공적으로 저장되고 실행되었음을 나타내는지 확인

취약한 대상을 results.txt에 기록하고 원시 PHP 출력을 raw_result.txt에 저장합니다.

버그 수정 방법

수정은 신뢰할 수 없는 파일 쓰기를 제거하고 엄격한 검증을 시행해야 합니다. 권장되는 해결 단계는 아래와 같습니다.

1. 취약한 소프트웨어 업데이트

Joomla와 Helix3 컴포넌트/플러그인을 최신 안정 버전으로 업그레이드하십시오. 보안 업데이트는 임의 쓰기 작업을 허용하는 취약한 엔드포인트를 제거하거나 제한하는 경우가 많습니다.

2. 필요하지 않은 경우 취약한 기능 비활성화

Helix3 AJAX 기능이 필요하지 않다면 완전히 비활성화하십시오. 안전하지 않은 엔드포인트에 대한 접근을 제거하면 공격 표면이 크게 줄어듭니다.

3. 쓰기 위치 제한

임의의 파일 시스템 경로를 허용하지 마십시오. 애플리케이션은 공개적으로 접근할 수 없고 PHP로 실행되지 않는 작고 고정된 디렉터리 내에서만 쓰기를 허용해야 합니다.

검증은 다음을 거부해야 합니다:

  • ../와 같은 경로 순회 시퀀스
  • 승인된 기본 디렉터리 외부의 파일
  • 명시적으로 필요하고 안전하게 처리되지 않는 한 웹에서 접근 가능한 디렉터리로의 쓰기

4. 경로 정규화 및 검증

파일을 작성하기 전에:

  • 정규 경로(canonical path)를 확인
  • 의도한 기본 디렉터리 아래에 있는지 확인
  • 심볼릭 링크나 외부로 중첩된 경로 거부
  • 예상 파일 이름과 확장자 검증

5. 권한 부여 시행

파일을 작성하는 엔드포인트는 신뢰할 수 있는 관리자만 사용할 수 있어야 합니다. 쓰기 요청을 수락하기 전에 적절한 인증 및 권한 검사를 요구하십시오.

6. 내용 정제 및 노출 감소

엄격한 검증 없이 공격자가 제어하는 원시 내용을 실행 가능한 파일에 절대 작성하지 마십시오. 또한 서버 강화에는 다음이 포함되어야 합니다:

  • 가능한 경우 쓰기 가능한 디렉터리에서 PHP 실행 비활성화
  • 최소 권한 사용
  • 예상치 못한 파일 생성 모니터링
  • 의심스러운 요청에 대한 로그 검토

요구 사항

  • Python 3.9+
  • requests 패키지

사용법

대상 URL을 포함하는 파일을 생성하십시오. 예를 들어 targets.txt:

root@kitploit:~
http://example.com
https://joomla-site.local
http://127.0.0.1

그런 다음 실행하십시오:

root@kitploit:~
python3 cve-2026-49049.py targets.txt

스크립트는 다음을 생성합니다:

  • results.txt — 탐지된 취약한 URL
  • raw_result.txt — 테스트 중 관찰된 원시 PHP 페이로드

법적 및 윤리적 고지

이 프로젝트는 교육 목적, 합법적인 보안 연구, 그리고 승인된 취약점 평가를 위해 만들어졌습니다. 명시적인 허가 없이 시스템에 대해 사용해서는 안 됩니다. 오용은 엄격히 금지됩니다.

면책 조항

이 저장소의 내용은 연구자와 관리자가 실제 보안 문제를 이해하고, 식별하고, 해결하는 데 도움을 주기 위해 제공됩니다. 책임감 있게 사용하고 적절한 권한이 있는 통제된 환경에서만 사용하십시오.

도구 다운로드