euniclusShodanとはインターネット上に存在するデバイスの情報を収集する検索エンジンです。通常の検索エンジンとは異なりwebコンテンツを収集するのではなくOSのバージョンやサーバの種類などを収集のターゲットとしています。このShodanをPythonから使った者は無限の可能性をその手にすると言われています。準備PythonからShodanを使用する場合、APIKEYを取得するためにShodanアカウントが必要です。アカウントと言ってもユーザー名とパスワードとメールアドレス入れて終わりでした。少なくとも僕が作った時は。Python用のShodanライブラリーをインストールします。shodanこれで準備が整いました。使い方まずは簡単なサンプルを作ります。api.search('ssh')print(result['total'])#print(result['matches'][0])except:print("error")実行するとこのようになります。20161107120161107sshで検索をかけた結果合計20161107件の情報が見つかりました。情報自体はmatchesの中に配列で入っています。hostメソッドを使うことで指定したホストの情報を取得することができます。{}".format(key,result[key]))except:print("error")実行するとこのようになりました。445]今回は二つサンプルを作りましたが、他にもいろいろできるようです。https://developer.shodan.io/apiとにかくShodanはネットワークに接続されているサーバーやIotデバイスなどのありとあらゆる情報を集めているみたいです。これからインターネットに接続される機器はさらに増えていくと思うので、Shodanの使い方を知っていれば何かの役に立ちそうです。