All Projects → TerribleDev → Shodan.Net

TerribleDev / Shodan.Net

Licence: MIT license
c# client for shodan.io api

Programming Languages

C#
18002 projects

Build status

Visit the official Shodan API documentation at:

https://developer.shodan.io

This is still in active development, error handling might not well handle well. Best bet when working with any libraries you didn't write..harden your calls!

APi Docs

You can find doxygen docs here

Installation

install-package Shodan.Net

Getting started

You need to have an Api key. Get your api key here.

Create a shodan client. Note that ShodanClient inerhits from IDisposable, so you should wrap it in a using, or make sure it will be disposed. Shodan client is thread safe, so you should be able to keep 1 object around for many requests.

var client = new Shodan.Net.ShodanClient("myapiKey");

Now just query away. You should be able to find all the actions in the docs or just through the docs in intellisense.

await client.GetPortsAsync();
await client.GetHostAsync("172.1.1.0");
await client.GetMyIpAsync();

Searching

Searching shodan requires you to build up queries, and facets to make it easier we have used a generator pattern to produce queries.

           await client.SearchHosts(
                query: a => a.Withcity("boston")
                      .Withcountry("usa")
                      .Before(DateTime.Now.AddDays(-5)),
                facet: b => b.WithAsn()

                );

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].