피드로 돌아가기
Dev.toSecurity
원문 읽기
GreyNoise Has a Free API — Find Out If an IP Is Scanning the Internet Right Now
GreyNoise가 무료 API를 공개해 보안 팀이 인터넷 스캐너와 실제 위협을 분류해 거짓 경보 90% 제거
AI 요약
Context
서버 로그에서 SSH 포트(22)를 탐사하는 수십 개의 IP가 발견되면, 모든 IP를 실제 위협으로 판단해 불필요한 보안 대응을 수행하게 된다. 이는 Shodan, Censys 같은 정당한 인터넷 스캐너와 실제 악의적 공격자를 구분하지 못하기 때문이다.
Technical Solution
- GreyNoise API를 활용해 IP 분류: RIOT(알려진 서비스), noise(스캐닝 활동), classification(양성/악의적) 3개 필드로 평가
- 커뮤니티 티어 무료 API로 일일 50회 IP 조회: 인증 불필요한 엔드포인트(https://api.greynoise.io/v3/community/{ip}) 직접 호출
- Python requests 라이브러리로 필터링 로직 구현: RIOT=true면 반환(알려진 서비스), noise=true && classification=benign이면 반환(알려진 스캐너), classification=malicious만 위협으로 표기
- 보안 경보 파이프라인에 통합: fail2ban 또는 SIEM에서 생성된 IP 목록을 자동으로 GreyNoise 조회 후 THREAT/NOISE/UNKNOWN으로 분류
- 다층 위협 정보 스택 구성: AbuseIPDB(평판), GreyNoise(노이즈 필터링), Shodan(서비스 지문), VirusTotal(파일/URL), HIBP(이메일 유출) API를 조합
Impact
초기 사례에서 SSH 포트 탐사 IP의 90%가 정당한 인터넷 스캐너로 판정되어 거짓 경보 감소 확인.
Key Takeaway
보안 팀이 수동으로 모든 IP를 검토하는 대신 무료 공개 인텔리전스 API를 자동화 파이프라인에 통합하면, 실제 위협에 집중할 수 있는 신호대잡음비를 크게 개선할 수 있다.
실천 포인트
SSH/HTTP 포트 스캔 경보가 많은 소규모 팀 또는 개인 서버 운영 환경에서 GreyNoise 커뮤니티 API(무료, 일일 50회)를 fail2ban이나 SIEM 경보 필터 단계에 삽입하면, 거짓 경보로 인한 운영 피로를 줄이고 실제 악의적 접근에만 대응할 수 있다.