api-endpoint
이 문서는 api-endpoint 레포의 핵심 정보와 포트폴리오 메모를 한 파일로 정리한 노트입니다.
레포지토리 정보
- Name: api-endpoint
- Primary Purpose: apidetector를 사용하여 취약한 API 엔드포인트를 탐색하는 비동기 콜백 기반 웹 서비스
- Part of: Hackerspace-Shield4U 마이크로서비스 아키텍처
주요 목적
Flask 기반의 마이크로서비스로, 웹 애플리케이션에서 취약한 API 엔드포인트를 탐색하기 위한 스캔을 시작하는 비동기 API를 제공합니다. 백그라운드 스레드에서 apidetector 도구를 콜백 메커니즘과 함께 사용하여 차단 없이 CI/CD 파이프라인에 통합됩니다.
주요 기술 스택
- Language: Python 3
- Framework: Flask
- Core Tool: apidetector (subprocess 기반 통합)
- HTTP Client: requests 라이브러리
- Containerization: Dockerfile을 사용한 Docker
- Dependencies: Flask, requests, Werkzeug
포트폴리오 메모
분석할 주요 파일 (진입점)
app.py- 메인 Flask 애플리케이션 (92줄) - 단일 진입점Dockerfile- 컨테이너 설정requirements.txt- Python 의존성
레포지토리 컨텍스트
- Role: API 엔드포인트 탐색 서비스
- Dependencies: apidetector 도구 (외부 subprocess)
- Integration: controller 서비스와의 콜백 기반 통합
- Language: 한국어/영어 혼합 주석
참고사항
- 명확한 목적을 가진 단순하고 집중된 마이크로서비스
- 스레딩을 사용한 비동기 스캐닝 패턴을 보여줌
- 콜백을 통한 마이크로서비스 통신의 좋은 예시
- 프로젝트 전체 구조에서는 보조 서비스로 보는 편이 맞습니다.