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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
django-xss-example — 이 저장소는 Django 4.0.1에서 XSS 공격을 재현합니다 (CVE-2022-22818 참조) | Kitploit
도구/GitHubGitHub/prikalel/django-xss-example
Vulnerability AnalysisWeb Application ExploitationWeb SecurityFuzzingLearning & Education
GitHubprikalel/django-xss-example

django-xss-example

이 저장소는 Django 4.0.1에서 XSS 공격을 재현합니다 (CVE-2022-22818 참조)

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

자체 확인

Linux에서만 작동합니다. Windows에서는 종속성 중 하나가 오류를 일으킬 수 있습니다.

실행 전에 다음 패키지를 설치해야 합니다:

root@kitploit:~
pip install -r requirements.txt

패키지가 설치되었는지 확인해야 합니다

root@kitploit:~
python -m django --version  # pip install django==4.0.1
grammarinator-generate --version  # pip install git+https://github.com/renatahodovan/grammarinator.git#egg=grammarinator

퍼저 준비

root@kitploit:~
touch grammars/fuzzer/HTMLGenerator.py  # Создаём пустой файл, который будет наполнен генератом
grammarinator-process grammars/HTMLLexer.g4 grammars/HTMLParser.g4 -o grammars/fuzzer  # Заполнение файла

퍼저 실행

root@kitploit:~
python runfuzz.py

오류

Django의 한 파일을 패치해야 합니다. 템플릿 엔진 오류를 일으켜 퍼징 프로세스를 중단시킬 수 있기 때문입니다.

root@kitploit:~
--- /home/alex/.local/lib/python3.9/site-packages/django/template/defaultfilters.py     2023-04-26 12:47:44.387239988 +0300
+++ /home/alex/.local/lib/python3.9/site-packages/django/template/defaultfilters-fixed.py       2023-04-26 12:47:33.931039539 +0300
@@ -613,7 +613,10 @@
 @register.filter(is_safe=True)
 def random(value):
     """Return a random item from the list."""
-    return random_module.choice(value)
+    try:
+        return random_module.choice(value)
+    except IndexError:
+        return ''
 
 
 @register.filter("slice", is_safe=True)

venv를 사용하는 경우 경로는 다음과 같습니다: venv/lib/python3.9/site-packages/django/template/defaultfilters.py

패키지를 시스템에 설치한 경우 경로: $HOME/.local/lib/python3.9/site-packages/django/template/defaultfilters.py

파일 안으로 들어가서 random 태그 정의를 찾아 try-catch 블록으로 감싸야 합니다.

이렇게 하지 않으면 퍼저가 이 버그를 발견했을 때 작업을 종료합니다.

벤치마크

버그를 찾기 위해 필요한 테스트 횟수

버그일반 퍼저고정 가중치 모드쿨다운 0.5
debug2020
join-escape-filter1000+560/3520(88s)/40/740(28s)/1800(51s)20/900/220/760(530s)
도구 다운로드