Trailmark는 코드를 그래프로 만듭니다. 노트

Trailmark는 코드를 그래프로 만듭니다.

"Trailmark은 소스 코드를 쿼리 가능한 호출 그래프로 변환하는 새로운 오픈 소스 라이브러리입니다. 이 그래프는 함수, 클래스 및 그 관계를 의미론적 메타데이터와 함께 나타냅니다. Claude 스킬은 Python API를 통해 이 그래프와 직접 상호 작용할 수 있습니다. 전통적인 보안 분석은 종종 발견 목록에 의존하지만, 공격자는 그래프로 생각하므로 방어자에게 불리합니다. Trailmark는 Claude와 같은 AI 모델에 이러한 그래프 기반 추론 기능을 제공하는 것을 목표로 합니다. 코드 변경을 통해 테스트 품질을 평가하는 방법인 변이 테스트는 많은 생존 변이체를 생성합니다. 이러한 변이체의 평면 목록은 동등한 변이체, 죽은 코드 또는 실제로 중요한 변이체를 구별하지 못합니다. Trailmark는 Claude가 신뢰할 수 없는 입력으로부터의 도달 가능성과 같은 보안 관련성을 기반으로 이러한 변이체를 분류할 수 있도록 합니다. 이 라이브러리는 AST를 위한 tree-sitter를 사용한 파싱, 고성능 그래프로의 인덱싱, 호출자, 호출 대상 및 공격 표면과 같은 정보 쿼리의 세 가지 단계로 코드를 처리합니다. Trailmark는 17가지 프로그래밍 언어를 지원하며 8가지 사전 구축된 Claude Code 스킬을 제공합니다. 이러한 스킬은 변이체 분류, 테스트 벡터 생성 및 프로토콜 다이어그램과 같은 작업에 도움이 됩니다. 예를 들어, "genotoxic" 스킬은 그래프 분석을 사용하여 생존 변이체를 분류합니다. 마찬가지로 "vector-forge"는 식별된 커버리지 격차를 해소하기 위한 테스트 벡터를 생성합니다. Trailmark는 또한 정적 분석기 및 감사 도구의 결과를 통합하여 코드 그래프에 매핑합니다. 암호화 라이브러리에 대한 내부 사용은 잘 테스트된 코드에서 동등한 변이체가 종종 대다수를 차지한다는 것을 보여주었으며, 이는 평면 목록에서 놓친 세부 정보입니다. 그래프 분석은 libhydrogen의 모든 암호화 작업에 영향을 미치는 단일 순열 기본 요소와 같은 아키텍처 병목 현상을 강조했습니다. 변이 테스트는 표준화된 테스트 벡터가 부족한 새로운 구성에 대해 테스트가 코드 동작을 제한하지 못하는 부분을 식별하는 데 유용합니다. 다양한 코드베이스에 걸쳐 일반적인 패턴이 나타났습니다. 산술 모듈은 높은 폭발 반경을 가지며, 코덱 파서는 주요 퍼징 대상이며, 속성 기반 테스트는 종종 희소합니다. 궁극적으로 Trailmark는 다양한 분석 도구를 연결하고 더 표적화된 보안 평가를 가능하게 하는 연결 조직 역할을 합니다."