Linux
 Computer >> コンピューター >  >> システム >> Linux

ルートまたはSudoなしでNmapを実行する方法

ルートまたはSudoなしでNmapを実行する方法

Nmap(Network Mapperの略)は、最も使用されているポートマッパーおよびネットワークスキャンツールの1つです。 Nmapの基本機能の一部を非特権/通常のユーザーとして実行することは可能ですが、その高度な機能のほとんどを使用するには、rootまたはsudo特権が必要です。

たとえば、NULL、ステルスSYNスキャンなどの一部の高度なポートスキャン機能は、Nmapが適切で使用可能な結果を​​提供するために生のパケットデータにアクセスする必要があるため、root権限でのみ機能します。

sudo権限なしでこのような高度な機能を実行しようとすると、ツールは「root権限が必要です」というメッセージを表示します。

ルートまたはSudoなしでNmapを実行する方法

残念ながら、特にsudoグループに属していない場合は、sudoを使用してNmapを実行する必要があると問題が発生する可能性があります。

幸い、機能を使用して、rootまたはsudo権限なしでNmapを実行できます。

機能とは何ですか?

Linux機能は、プログラムとプロセスがrootユーザー用に予約されている特権を利用できるようにするLinuxカーネル属性です。

本質的に、Linuxの機能はrootユーザーの権限または特権を共有し、特権のないプロセスを特権のあるプロセスとして実行できるようにします。つまり、アクセス許可のチェックを受けません。

Linuxには数多くの機能があります。 Linuxの機能について詳しくは、マニュアルページを参照してください。

このガイドの本質は、CAP_NET_RAW、CAP_NET_ADMIN、およびCAP_NET_BIND_SERVICEの3つの機能を使用して、rootユーザーの権限を確認せずに実行する必要のある権限をNmapに与える方法を示すことです。

注: 悪意のあるユーザーがNmapのスクリプトエンジンを悪用して完全なsudo権限にアクセスし、スクリプトを使用してローカルホストの脆弱性を悪用する可能性があるため、昇格された機能を設定する場合は注意が必要です。したがって、これらの設定を慎重に使用するか、Nmapの特定のグループへのアクセスを制限してください。

以下は、sudoおよびroot権限の必要性を排除するためにNmapに付与するLinux機能です。

  • CAP_NET_RAW: この機能を設定すると、プロセスは生のパケットデータとソケットにアクセスして使用できるようになります。
  • CAP_NET_ADMIN: この機能により、プロセスは、IPファイアウォール管理、インターフェイス構成、TOSのサービスタイプの設定、ルーティングテーブルの変更などのさまざまなネットワークアクティビティを実行できます。
  • CAP_NET_BIND_SERVICE: この機能は、ソケットをインターネットドメインの特権ポートにバインドします。

Linuxの機能は、スレッドとファイルにそれぞれ「効果的」、「継承可能」、「許可」、「環境」のセットで割り当てられます。 Nmapにrootまたはsudo権限なしで実行するために必要な機能を与えるために、eipを使用しています。 、したがって、どのユーザーがNmapを実行しているかに関係なく、Nmapがこれらの機能を使用できるようにします。

ステップ1:libcapをインストールする

Linuxの機能を設定するには、libcapパッケージをインストールする必要があります。このパッケージを使用すると、setcapコマンドを使用できます。次のコマンドを使用します:

sudo apt-get install libcap2-bin
ルートまたはSudoなしでNmapを実行する方法

libcapがインストールされたので、setcapを使用できます。 Linuxの機能を変更するコマンド。

ステップ2:Nmap機能を設定する

rootユーザー権限なしで実行できるようにするNmap機能を設定するには、次のコマンドを実行します。

sudo setcap cap_net_raw,cap_net_admin,cap_net_bind_service+eip $(which nmap)

機能を設定したら、getcapを使用して機能が適用されていることを確認できます。 コマンド。

getcap $(which nmap)
ルートまたはSudoなしでNmapを実行する方法

注: Nmapインストールフォルダへのフルパスを指定する必要があります。

ステップ3:特権フラグを使用してNmapを実行する

これらの3つの機能が設定されたので、特権フラグを使用してNmapにこれらの機能があることを通知することにより、sudo特権なしでNmapを実行できます。これを行うには、次を実行します:

nmap --privileged -sS 192.168.0.112
ルートまたはSudoなしでNmapを実行する方法

--privilegedを使用する必要があります そうしないと、Nmapはこれらの特権を持っていることを認識しません。

nmap --privilegedの入力にかかる時間を節約したい場合 毎回フラグを立てる場合、エクスポート行を次の場所に追加することで、NMAP_PRIVILEGED環境変数を永続的に設定できます。

  • 〜/ .xsessionrc: これはほとんどのデスクトップ/グラフィック環境で機能し、シェルと端末で継承できます。
  • 〜/ .profile: これは、ログインが必要なシェルで機能します
  • 〜/ .bashrc: bashで動作します
  • 〜/ .gnomerc: GNOMEでのみ機能します

まとめ

ほとんどのNmapポートスキャンおよびホスト検出方法には、rootまたはsudo権限が必要です。チュートリアルで説明したように、この機能をオーバーライドして、rootまたはsudoersグループにいなくてもNmapを実行できます。使用できる最高のLinuxポートスキャナーのいくつかをチェックしてください。


  1. ルートなしで Android で IMEI 番号を変更する方法

    お使いの携帯電話の IMEI 番号は、世界中でアクティブなすべてのデバイスの中からお使いのデバイスを識別するのに役立ちます。一意の電話 ID は複製できないため、電話の所有者は紛失した電話を簡単に見つけることができます。ただし、多くの Android フォン ユーザーは、ルートなしで Android の IMEI 番号を変更する必要性を感じています。この必要性により、ユーザーは Android フォンの IMEI 番号を変更する方法を知る方法を見つける必要があります。この記事では、ルートなしでAndroid IMEI番号を詳細に変更する方法を学ぶ方法を紹介します.ですから、最後まで読み続けてす

  2. ルートなしで Android で Candy Crush Saga をハックする方法

    キャンディーが苦手な人でも、人気のキャンディークラッシュサーガでリリースされたさまざまなゲームが好きかもしれません。このゲームには特別なファン層があり、ゲーマーは Android でゲームをハッキングする方法を知りたがっています。その人気のために、このゲームは何百万人ものゲーマーによってプレイされており、人々が特定のレベルでそれを維持することは困難です.そのような場合、Android 用のハック ゲームをダウンロードする方法を知りたいと思うかもしれません。ゲームの制限を回避してトップに到達する難易度は高く、連続してキャンディーが殺到します。同様の状況にある場合は、この記事を使用して、電話をルー