Skip to content
Agentmart
Submit a tool

greynoise

Classify IP addresses as internet scanners (benign/malicious) or targeted attackers — filters noise from security alerts

Skill by taracodlabs

IndexedApache-2.0★ 863
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/taracodlabs-greynoise-f53c6b

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Classify IP addresses as internet scanners (benign/malicious) or targeted attackers — filters noise from security alerts

Use cases: security

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Node.js package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/greynoise

What's inside

Skill name
greynoise
Description
Classify IP addresses as internet scanners (benign/malicious) or targeted attackers — filters noise from security alerts
License
Apache-2.0
Instructions
86 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (3)

  • SKILL.md
  • index.ts
  • skill.json

SKILL.md (first lines)

# GreyNoise — Internet Scanner Intelligence

GreyNoise collects and analyses internet-wide scan traffic. It tells you whether an IP hitting your firewall is a known mass-scanner (benign research tool or malicious crawler) versus a targeted attacker — helping SOC teams filter out internet noise from real threats.

**Community tier:** The `/v3/community/{ip}` endpoint works with limited volume even without a key. Set `GREYNOISE_API_KEY` for higher rate limits.

## When to Use

- An IP triggers a firewall rule and you want to know if it is just background internet noise
- SOC triage: is this alert a known scanner or a targeted attack?
- Filter false positives from SIEM before escalating an alert
- User asks "is this IP a scanner?", "is this noisy traffic?", "is IP X benign?"

## How to Use

### Check if an IP is a known internet scanner

```powershell
$ip      = "71.6.135.131"
$headers = @{}
if ($env:GREYNOISE_API_KEY) { $headers['key'] = $env:GREYNOISE_API_KEY }

$result = Invoke-RestMethod -Uri "https://api.greynoise.io/v3/community/$ip" -Headers $headers
Write-Host "IP:             $($result.ip)"
Write-Host "Noise:          $($result.noise)"        # true = mass-scanner
Write-Host "RIOT:           $($result.riot)"         # true = trusted benign service
Write-Host "Classification: $($result.classification)"  # benign | malicious | unknown
Write-Host "Name:           $($result.name)"
Write-Host "Last seen:      $($result.last_seen)"
Write-Host "Link:           $($result.link)"
Write-Host "Message:        $($result.message)"
```

### Triage a batch of IPs from a firewall log

```powershell
$ips = @("1.1.1.1", "8.8.8.8", "71.6.135.131", "45.83.66.42")
$headers = @{}
if ($env:GREYNOISE_API_KEY) { $headers['key'] = $env:GREYNOISE_API_KEY }

foreach ($ip in $ips) {
    try {
        $r = Invoke-RestMethod -Uri "https://api.greynoise.io/v3/community/$ip" -Headers $headers
        $tag = if ($r.riot) { '[RIOT-trusted]' } elseif ($r.noise) { '[SCANNER]' } else { '[TARGETED?]' }
        Write-Host "$ip  $tag  $($r.classification)  $($r.name)"
    } catch {
        Write-Host "$ip  [ERROR]  $($_.Exception.Message)"
    }
    Start-Sleep -Milliseconds 200
}
```

### Interpret the results

```
noise = true   → IP is a known mass-scanner (benign researchers, crawlers, etc.)
riot  = true   → IP belongs to a trusted service (Cloudflare, Google, AWS, etc.)
classification = "malicious"  → Known malicious scanner — block and investigate
classification = "benign"     → Probably safe background noise — may deprioritise
classification = "unknown"    → No data — treat with caution
```

## Examples

**"Is 71.6.135.131 an attacker?"**
→ Returns classification: malicious, noise: true — known malicious scanner.

**"This IP keeps hitting our web server — is it just background noise?"**
→ `noise: true` means it is scanning the whole internet, not targeting you specifically.

**"Is 8.8.8.8 a threat?"**
→ `riot: true` — belongs to Google DNS, trusted RIOT (Rule It Out) list.

## Cautions

- Community endpoint returns limited data — `GREYNOISE_API_KEY` unlocks full context
- `noise: false` and `riot: false` does not mean the IP is malicious — GreyNoise may simply have no data for it
- Data reflects GreyNoise's scanner observations — gaps exist for low-volume IPs
- Free community endpoint: ~50 lookups/day per source IP without a key

## Requirements

- No key required for low-volume community lookups
- `GREYNOISE_API_KEY` — free community key at https://viz.greynoise.io/account

From taracodlabs/aiden, Apache-2.0.

More from taracodlabs/aiden

Signals

Stars
863
Forks
150
Open issues
12
Last commit (this folder)
May 3, 2026 (5 months ago)
Last release
Oct 19, 2026 (8 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from taracodlabs

Cite this page

greynoise skill. Agent Mart. https://agentmart.dev/skills/taracodlabs-greynoise-f53c6b (last updated 2026-10-24)