まえがき
かつて2000年代前半に、多くの人は、読み取り(書き込み)されたWindowsマシンとリソース(SMB)を検出するために、プロバイダーのネットワーク、さらに遠くのターゲットを定期的に「スキャン」したという事実に楽しまれていました。 検索プロセスは基本的なものでした。IPアドレスの範囲またはネットワークマスクが設定され、さまざまなツール(LANguardネットワークスキャナー、xIntruderなど)を通じてアドレスがスキャンされ、サーバーが特定されました。 多くの場合、検出されたマシンでは、さまざまなネットワークリソース(ディスク、プリンター、ディレクトリ)を読み取りに使用でき、書き込みにはあまり使用されていませんでした。 IPC $とユーザー「Guest」を使用した匿名セッションを通じて、マシン上のリソースを転送することができました。パスワードのない「Administrators」のメンバーがいることもあります。また、検出されたマシンに対する「アクティブな」効果の後、Windows NT 4.0またはWindowsを実行しているサーバーを見つけることができました2000サーバー。 当時のWindows 98が搭載されたマシンを見つけることが運がよければ、それは簡単になりました-当時、指定されたOSにはSMBでの作業の実装など、さまざまな脆弱性が含まれていました。リソースにアクセスするためのブルートフォースは、ダイヤルアップでも数分で実行されました接続。 昔に突入したい人のために、Windows 9xへの「アクセス」- ハッキング公開:ネットワークセキュリティの秘密とソリューションについて詳しく書かれています。 第4章:Windows 95/98とMeのハッキング 。 しかし、記事の残りの部分はそれについてではありません。
2019年に、そのような「エンターテイメント」が可能になるとは思いもしませんでした。 似ているのは、他の人が利用できるすべての好奇心をそそるリソースを見つけやすいことです。 さらに、過去2年間で人気のあるトレンド(MongoDBまたはElasticsearchデータベースの検索がアクセスできるようになっている)ではなく、少し現実的なサービスに焦点を当てます。
さらに、私は手順全体、彼らの倫理規範を評価しないことを提案します。この投稿は、ロシア連邦刑法の一部の記事または他の州の法律からの同様の規範に起因する行動の呼びかけではないことに注意してください。
ネットワークファイルシステム(NFS)
ネットワークファイルシステム(NFS) -ファイルシステムへのネットワークアクセスのためのプロトコルで、ネットワークを介してリモートファイルシステムに接続(マウント)できるようにし、ユーザーがファイルにアクセスできるようにし、ローカルファイルと同じようにこれらのファイルを操作できるようにします。
もちろん、市場で入手可能なほとんどのネットワーク接続ストレージ(NAS)はNFSをサポートし、NFSサービスを展開できるオペレーティングシステムを備えたサーバーだけでなく、ローカルリソースへのアクセスも提供します。
Ubuntu OSおよびIPアドレス192.168.1.1からサーバーリソースにアクセスするための設定は、/ etc / exportsファイルに含まれており、次の形式のエントリです。
- / data / place1 192.168.1.0/255.255.255.0(rw,no_subtree_check,nohide,async)192.168.101.0/255.255.255.0(rw,no_subtree_check,nohide,async)
- data / place2 192.168.1.0/255.255.255.0(rw,no_subtree_check,nohide,async)192.168.101.0/255.255.255.0(rw,no_subtree_check,nohide,async)
この場合、ネットワーク192.168.1.0/255.255.255.0、192.168.101.0/255.255.255.0のIPアドレスを持つクライアントに対して、サーバーとそのリソース/データ/ place1へのNFSアクセスが可能です。
/ home / user / exampleなどのローカルディレクトリにリモートリソースをマウントします。クライアントが許可されたサブネット上にあり、NFSクライアントがインストールされている場合、(Ubuntu)コマンドを使用して可能です。
mount -t nfs 192.168.1.1:/data/place1 /home/user/example
IPアドレスの代わりに*または(全員)が指定されている場合、多くの場合、クライアントはシステムにリモートリソースをマウントできます。
ユーザー(たとえば、Ubuntuの下)は、ターミナルに入力するだけです:showmount -e ip-targetと、サーバー(サーバーのエクスポートリスト)で利用可能なリソースに関する情報を取得します。
例:
showmount -e 81.24..
Export list for 81.24..:
/home/admin 192.168.52.1/24
したがって、次のシナリオが形成されます。NFSを実行しているサーバーを検出し、サーバー上の使用可能なリソースを決定し、結果を単一の出力フォームに統合して、状況に応じて続行します。
リソースに何ができるか-明らかに、何でも:
- たとえば、「オープン」NASデバイスの場合のインターネットユーザーの個人ファイル。
- 企業全体、データベース、データベースアーカイブのファイルを含むディレクトリ。
- 多くの場合、アドレスが/ home / *のディレクトリ(.sshにキーがあり、書き込み可能)
- ビデオ監視システムのファイルを含むディレクトリ。
- その他...
IPアドレスを取得する
グローバルインターネット上のNFSを使用したサーバーの検出に関しては、2つの方法があります。独立した方法、さまざまなツールを使用する方法、既製のサードパーティスキャン結果、データベース、サービスです。 実際、すべてIPアドレスのリストを取得することになります。 ローカルネットワークでは、オプションは明白だと思います-独立して行動します。
開いているTCPポート111、2049は、NFSサービスが機能している証拠として役立ちます。
サーバーIPアドレスのリストを独立して取得するには、アドレス範囲またはサブネット全体をスキャンして、指定された開いているポートの存在を確認するだけで十分です。 これには、nmap、masscanなどのツールが適しています。
たとえば、コマンドmasscan -p111,2049 200.26.1XX.0/24 —rate=10000
開いているポート111、2049 masscan -p111,2049 200.26.1XX.0/24 —rate=10000
ネットワーク200.26.1XX.0 / 24が数秒間スキャンされます。
Scanning 256 hosts [2 ports/host]
Discovered open port 2049/tcp on 200.26.1XX.28
Discovered open port 111/tcp on 200.26.1XX.15
Discovered open port 111/tcp on 200.26.1XX.20
Discovered open port 111/tcp on 200.26.1XX.28
検出された各IPアドレスに加えて、次のコマンドを適用できます。
showmount --no-headers -e 200.26.1XX.28
結果:
/usr/common *
明らかに、自分でインターネット空間の何百万ものIPアドレスをスキャンすることは可能ですが、これは最速の方法ではなく、素晴らしいShodanサービスはサブタスクのソリューションになる可能性があります、もちろん他にもありますが、これには非常に便利な構文とAPIがあります 。 サービスの機能の説明を掘り下げることは、この記事の目的ではありません。 簡単に説明すると、このサービスはインターネットに接続されたデバイスの高度な検索を提供します。 検索条件は、ネットワーク識別子およびその他のメタデータ(証明書のシリアル番号など)にすることができます。 Shodanにはターゲットを絞った検索のための多くの機能がありますが、たとえば、mongodb、elastic、またはapacheという製品名の製品基準があるため、NFSで個別の検索は見つかりませんでした。 したがって、Web NFSを使用すると、次のクエリを検索できます:nfs、tcp 2049、tcp 111、 Portmap:2049など。
または、Shodanクライアント(CLI)をインストールし、サービスに対するKEY APIを初期化して、コマンドラインから検索を呼び出します。例:
- shodan search --fields ip_str、ポートPortmap:2049
- shodan search --fields ip_str、port --separator、nfs
結果:
139.196.154.23,111、
198.27.116.37,111、
95.211.192.96,111、
80.23.66.122,111、
210.116.82.97,111、
192.198.82.3,111、
165.227.67.242,111、
116.12.48.9,111、
85.34.250.102,111、
182.75.249.197,111、
192.151.212.175,111、
119.216.107.127,111、
217.59.68.2,111、
178.159.12.97,111、
...
したがって、有効なNFSサービスを持つデバイスのIPアドレスのリストを取得する方法は理解できます。
特定のサーバーで使用可能なNFSリソースに関する情報を取得します。
この問題をまとめて解決する方法は多数あります。bashスクリプトを作成する、showmountを呼び出して一連のコマンドからトリッキーなパイプラインを編成する、その他のオプション-好きな人。
私の研究では、Pythonでこの問題を2つの異なる方法で解決しました。 最初の方法は、sshを介してNFSクライアントを使用してUbuntuのパーソナルサーバーに接続し、目的のIPアドレスのプールを使用してshowmountコマンドを呼び出します。 2番目の解決策は、純粋なPythonです。
私は疑問が生じるかもしれないと思う:なぜそれがそんなに難しいのか、なぜPythonでは?
以前のHabrに関する記事のように、Lampyreツールを使用するので、2月26日に彼らはPythonでプラットフォームにモジュールを書き込むことができるAPIを公開しました。
Lampyreについて簡単に説明します。これは、同じ目的でよく知られた人気のあるツールであるMaltegoに類似した、Windows用の「厚い」クライアントを使用したOSINTおよびデータ分析用のソフトウェアプラットフォームです。 Maltegoと同様、Lampyreは「すぐに使える」さまざまなサービスに対する一連のリクエストを提供します。 クエリは、概念的には、既知の製品からの変換と同等です。 何かが足りない場合、独自のリクエストを書くことが可能になりました。 Lampyreで提供されるリクエストは、独立して記述されたプラットフォームインフラストラクチャで実行されます-マシン上で。 つまり、ユーザーはPythonをインストールし、必要なすべてのライブラリをコードで使用する必要があります。
APIの機能をテストすることにしました。 重要な点は、特にユーザーがサービスから独自のKEY APIを持つ必要がないため、LampyreはShodanへのいくつかの「リクエスト」を既に持っているということです。 したがって、1回のリクエストで、NFSサービスを上げたIPアドレスのリストを取得できます。2回目のリクエストで、私が書いたモジュールは利用可能なリソースをチェックし、同じグラフ上でリソースの特性で結果を視覚化します。
そしてここ韓国
Shodanから検索してモジュールをテストすると、アジア諸国のShodanサービスによるスキャン結果の品質と量、状況が不安定なリソースにどのように関係するかを見ることが興味深いものになりました。 選択は大韓民国にかかった、私は韓国が非常に技術的に先進国であると言う必要はないと思う、そして私はあなたがそのネットワークで面白い何かを見つけることができることを提案した。
Shodanによる検索、クエリ: nfs 、国:大韓民国コード、 kr
結果はすぐに来ました(下の画像では、一般的なスキームの一部のみです)。
ホストリスト:
- psi.kaist.ac.kr
- hulk.kaist.ac.kr
- messi.kaist.ac.kr
- marvel.kaist.ac.kr
- kaist.ac.kr
- ai1.kaist.ac.kr
- jarvis3.kaist.ac.kr
- baraddur.kaist.ac.kr
- rho.kaist.ac.kr
- jarvis.kaist.ac.kr
それらのすべては、グラフと名前の両方で見ることができるように、AS1781としてリストされています- 韓国科学技術院
韓国先端技術研究所 -大田にある韓国を代表する学術研究大学は、韓国の全国ランキングの2番目の行にあります。 大学は一貫して韓国のトップ教育機関の5%に含まれています。
指定されたIPアドレスを、記述されたモジュール「Explore:NFS(SSH)」への入力引数として使用します。その結果、
グラフに表の結果を表示するためのこのようなスキームをすぐに作成しました(この記事の後半でグラフを構築するためのスキームと原則について)。
Shodanスキーマと結合した結果
グラフの頂点と関係を分析するとき、誰がアクセスできるか/ homeリソースがどのアドレスにあるかが明らかになります(*)。
視覚的認識を改善するには、グラフオブジェクトのプロパティとダイアグラムの他の設定を変更します。
もちろん、サーバーの1つにリソースの一部を交互にマウントして、勉強を始めました。 どこでもほぼ同じでした-ユーザーディレクトリ:asm、hoo、hyshin、jay、jiwon、jkhee110、jokangjin、kmh603、ksm782、lee、linus、lost + found、marvel_guest、pie、qwe、scloud、seokmin、sgim、thrlek、 yoosj、ysha、zinnia7。
ファイルを含むほとんどすべてのディレクトリが読み書きされました。 .sshの一部のユーザーには、それらへの書き込みアクセス権を持つauthorized_keysファイルがありました。
キーを生成し、ユーザーの1人のauthorized_keysにコピーし、ポート2222でsshを介してサーバーに接続し、Shodanからデータからポート番号を受け取りました。
ユーザー、ネットワーク設定:
ネットワーク上のホスト:
ファイル/ etc /エクスポートおよびドライブ:
ファイル/ etc / fstabおよびOS:
これは大学院生や学生のためのある学部のネットワークであり、多くの異なるPythonソース、GPUやAnacondaディストリビューションなどに関連するものがあるため、サーバー上で何らかの計算を実行すると考えています。 私はすべてを勉強したわけではなく、これで何をするべきか考え始めました。もちろん、ほとんどのノードで「歩く」ことができました(もっとエキゾチックな何かを考えられるかもしれません)が、それはあまり興味を惹きませんでした。 そして、私は次のことを考えました:研究所は科学的で先進的であるため、情報セキュリティの分野があるはずです。 実際、実験室全体でさえ: ソフトウェアセキュリティラボとそのヘッドSang Kil Cha
私は彼に手紙を書くことに決めたので、彼らは言う、インターネット上のすべての人がNFSリソースを読み取りおよび書き込み許可で接続できるようにすることは非常に危険です、明らかにあなたは何かを修正し、スクリーンショットを添付して送信する必要があります
親愛なるサンキルチャ、
kaist.ac.krのウェブサイトで、KAISTの主要なSoftSec Labと呼ばれているように、私はあなたに手紙を書いています。
情報セキュリティの分野での調査中に、意図せず、偶然にも次のサーバーが検出されました。
143.248.247.131-psi.kaist.ac.kr
143.248.247.4-jarvis3.kaist.ac.kr
143.248.247.169
143.248.247.223
143.248.247.235
143.248.247.251-marvel.kaist.ac.kr
143.248.247.239-jarvis.kaist.ac.kr
143.248.247.194-hulk.kaist.ac.kr
143.248.2.23
これらのサーバーはすべて、NFS(Network File System)サービスが稼働しています。
これらのサーバーへのアクセスのセキュリティレベルは非常に低いです。
すべてのコンテンツを含むこれらのサーバーのホームディレクトリには、インターネットを使用する誰でもアクセスできます。
たとえば、設定nfs-/ etc / exports 143.248.247.251-> / home または143.248.247.239
showmount -e 143.248.247.239
143.248.247.239のエクスポートリスト:
/データ
/ home / appl
ほとんどのサーバーのユーザーディレクトリは、パブリックおよびプライベートsshアクセスキーを含むサブディレクトリを含め、読み取りおよび書き込みのためにアクセスできます。
ファイルを編集すると、新しいアクセスキーを追加し、サーバーへのリモートsshアクセスを取得してから、いくつかの内部KAISTサブネットにアクセスできます。
このような浅いアクセスをテストするためだけに、変更は行われず、データの編集、コピー、削除も行われず、インフラストラクチャへの害もありませんでした。
何らかの謝辞と証拠については、添付ファイルをご覧ください。
要件やクレームはありませんが、ネットワークセキュリティレベルを大幅に強化することをお勧めします。
すぐに彼らは私に答えました、無料翻訳:ありがとう、私たちは誰にでも転送します。
教えてくれてありがとう! このメールをネットワークとセキュリティの担当者に転送します。 ベスト、サンキル
この記事を公開する前に、何が変更されたかを確認することにしました。
実際、リソースへのアクセスは内部ネットワーク上のマシンからのみ許可されていましたが、サーバー143.248.247.251についてはどうでしたか。 表のエントリによると、NFS設定のホストリソースは*のままです。 テーブルの「マッピング」の別のバージョンをグラフにスケッチしました。
「マッピング」の変更点:NFSオブジェクトは、IPとNFSパスという2つの同一の属性で「接着」されています。 Statusオブジェクトは、生レコード列の内容を含むvalue属性に値「 * 」が含まれる場合にのみ作成されます
そして、テーブルのグラフは新しいフォームに表示されます:
さて、ところで、内部ネットワークのアドレス指定がはっきりと見えるようになりました。サーバー143.248.247.251では、ユーザーディレクトリ、ファイルの内容を編集することもできます。 原則として、可能性は以前と同じままでした。
そして、私はサンキルチャ氏に2番目の手紙を書いています。同様の最初の内容で、人気のあるhabr.comリソースの記事にいくつかのイベントが掲載されることに注意してください。
親愛なるサンキルチャ、あなたに良い一日を。
メールを受け取った後に何か変更があったかどうかを確認し、実際にアクセス設定を変更しました。 しかし、明らかにセキュリティエンジニアは143.248.247.251 IPアドレスを除外し、その設定は同じままでした。 見知らぬ人がアクセスできないように、このIPも保護してください。
情報セキュリティのテーマに関する記事を書いているので、 https://habr.comに投稿します 。 これはロシアで非常に人気のあるウェブサイトです。 この記事には、NFSアクセス設定の質の低さに関するいくつかの文章と、サーバーの事例のいくつかが含まれます。 記事が掲載されたら、その記事へのリンクをお送りします。
Lampyre APIの使用方法とモジュールの作成方法
モジュールは、IPアドレスのリストまたは192.168.0 / 24の形式のサブネットのリストを入力として受け入れる必要があります-この段階では、サブネットの場合、コード内でIPアドレスの文字列の関与に関する入力データを個別に検証する必要があります- IPリストに変換します。
次のステップは、Python paramikoライブラリを介して、パーソナルsshサーバーとシリアル(モジュールコンセプトコードに非同期の試みが存在する)コマンド呼び出しにアクセスします。
timeout {timeouts} showmount --no-headers -e {ip}
結果の出力は、Pythonコードを介して、Pythonの辞書のリストである出力構造に解析されます。
辞書のキー:
- current_day-ユーザー要求日
- host_query-情報が受信されるIP
- shared_path-NFSリソース
- status_ip-リソースへのアクセスに関する情報。IPアドレスが「、」を介してリストされている場合、辞書文字列はリスト内で複製されます。
さらに、この概念の概念によれば、status_ipキーの値をサブジェクトに解析しようとするプリミティブな試みが行われます:IPアドレス、ホストレコード、「*」または「everyone」値
APIのドキュメントとサポートLampyre.ioの説明によると、各モジュールは1つ以上のテーブルにデータを返す必要がありますが、テーブルはAPIの一部として記述される必要があります(タスクヘッダー、テーブルヘッダー)。 実際、これがモジュールの主な結果です。
したがって、辞書キーを考慮した最終結果は表になります。
class NFSHeader(metaclass=Header): display_name = 'Search data from NFS services' current_day = Field('Date', ValueType.Datetime) host_query = Field('Search ip', ValueType.String) shared_path = Field('NFS path', ValueType.String) ip = Field('ip address', ValueType.String) network = Field('network address', ValueType.String) host = Field('host', ValueType.String) status = Field('raw record', ValueType.String)
サーバーでのshowmountコマンドの結果の分析からの値(わずかに変更された)がテーブルに書き込まれます。 クラス内のフィールドの名前はそれ自体を表しており、生のレコード列には、リソースへのアクセスに関する情報が格納されます。 ある意味で、NFSリソース上のデータのこの分析はOSINTと見なすこともできます。さまざまなIPアドレスからのアクセスの可能性に関する情報は、リソースの所有者またはリソースネットワーク内のアドレス指定のアイデアを提供します。 たとえば、NFSサービスを備えたサーバーのIPアドレスはウクライナにあり、アクセスが許可されているIPアドレスはドイツにあります。
また、この例の調査を展開すると、NFSだけでなく、アドレス77.120.103.9、138.201.202.135およびドメイン* .aniart.com.uaの1つの証明書を通じて、サーバーの接続がすぐに確認されます。
データをモジュールに転送してテーブルに書き込む方法:
Taskクラスから独自のSearchDataNFSクラスを作成します。
class SearchDataNFS(Task)
get_id
メソッドでget_id
、一意のランダムUUID get_id
返します。
def get_id(self): return 'bf51fd57-3fec-4416-9d07-905935a484b4'
get_display_name
メソッドget_display_name
は、タスクのget_display_name
方法get_display_name
指定し、 get_description
メソッドでは、名前に応じてタスクの説明を指定します。
def get_display_name(self): return 'Explore: NFS(SSH)' def get_description(self): return 'Explore NFS resourses'
get_headers
メソッドでget_headers
使用するテーブルを指定します。
def get_headers(self): return NFSHeader
get_enter_paramsメソッドは、入力ウィンドウのタイプを決定します。 コードから、文字列のリストが入力に提供され、後で独立してIPアドレスに変換されることが明らかです。
def get_enter_params(self): ep_coll = EnterParamCollection() ep_coll.add_enter_param('ips', 'IP', ValueType.String, is_array=True, value_sources=[Attributes.System.IPAddress], description='IPs, networks') return ep_coll
executeメソッドでは、タスクのメイン実行が発生します。
ips = [] for input_ip in set(map(lambda z: z.strip(), enter_params.ips)): ips.extend(reparse_ip_hosts(input_ip))
入力パラメーターには、enter_params.ipsからアクセスします。 reparse_ip_hosts
メソッドでは、IPアドレスへの文字列の自己実装検証が行われます。
targets = ((ip, port) for ip in ips for port in ports) lines = thread_async_nfs_one_client(targets) info = reparse_result_rows(lines) fields_table = NFSHeader.get_fields() for data_id in info: tmp = NFSHeader.create_empty() for field in fields_table: if field in data_id: tmp[fields_table[field]] = data_id[field] result_writer.write_line(tmp, header_class=NFSHeader)
thread_async_nfs_one_client
関数では、sshを使用してサーバーに接続し(IPアドレス、ユーザー名、およびパスワードはハードコードで設定されます)、前述のようにshowmountが実行され、結果が解析され、 reparse_result_rows
関数で再度変更されます。 infoは辞書で構成されるリストであることに注意することが重要です。各辞書では、キーはNFSHeaderクラスのフィールドとして名前が付けられます。 つまり、辞書は次のようになります。
{ 'current_day': datetime.datetime(2019, 3, 6, 16, 48, 17), 'host_query': '192.168.1.1', 'shared_path': '/volume1/workspace', 'ip': '192.168.10.10', 'network': '', 'host': '', 'status': '192.168.10.10' }
ディクショナリ内のデータ型を観察することは重要です。それらはテーブルの説明と同じでなければなりません。
次に、ループ内で、リスト要素を反復処理し、APIメソッド( result_writer.write_line )を介して特定のNFSHeaderテーブルに書き込みます。
詳細については、ドキュメントを参照してください。
基本的に、モジュールはLampyreに追加する準備ができています。
Lampyreでモジュールを使用する
sshが使用されているという事実とshowmountコマンドの実行により、もちろん、sshを介してサーバーにアクセスできる必要があります。 私のテストでは、この役割はUbuntuとNFSクライアントがインストールされたVirtualboxの仮想マシンによって果たされました。
ユーザーのマシンでネイティブモジュールを操作するには、Python 3.6が必要です。インタープリターへのパスがシステム変数に含まれているか、そのパスがLampyre\config\appSettings.config
で指定されている必要がありLampyre\config\appSettings.config
。 デフォルトでは、pythonPathキーは設定でコメント化されています。
Lampyreへのモジュールのロードは、次の手順で実行されます。
- スクリプトウィンドウで、ファイルLampyre \ user_tasks \ ontology.py(アプリケーションに付属)をロードします。
- 同じウィンドウで、モジュール(この場合はnfs_via_ssh.py)をロードします。 何か問題が発生した場合、 詳細ボタンが役立ちます
- 読み込み後、 [タスク ]タブの[ 要求の一覧 ]ウィンドウに[ ローカル タスク ]セクションが表示されます(モジュールのコードでは別の方法で呼び出すことができます)。名前はExplore:NFS(SSH)です。
更新されたリクエストリストウィンドウ:
- 前述したように、NFSを使用したサーバーのIPアドレスは、最初にQuery:tcp 2049パラメーター(単にnfsを指定できます)を使用してShodan検索クエリを実行することで最適に取得できます。 デフォルトで1に設定されているPageまたはrangeパラメーターは、Shodanサービスから1ページの回答が返されることを意味します。ページには通常100の結果(行)があります。
Shodanの実行の結果:
- IPアドレスをテーブルまたは図からクリップボードにコピーして、IP Explore:NFS(SSH)モジュールウィンドウに貼り付けます。 実行して結果を期待します:
もちろん、独自の外部サーバーからの帯域幅と、モジュールコードで厳密に設定されているタイムアウトを考慮する必要があります。
結果は表の形式で取得されますが、続行して表の結果をShodan検索の実行結果のグラフと結合できます。 最初は知覚するのが少し難しいでしょう。
結果を含むテーブルの視覚化
始めましょう。 ユーザーモジュールの実行からの値を持つ列のセットを持つテーブルがあります。 ただし、[リクエスト]ウィンドウの[スキーマ]ボタンに注意を払うと、非アクティブになります。 テーブルのグラフへのマッピングは設定されておらず、設定する必要があるためです。
スキーム1(最良ではない)
モジュール結果からテーブルが開いた状態で、右下隅に「作成テンプレートの追加」インターフェース要素があり、クリックすると「作成テンプレート」ウィンドウが表示されます。 これでは、テーブル行のグラフオブジェクトへのマッピングを指定することができます。記事ではプロセスを詳細に説明しません。Youtube のプラットフォームチャネルのリンクはこれを行う方法を示します。
グラフのテンプレート:
IP、DomainオブジェクトはLampyreにあり、NFSおよびNetworkオブジェクトを作成したことに注意することが重要です。各オブジェクトには、ユーザーがテーブルの列を「マップ」する属性があります。さらに、オブジェクトはいくつかの属性を持つことができます。グラフの頂点オブジェクトの名前を表示するために、いくつかの属性(頂点がグラフ上で「くっつく」)が重要です。たとえば、NFSオブジェクトの場合、NFSパスとステータスという2つの属性が作成され、キー属性はNFSパスです。右側のオブジェクトの画像をクリックして、オブジェクトにアイコンを割り当てることができます。オブジェクトの属性への列の「マッピング」が完了すると、スキームを構築できます-上記の[ スキーマ ]ボタンがアクティブになります。
テンプレートがありません:
表のグラフのテンプレートは次のように構成されています。
«» — i2 (IBM i2 Analyst's Notebook) :
«» , : IP- IP- , , NFS , IP. ( ).
2
すでに良い。 — , IP- :
, , (csv) . , «» . «» , .
Shodan NFS Shodan search, add to active tab — :
:
結論の代わりに-同僚、定期的にNFSの設定の正確さだけをチェックしてください。