
개념 증명(PoC)으로, Langchain의 GraphCypherQAChain에서 프롬프트 인젝션을 시연하여 Neo4j 데이터베이스의 SQL 인젝션으로 이어지는 것을 보여줍니다. 교육용 테스트를 위한 FastAPI 백엔드와 Streamlit 프론트엔드를 포함한 Docker 기반 설정이 포함되어 있습니다.
이 설정은 Neo4j 데이터베이스에서 SQL 인젝션을 허용하는 GraphCypherQAChain 클래스의 프롬프트 인젝션 취약점에 대한 개념 증명을 보여줍니다.

AZURE_API_KEY=
AZURE_CHAT_DEPLOYMENT=
AZURE_ENDPOINT=
OPENAI_API_KEY=
LLM_PROVIDER= # "azure, openai"
docker-compose build
docker-compose up
http://localhost:7474에서 Neo4j 데이터베이스에 접속합니다 (기본 사용자 이름: neo4j, 비밀번호: password).http://localhost:8000에서 FastAPI 백엔드에 접속합니다.http://localhost:8501에서 Streamlit 프론트엔드에 접속합니다.delete all entities
MATCH (n) DETACH DELETE n
이 PoC는 교육 목적으로만 제공됩니다. 오용 시 심각한 보안 침해가 발생할 수 있습니다.