agents/secrets_agent_server.py
# 코드에서 하드코딩된 비밀번호, 토큰, 키 등의 시크릿을 스캔하는 gRPC 에이전트 서버
import grpc
from concurrent import futures
import os
import sys
import re
# 상위 디렉터리를 sys.path에 추가하여 agents_pb2 모듈을 임포트할 수 있도록 함
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
import agents_pb2
import agents_pb2_grpc
# 시크릿 패턴을 정의하는 정규표현식
# AKIA[0-9A-Z]{16}: AWS Access Key ID 패턴
# secret, password, pwd, token: 일반적인 시크릿 키워드
# re.IGNORECASE: 대소문자 구분 없이 매칭
SECRET_PATTERN = re.compile(r"(AKIA[0-9A-Z]{16}|secret|password|pwd|token)", re.IGNORECASE)