banner
肥皂的小屋

肥皂的小屋

github
steam
bilibili
douban

shodanからエクスポートしたJSONデータをMongoDBデータベースにインポートする

事情起因#

年末になると、ついついやることがなくなります。

前回、shodanのライフタイムメンバーシップを 1 ドルで手に入れることができました。1 ヶ月につき 20 回、1 回あたりの上限は 10000 件のデータをダウンロードできます。

暇つぶしに shodan で見つかる phpmyadmin のデータを保存してみました。

免責事項:本記事で使用されているデータはすべて合法な情報源から取得され、テスト目的でのみ使用されます。24 時間以内に削除されました。

shodan データのダウンロード#

shodan は比較的古いネットワークセキュリティエンジンで、主な機能はオンラインで公開されているさまざまなデータベースやウェブサイトを検索することです。

msf と組み合わせて使用することもできますが、個人的にはウェブページの左側にあるカテゴリのクイックジャンプが便利だと思います。

image

中国で検索できる phpmyadmin サーバーは約 11000 台ありますが、ちょうど shodan1 のポイントで 10000 件のデータをダウンロードできます。

私は 10000 件のデータをダウンロードしました。

ダウンロード時に形式を選択すると、XML は使用が推奨されていないため、json をダウンロードしました。

ダウンロードしたデータを開いてみると、行ごとに並べられていることがわかります。

image

フォーマット済みの json データを navicat のインポート機能で直接インポートしようとしましたが、失敗しました。そのため、直接 mongodb データベースにインポートしました。

mongodb データベースのインポート#

navicat を使用して mongodb データベースにインポートしようとしましたが、json データが標準化されていないと表示されました。

mongodb のインストール方法は以前の記事で紹介しました:「Win10 に mongodb をインストールする」

インストール後、mongodb のデフォルトパスに移動します:

C:\Program Files\MongoDB\Server\4.2\bin

ここで cmd を開き、次のコマンドを入力します:

mongo.exe

mongodb のコマンドラインインタラクティブモードが開き、データベースを作成します:

use shodan

exit と入力して mongoimport.exe を使用して json データをインポートします:

mongoimport.exe --db shodan_data --collection phpmyadmin_data --file E:\share\shodan-export.json\shodan_data.json

dbは作成したデータベースです(実際には作成せずに直接指定することもできます)、collectionはコレクション名で、mysqlのテーブルに似ています。

fileにはダウンロードした shodan の json ファイルの場所を指定します:

image

2、3 秒でインポートが完了しました。navicat で確認してみましょう:

image

データが正常にインポートされましたので、バッチ処理を開始できます。... 何を言っているのでしょうか?

PS:navicat はデータベースを表示するためのツールとして非常に優れていますが、データのインポートに関しては本当に劣っています。

以上です。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。