No description
Find a file
2025-06-07 22:25:51 +09:00
addon 수정/test 완료 2025-06-07 22:25:51 +09:00
lib 뭐 대충했어요 2025-06-07 15:12:15 +09:00
.gitignore 뭐 대충했어요 2025-06-07 15:12:15 +09:00
.python-version Refactor code structure for improved readability and maintainability 2025-06-07 14:44:06 +09:00
main.py 뭐 대충했어요 2025-06-07 15:12:15 +09:00
pyproject.toml Refactor code structure for improved readability and maintainability 2025-06-07 14:44:06 +09:00
README.md README.md 파일 업데이트: 기여 방법 및 예제 코드 추가 2025-06-07 17:32:36 +09:00
uv.lock Refactor code structure for improved readability and maintainability 2025-06-07 14:44:06 +09:00

환경 설정

이 프로젝트는 uv라는 Python 패키지 관리자를 사용하여 설정해야합니다.

uv 설치 후 다음과 같은 명령어를 입력합니다.

uv sync

venv와 패키지가 설치가 됩니다.

실행 방법

uv run main.py

이러면 http(s)://localhost:11080로 서버가 열리게 됩니다.

기여 방법

./addon/init.py

from example_check import Example

class LoggerAddon:
    def __init__(self):
        self.checker = Example()

    def request(self, flow: http.HTTPFlow): # 비동기가 필요할 경우 async def로 할 것
            self.checker.test(flow)
    def response(self, flow: http.HTTPFlow): # 비동기가 필요할 경우 async def로 할 것
        self.checker.test(flow)

./addon/example.py

import lib.target as target
from lib.report import save_report

class Example:
    async def test(self, flow):
        req = flow.request
        method = req.method
        url = req.pretty_url

        # data/report.csv에 저장
        report_data = [{
            'target': target.load(),
            'status': "CRITICAL",
            'title': "PKCE Downgrade Vulnerability",
            'description': "PKCE downgrade vulnerability detected! Both URLs returned authorization code.",
            'uri': f"Original: {url}\nDowngraded: {downgraded_url}"
        }]
        save_report(report_data)

이러한 예제를 참고하여 작성하여주세요.