GitHub 팔로워 봇넷, 숨겨진 연결고리를 찾아내다!

by DD
2주 전
조회수 4

저자는 GitHub 팔로워 분석 중 봇넷(Botnet)으로 의심되는 계정들을 발견, 계정 간의 특이한 패턴을 포착함

봇넷 계정들은 서로 팔로우하지 않지만, 거의 동일한 팔로잉 목록을 공유하며 봇넷 운영의 특징을 보임

Jaccard 유사도(Jaccard Similarity) 분석을 통해 계정 간의 높은 팔로잉 목록 중첩을 확인, 봇넷임을 입증함

봇넷 계정들은 오래된 계정(Aged Accounts)으로, 일반적인 봇 탐지 기법을 회피하는 특징을 보임

저자는 봇넷 탐지 방법론을 공개하고, API 호출 횟수 제한(Rate Limit)에 유의할 것을 강조함

봇넷(Botnet) 탐지 기법: Jaccard 유사도(Jaccard Similarity) 분석

본문에서는 봇넷 탐지를 위해 Jaccard 유사도(Jaccard Similarity)를 활용하여 계정 간의 팔로잉 목록 중첩 정도를 분석했다. Jaccard 지수 0.99 이상은 매우 높은 유사성을 의미하며, 이는 봇넷 계정들이 동일한 대상(Seed List)을 팔로우하고 있음을 시사한다.

Jaccard 지수 계산: 두 집합의 교집합 크기를 합집합 크기로 나눔

봇넷 특징: 서로 팔로우하지 않으면서 특정 대상(Target)을 공유하는 패턴

탐지 회피: 일반적인 봇 탐지 기법인 상호 팔로우(Cross-following)를 회피

이러한 분석 방법은 소셜 미디어(Social Media) 플랫폼에서 봇넷 탐지에 유용하게 활용될 수 있으며, API 호출 횟수 제한(Rate Limit)에 유의해야 한다.

봇넷(Botnet)의 은폐 전략: 오래된 계정(Aged Accounts) 활용

저자는 봇넷 계정들이 2015년부터 2021년까지 생성된 오래된 계정(Aged Accounts)임을 지적하며, 이는 봇넷 운영자들이 계정의 신뢰도(Trustworthiness)를 높이기 위한 전략임을 시사한다.

계정 연령(Account Age): 오래된 계정은 봇으로 의심받을 가능성이 낮음

상호 팔로우 회피: 일반적인 봇 탐지 기법 회피

봇넷 목적: 광고, 스팸, 악성 코드 배포

이러한 은폐 전략은 봇넷 탐지를 더욱 어렵게 만들며, 지속적인 분석과 새로운 탐지 기법 개발을 요구한다.

GitHub API를 활용한 봇넷(Botnet) 분석

저자는 GitHub API를 사용하여 팔로잉 목록을 수집하고, 이를 기반으로 봇넷을 분석했다. API를 활용하면 대규모 데이터 수집이 가능하지만, API 호출 횟수 제한(Rate Limit)에 유의해야 한다.

API 호출: 팔로잉 목록 수집에 필요한 API 호출 횟수 계산

Python 스크립트: urllib.request, json, os, time, itertools 모듈 사용

코드 공개: 분석에 사용된 Python 스크립트(gh_botnet_audit.py) 공개

API를 활용한 분석은 자동화된 봇 탐지 시스템 구축에 기여할 수 있으며, API 사용 정책 준수가 중요하다.

봇넷(Botnet) 탐지 회피: 팔로잉 목록 중첩(Following-list Overlap) 활용

봇넷 운영자들은 상호 팔로우를 회피하여 탐지를 어렵게 만들지만, 저자는 팔로잉 목록 중첩(Following-list Overlap)을 통해 봇넷을 탐지했다. 이는 봇넷 계정들이 동일한 대상(Seed List)을 팔로우한다는 점을 이용한 것이다.

봇넷 특징: 서로 팔로우하지 않음, 동일한 대상 팔로우

탐지 방법: Jaccard 유사도 분석

봇넷 목적: 계정 신뢰도 조작, 악성 코드 배포

이러한 탐지 방법은 소셜 미디어(Social Media) 플랫폼에서 봇넷 탐지에 효과적이며, 지속적인 분석과 새로운 탐지 기법 개발을 요구한다.

봇넷(Botnet)의 활용 목적과 잠재적 위험

저자는 봇넷 계정들이 계정 신뢰도 조작, 악성 코드 배포, 스팸, 피싱(Phishing) 공격 등에 활용될 수 있다고 경고한다. 봇넷은 소셜 미디어(Social Media) 생태계의 신뢰를 저해하고, 사용자들에게 금전적, 정신적 피해를 입힐 수 있다.

봇넷 활용 목적: 광고, 스팸, 악성 코드 배포, 계정 판매

잠재적 위험: 피싱, 사기, 개인 정보 유출

대응 방안: 지속적인 봇 탐지, 사용자 교육, 플랫폼 보안 강화

따라서 봇넷에 대한 지속적인 감시와 대응이 필요하며, 플랫폼 운영자(Platform Operator)와 사용자(User) 모두의 주의가 요구된다.

Found a Coordinated GitHub Follow Botnet Hiding in My Followers?