Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
phantomstars — GitHub의 가짜 참여 자동 탐지 및 추적 — 일일 CI, 인프라 제로 | Kitploit
도구/GitHubGitHub/tg12/phantomstars
OSINT (Open Source Intelligence)ReconnaissanceScripting & AutomationInformation GatheringThreat IntelligenceLearning & EducationCrawlerCurated ResourcesAnti-Bot
GitHubtg12/phantomstars

phantomstars

GitHub의 가짜 참여 자동 탐지 및 추적 — 일일 CI, 인프라 제로

743183개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

phantomstars Python 3.13 Apache 2.0 GitHub Actions Daily

phantomstars

GitHub에서 가짜 참여를 자동 탐지하고 추적합니다

JS Labs 프로젝트 — AI Slop Intelligence 이니셔티브의 일환.
매일 실행됩니다. 모든 의심 계정을 점수화합니다. 조직적인 봇 캠페인을 탐지합니다.
손상된 저장소에 직접 이슈를 등록하여 관리자가 조치를 취할 수 있게 합니다.


이 프로젝트 지원하기

BTC   3QjWqhQbHdHgWeYHTpmorP8Pe1wgDjJy54
ETH   0x5851e6145F4773d1585b8686095FB16E368a4dA1
ZEC   t1KSR5YkNPbjqRSCoLKo5AddFWdm9Kzxh1B


왜 이런 도구가 필요한가

GitHub 스타는 신뢰 신호입니다. 개발자들이 무엇을 평가하고, 무엇에 의존하며, 무엇을 추천할지 결정하는 기준입니다. 그 신호가 조직적으로 훼손되고 있습니다.

2024~2026년 AI 붐 동안 품질이 낮거나 악성인 저장소에 신뢰도를 조작하기 위한 봇 팜 업계가 등장했습니다. 48시간 만에 800개의 스타를 받은 프로젝트는 검색 결과를 훑는 개발자에게 정상적인 프로젝트로 보입니다. 그것이 바로 요점입니다. 가짜 참여의 목표는 스타 자체가 아니라, 그 스타가 만들어내는 사회적 증명과 그 사회적 증명이 영향을 미치는 후속 결정입니다.

그 패턴은 식별 가능합니다. 같은 주에 생성된 계정, 프로필 소개 없음, 팔로워 없음, 원본 저장소 없음, 2시간 창 안에서 같은 15개 저장소에 스타를 누른 경우. 단일 캠페인이 아니라 매일 수천 개의 계정에 걸쳐 수십 개의 캠페인이 동시에 실행되고 있습니다. 데이터는 참여자 185명 중 185명이 봇인 저장소를 보여줍니다. 100% 가짜 비율입니다. 트렌딩 순위 전체가 아무것도 없는 기반 위에 세워졌습니다.

phantomstars는 이 문제가 해결 가능하기 때문에 만들어졌습니다. GitHub 공개 API의 신호 대비 잡음 비율은 현재까지도 충분히 높아서 조직적인 캠페인이 뚜렷한 지문을 남깁니다. 이 프로젝트는 그 지문을 읽고, 원시 데이터를 공개하며, 영향을 받은 저장소 관리자에게 직접 알립니다.

이 프로젝트는 JS Labs의 광범위한 AI Slop Intelligence 연구의 일부로, 저품질 AI 생성 콘텐츠가 개발자 생태계를 범람하는 메커니즘과 그 측정 가능한 영향을 조사합니다. 가짜 참여는 주변부 문제가 아닙니다. 그것은 슬롭(slop)을 실제 사용자 앞에 전달하는 유통 메커니즘입니다.


기능

phantomstars는 매일 실행되는 GitHub Actions 작업으로 다음을 수행합니다.

  1. GitHub Trending 페이지를 스크래핑하여 오늘 스타를 받고 있는 저장소를 수집합니다
  2. GitHub Search API를 쿼리하여 최근 7일 안에 갑작스러운 스타 활동이 있는 저장소를 찾습니다(더 넓은 창은 24시간 스캔만으로 놓치는 다일 캠페인을 포착합니다)
  3. r/osinttools와 r/coolgithubprojects의 최근 Reddit 게시물에서 지난 2일 동안 GitHub 저장소 링크를 추출하여 추가 후보 저장소를 시드합니다
  4. Events API를 통해 최근 참여 이벤트(스타, 포크)를 가져옵니다(저장소당 최근 24시간)
  5. GraphQL을 통해 참여한 모든 계정의 전체 프로필을 가져옵니다: 계정 생성 날짜, 팔로워/팔로잉 수, 프로필 소개, 저장소 이력
  6. 계정 연령, 프로필 완성도, 저장소 패턴, 활동 이력을 종합한 휴리스틱 모델로 모든 계정에 점수를 매깁니다
  7. 타임스탬프 클러스터링과 union-find를 사용하여 조직적 캠페인을 탐지합니다: 3시간 창 안에서 참여한 의심 계정의 클러스터
  8. 원장 쓰기, 저장소 수준 비율, 대시보드, 알림 전에 오탐지 허용 목록을 적용하여 표시되는 모든 지표가 동일한 모집단을 사용하도록 합니다
  9. 모든 의심 계정을 이 저장소에 커밋되는 append-only JSONL 원장에 추가합니다
  10. 어떤 저장소가 표적이 되고 있는지, 어떤 탐지 소스가 이를 발견했는지, Events API 창이 완전했는지 제한되었는지를 보여주는 저장소별 인텔리전스 피드를 게시합니다
  11. 표적 저장소에 직접 GitHub 이슈를 등록하여 관리자가 자신의 이슈 트래커에서 캠페인 데이터를 볼 수 있게 합니다
  12. GitHub Actions 작업 요약에 형식화된 스캔 보고서를 작성합니다

서버 없음. 데이터베이스 없음. 인프라 비용 없음.


자주 묻는 질문

표적 저장소에 알림을 보내나요?

네. 저장소의 가짜 비율이 40%를 초과하거나 조직적 캠페인이 탐지되면 phantomstars는 해당 저장소에 직접 이슈를 엽니다. 이슈에는 전체 의심 계정 표, 캠페인 구성원, 종합 점수, 계정 생성 날짜가 포함됩니다. 관리자가 조사하고 GitHub에 신고하는 데 필요한 모든 정보입니다.

표적 저장소에서 이슈가 비활성화되어 있으면 알림은 조용히 건너뛰고 스캔 로그에 기록됩니다.

특정 저장소 하나를 검사하도록 요청할 수 있나요?

네.

  • 일반적인 일회성 검사는 owner/repo 형식으로 저장소를 제출하고 대상 스캔을 실행하면 됩니다.
  • 평생 감사(lifetime audit) 요청은 일회성 평생 모드를 사용하세요. 일일 스캔과는 별개입니다.

이렇게 나눈 이유:

  • 일반 스캔 모델은 최근 공개 참여와 낮은 운영 비용을 위해 설계되었습니다.
  • 평생 감사는 대형 저장소의 경우 수만 개의 스타와 수천 개의 포크를 처리할 수 있습니다.
  • 일회성 조사에는 적합하지만 기본 일일 경로에는 너무 비싸고 너무 느립니다.
  • 따라서 평생 요청은 안전장치가 있는 명시적 일회성 모드에서만 실행됩니다.

오탐지를 신고할 수 있나요?

네. 계정이 data/suspects.jsonl에 나타나고 분류가 잘못되었다고 생각되면 제공된 템플릿을 사용하여 오탐지 이슈 열기를 통해 신고하세요. 보고서는 허용 목록에 추가되기 전에 수동으로 검토됩니다. 허용 목록은 data/allowlist.txt에 저장되며, 여기에 있는 계정은 향후 모든 스캔과 의심 계정 원장에서 제외됩니다.

캠페인 ID란 무엇인가요?

캠페인 ID(예: c-a3f9b2e1)는 해당 캠페인의 구성원 로그인 정렬 집합의 SHA-256 해시에서 파생된 결정적 8자리 16진수 지문입니다. 동일한 계정 그룹은 독립적인 스캔 실행에서도 동일한 캠페인 ID를 생성하므로 종단 추적이 가능합니다. 저장소 이름, 사용자 이름 또는 외부 식별자가 아닙니다.

안정성: 캠페인의 구성원 집합이 변경되지 않는 한 ID는 안정적입니다. 스캔 사이에 봇이 추가되거나 정지되면 구성원이 변경되었으므로 ID도 변경됩니다. 이는 예상된 동작이며 봇 팜 구성의 실제 변화를 반영합니다.

계정 생성 날짜를 확인하나요?

네. 모든 계정의 생성 날짜는 GitHub GraphQL API(createdAt 필드)에서 가져와 각 의심 계정 레코드에 account_created_at으로 저장됩니다. 또한 가짜 계정을 판별하는 가장 강력한 단일 신호인 계정 연령 점수의 주요 입력값이기도 합니다. 참여 2일 이내에 생성된 계정은 연령만으로 1.0점을 받습니다.

얼마나 확실한가요?

개별 점수는 상당한 오탐률을 지닙니다. 프로필이 빈약한 신규 개발자도 정당하게 0.75+ 점수를 받을 수 있습니다. 이 도구는 이슈를 제기하기 전에 캠페인 수준의 증거를 요구함으로써 이를 보완합니다. 의심 계정 하나만으로는 충분하지 않습니다. 같은 주에 생성되고 모두 0.75+ 점수를 받았으며 90분 안에 모두 참여한 40개 이상의 계정으로 구성된 조정된 클러스터는 다른 문제입니다. 그 지점에서 신뢰도가 실행 가능해집니다.

데이터는 항상 확률적입니다. 이슈 본문에도 그렇게 명시되어 있습니다. 목표는 관리자에게 신호와 원시 증거를 제공하여 스스로 판단하게 하는 것입니다.


실시간 대시보드

날짜검사 대상가능성 높은 가짜의심 계정캠페인신규 가짜 (24시간)
2026-06-161846221162556190
2026-06-152274418185661397
2026-06-141953355159844310
2026-06-132012301171147251
2026-06-122298336196257300
2026-06-111957385157242356
2026-06-102043687135650665
2026-06-092199690150944632
2026-06-081913450146350424
2026-06-071797658113930618
2026-06-062625712191340620
2026-06-052403673173053617
2026-06-042237441179641367
2026-06-032331488184353431
2026-06-022795773202237616
2026-06-012490533195739355
2026-05-312302458184432280
2026-05-302576530204620356
2026-05-292838733210542369
2026-05-282748694205439396
2026-05-272193560163332491
2026-05-261930236169443190
2026-05-251526214131232158
2026-05-242170358181239265
2026-05-232548426212243317
2026-05-222318340197847247
2026-05-211981348163325277
2026-05-201613268134523163
2026-05-195463630412167442
2026-05-1888386707950128340

오늘 가장 많이 표적이 된 저장소

도구 다운로드