Skip to content

[REFACTOR] URL 분석 정확도 개선#32

Merged
minsoo0506 merged 6 commits into
devfrom
refactor/#29-improve-accuracy
May 31, 2026
Merged

[REFACTOR] URL 분석 정확도 개선#32
minsoo0506 merged 6 commits into
devfrom
refactor/#29-improve-accuracy

Conversation

@minsoo0506

Copy link
Copy Markdown
Contributor

요약

  • 페이지 미발견/4xx 계열은 verdict 없이 PAGE_UNAVAILABLE 실패로 조기 종료하도록 보강했습니다.
    • 콘텐츠 분석 fetch 결과가 404 또는 400번대 접근 실패로 내려오면 safe/caution/danger를 만들지 않습니다.
    • Spring 콜백에도 실패 상태, 실패 단계, 상태 코드, 사용자 표시 메시지를 전달합니다.
  {
    "analysisId": "analysis-1",
    "requestId": "request-1",
    "status": "failed",
    "originalUrl": "https://missing.example",
    "finalUrl": "https://missing.example",
    "error": {
      "code": "PAGE_UNAVAILABLE",
      "stage": 4,
      "message": "페이지를 찾을 수 없습니다.",
      "statusCode": 404
    },
    "engineVersion": "0.1.0",
    "analyzedAt": "2026-05-29T00:00:00Z",
    "elapsedMs": 1234
  }
  • URLhaus 다중 테넌트 매칭을 수정했습니다.
    • github.com, dropbox.com, sites.google.com처럼 여러 사용자가 같은 호스트를 공유하는 서비스는 host 단독 매칭으로 정상 URL까지 악성 처리될 수 있어 host+path prefix 기
      반 매칭을 적용했습니다.
  • 피싱 탐지 신호를 보강했습니다.
    • 민감정보 입력 필드, 외부 form action, 기관/브랜드 사칭 문구, 위험 다운로드, meta refresh, SPA shell 렌더링 분석 신호를 AI 프롬프트와 점수 산정에 더 잘 반영하도록
      개선했습니다.
    • 선행 단계의 도메인 휴리스틱 신호를 AI 컨텍스트에 함께 전달해 단독 콘텐츠 분석으로 놓치는 케이스를 줄였습니다.
  • 정상 URL 오탐을 줄였습니다.
    • 신뢰 도메인은 DGA/typo 휴리스틱에서 과도하게 잡히지 않도록 보정했습니다.
    • 같은 등록 도메인 내부의 canonical redirect는 cross-origin으로 보지 않도록 수정했습니다.
    • 신뢰 도메인에서 AI suspicious 단독 판정은 점수를 올리지 않되, 외부 credential form이나 민감정보 필드 같은 강한 신호가 있으면 반영하도록 했습니다.
  • AI 응답 가이드를 개선했습니다.
    • 별도 배열을 추가하지 않고 기존 ai_reason 안에 분석 근거와 사용자 행동 가이드를 100자 이내로 함께 담도록 OpenAI 프롬프트를 수정했습니다.
    • 예: 로그인 유도 정황이 있어 비밀번호나 결제 정보를 입력하지 마세요.
  • README를 현재 코드 기준으로 정리했습니다.
    • 핵심 목표, 기술 스택, 디렉토리 구조, 파이프라인 구조, 단계별 상세, 점수 산정 기준, verdict 구간, API 상세, JSON 응답 예시 중심으로 재작성했습니다.

연관 이슈 및 Close 할 이슈

None

Pull Request 체크리스트

TODO

  • 최종 결과물을 확인했는가?
  • 의미 있는 커밋 메시지를 작성했는가?

@minsoo0506 minsoo0506 requested review from kbh0218 and sunm2n May 31, 2026 00:27
@minsoo0506 minsoo0506 self-assigned this May 31, 2026
@minsoo0506 minsoo0506 added refactor 코드 리팩토링 fix 기능 및 버그 수정 labels May 31, 2026
@minsoo0506 minsoo0506 merged commit 5f66ee4 into dev May 31, 2026
@minsoo0506 minsoo0506 deleted the refactor/#29-improve-accuracy branch May 31, 2026 00:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fix 기능 및 버그 수정 refactor 코드 리팩토링

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant