Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
iotmap — 異種IoTプロトコルモデリングに関する研究プロジェクト | Kitploit
ツール/GitHubGitHub/algosecure/iotmap
IoTセキュリティネットワークマッピング情報収集
GitHubalgosecure/iotmap

iotmap

異種IoTプロトコルモデリングに関する研究プロジェクト

リポジトリを見る
541436年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

IoTMap

IoTMapは、1つまたは複数のプロトコルを同時に使用してIoTネットワークをモデル化するツールです。これは進行中の研究であり、モノのインターネットセキュリティに関する博士論文の一部です。このリポジトリは新しい結果が得られるたびに定期的に更新されます。現在、このプロジェクトはBLE、ZigBee、OS4Iの3つのプロトコルをサポートしています。さらに追加予定です。

必要条件 :

Python 3の要件

  • Python > 3.5
  • Scapy (requirementsファイルからインストールできますが、最新のソースからビルドすることを推奨します)
  • neo4j-1.7.6
  • docopt-0.6.2
  • prompt-toolkit-3.0.5
  • terminaltables-3.1.0
  • pycryptodomex-3.9.7

requirements.txtファイルを使用してパッケージをインストールできます:

root@kitploit:~
pip3 install -r requirements.txt

OSライブラリ

  • libgcrypt20-dev (KillerBeeを介したスニッフィング機能に必要) 使用しているシステム(DebianベースのOS、Arch LinuxベースのOS)に応じて、次を使用できます:
root@kitploit:~
sudo apt-get install libgcrypt20-dev # (debian-based distribs)
sudo pacman -S libgcrypt             # (archlinux-based distribs)

インストール

このリポジトリをクローンし、上記のすべての要件をインストールします:

root@kitploit:~
# For any distrib
git clone https://github.com/AlgoSecure/iotmap.git
cd iotmap
sudo pip install -r requirements.txt

# If debian-based
sudo apt-get install libgcrypt20-dev

# If archlinux-based
sudo pacman -S libgcrypt

次にNeo4Jをインストールします。ほとんどのディストリビューションには、組み込みのパッケージマネージャを介してNeo4Jが含まれています。ただし、tarballからインストールして使用する方が簡単な場合があります:

root@kitploit:~
cd /path/to/iotmap
cd database

# Replace the version number with the latest in the URL if necessary
wget -O neo4j-community.tar "https://neo4j.com/artifact.php?name=neo4j-community-3.5.9-unix.tar.gz"
mkdir neo4j-community && tar xvf neo4j-community.tar -C neo4j-community --strip-components 1

初回実行

プロジェクトの初回実行時には、データベースのユーザー名とパスワードを定義する必要があります。次のコマンドでデータベースを起動します:

root@kitploit:~
cd database
./neo4j-community/bin/neo4j console

Neo4Jが起動し、http://localhost:7474 でアクセスできるようになります。デフォルトのユーザー名とパスワードはそれぞれ neo4j と neo4j です。Iotmapはデフォルトのユーザー名とパスワード iotmap を使用します。

別の認証情報を設定したい場合は、core/databaseController.pyの46行目の値を次のように更新する必要があります:

root@kitploit:~
model = Model("bolt:http://localhost:7474", "username", "password")

iotmapの使い方

IoTMapの使用方法の詳細なドキュメントはこちらにあります

フレームワークを起動します:

root@kitploit:~
python3 iotmap.py

IoTMapは実行前にneo4jデータベースを起動しますが、データベースはすぐには利用可能になりません。10秒の待機でデータベースが利用可能になる場合もありますが、そうでない場合はiotmapを再実行する必要があります。

IoTMapは3つのモジュールを提供します:Database、Modelling、Sniffing。スニッフィングモジュールは開発中であり、完全には動作しません。モジュールを切り替えるには、モジュールの名前を入力します。

root@kitploit:~
python3 iotmap.py
Starting the database
Database is available at http://localhost:7474/



IIIIIIIIII              TTTTTTTTTTTTTTTTTTTTTTTMMMMMMMM               MMMMMMMM
I::::::::I              T:::::::::::::::::::::TM:::::::M             M:::::::M
I::::::::I              T:::::::::::::::::::::TM::::::::M           M::::::::M
II::::::II              T:::::TT:::::::TT:::::TM:::::::::M         M:::::::::M
  I::::I     oooooooooooTTTTTT  T:::::T  TTTTTTM::::::::::M       M::::::::::M  aaaaaaaaaaaaa  ppppp   ppppppppp
  I::::I   oo:::::::::::oo      T:::::T        M:::::::::::M     M:::::::::::M  a::::::::::::a p::::ppp:::::::::p
  I::::I  o:::::::::::::::o     T:::::T        M:::::::M::::M   M::::M:::::::M  aaaaaaaaa:::::ap:::::::::::::::::p
  I::::I  o:::::ooooo:::::o     T:::::T        M::::::M M::::M M::::M M::::::M           a::::app::::::ppppp::::::p
  I::::I  o::::o     o::::o     T:::::T        M::::::M  M::::M::::M  M::::::M    aaaaaaa:::::a p:::::p     p:::::p
  I::::I  o::::o     o::::o     T:::::T        M::::::M   M:::::::M   M::::::M  aa::::::::::::a p:::::p     p:::::p
  I::::I  o::::o     o::::o     T:::::T        M::::::M    M:::::M    M::::::M a::::aaaa::::::a p:::::p     p:::::p
  I::::I  o::::o     o::::o     T:::::T        M::::::M     MMMMM     M::::::Ma::::a    a:::::a p:::::p    p::::::p
II::::::IIo:::::ooooo:::::o   TT:::::::TT      M::::::M               M::::::Ma::::a    a:::::a p:::::ppppp:::::::p
I::::::::Io:::::::::::::::o   T:::::::::T      M::::::M               M::::::Ma:::::aaaa::::::a p::::::::::::::::p
I::::::::I oo:::::::::::oo    T:::::::::T      M::::::M               M::::::M a::::::::::aa:::ap::::::::::::::pp
IIIIIIIIII   ooooooooooo      TTTTTTTTTTT      MMMMMMMM               MMMMMMMM  aaaaaaaaaa  aaaap::::::pppppppp
                                                                                                p:::::p
                                                                                                p:::::p
                                                                                               p:::::::p
                                                                                               p:::::::p
                                                                                               p:::::::p
                                                                                               ppppppppp


                                Version=0.1

IoTMap > help

Core commands
=============

 Commands  Description
------------------------------
 database  Use database mode.
 sniffing  Use sniffing mode.
 exploit   Use exploit mode.


IoTMap >

各モジュールと機能には、利用可能な機能とその使用方法を一覧表示するヘルプメニューがあります。

Databaseモジュール

このモジュールはneo4jデータベースを管理し、対話します。

root@kitploit:~
IoTMap > database
IoTMap database > help

Core commands
=============

 Commands  Description
------------------------------
 database  Use database mode.
 sniffing  Use sniffing mode.
 exploit   Use exploit mode.


Database commands
=================

        Interact with the neo4j database.

List of available commands :
        addNodes
        clearDatabase
        exportDB
        getNodes
        help
        importDB
        importPcaps
        mergeNodes
        removeNode

For more information about any commands hit :
        <command name> -h

IoTMap database > 
											

データベースを構築するには、既存のデータベースまたはPcapファイルをインポートできます。ImportPcapsはPcapsをモデリング生成に使用する統一形式に変換します。このモジュールは、引数で指定されたプロトコルに応じた異なる抽出器を使用します。これらはextractorsフォルダにあります。メインプログラムは適切な抽出器を選択し、パケットジェネレータ(gen_packets.py)をマルチスレッドで実行して、統一形式のpcapを生成します。

Modellingモジュール

root@kitploit:~
IoTMap modelling > help

Core commands
=============

 Commands  Description
------------------------------
 database  Use database mode.
 sniffing  Use sniffing mode.
 exploit   Use exploit mode.


Modelling commands
==================

        Map the network of IoT devices detected by sniffing.

List of available commands :
        appGraph
        compareTo
        dlGraph
        help
        nwkGraph
        option
        run
        set
        transGraph

For more information about any commands hit :
        <command name> -h

IoTMap modelling >                   

このプログラムは、モデリングを作成する前にNeo4Jデータベースを起動します。データベースが起動すると、モデリングが開始されます。入力として与えられたpcapの分析から始まり、ノードを抽出して作成し、次にノードをリンクするエッジを作成します。4つのグラフが作成された後、結果はNeo4Jが提供するWebアプリケーション(http://localhost:7474/)で表示できます。

入力ボックスでCypherクエリを使用して、Webアプリケーションから直接データベースに問い合わせることもできます。

neo4j imports

ツールをダウンロード