#2019-2020-2サイバー対立テクノロジー20175333 Cao Yakun Exp4悪意のあるコード分析

2019-2020-2ネットワーク対策技術20175333 Cao Yakun Exp4悪意のあるコード分析

試験的なコンテンツ

  1. 実用的な目標
    疑わしいプログラムが実行されているかどうかを確認するために、独自のシステムの実行ステータス監視します。
    マルウェアを分析するには、Exp2またはExp3で生成されたバックドアソフトウェアを分析します。分析ツールは、ネイティブ命令またはsysinternalsを使用しようとします。systracerスイート
    は、将来の作業でホストに問題があると見なし、実験でこのアイデアを使用できます。システム全体疑わしいオブジェクトが見つかるかどうかを監視し、疑わしいオブジェクトをさらに分析して、特定の動作と性質を確認します。

  2. 実践的な内容
    2.1システム動作の監視
    (1)スケジュールされたタスクなどの使用、毎分、コンピューターのどのプログラムがネットワークに接続されているか、および接続されている外部IPがどこにあるかを記録します。一定期間実行し、ファイルを分析して分析結果を要約します。
    (2)sysinternalsにsysmonツールをインストールして構成し、適切な構成ファイルを設定して、ホストの不審な動作を監視します。
    2.2ソフトウェアを分析するには、(1)接続の開始、(2)ターゲットマシンへのインストール、(3)その他の任意の操作(プロセスの移行や画面キャプチャなど、重要なのは興味があること)です。
    バックドアソフトウェア
    は、どのレジストリエントリを
    読み取り、追加、削除し、どのファイルが
    接続され、どの外部IPが転送され、どのデータが転送されるかを読み取り、追加、削除します。

質問回答

  1. 職場のホストに悪意のあるコードがあると思われるが、推測しただけの場合は、システムが毎日行っていることを監視したいだけです。監視したい操作と監視方法を設計してください。

    • Windowsに付属のschtasksコマンドを使用して、スケジュールされたタスクを設定し、ネットワーク接続が異常であることを確認できます。
    • Sysmonを使用して構成ファイルを書き込み、関連するシステムログを記録できます。
    • パケットをキャプチャして異常なデータ転送を分析できます
  2. プログラムまたはプロセスに問題があると判断した場合、それについてさらに情報を得るにはどのツールが必要ですか?

    • systracerツールを使用してマルウェアを分析し、レジストリとファイルに対するその変更を表示できます。
    • Wiresharkを使用して、パケットキャプチャ分析を実行し、ホストによって実行される通信を監視できます。
    • 静的分析ツールを使用して、保護にシェルが存在するかどうか、ウイルス対策ソフトウェアが見逃した悪意のあるコードかどうかを確認できます。

実験課題

タスク1:schtasksコマンドを使用してシステムを監視する

1. schtasks / create / TN netstat5333 / sc MINUTE / MO 1 / TR "cmd / c netstat -bn> c:\ netstatlog.txt"コマンドを使用して、スケジュールされたタスクnestat5333を作成します。

  • TNはTaskNameの省略形であり、作成したスケジュール済みタスクの名前はnetstat5333です。
  • scはタイミング方式を意味し、MINUTEを分単位で入力します。
  • TR =タスク実行。実行するコマンドはnetstatです。
  • bn、bは実行可能ファイル名を表示することを意味し、nはIPおよびポートを数値として表示することを意味します。
  • '>'は出力リダイレクトを意味し、出力をc:\ netstatlog.txtファイルに保存します

2. Cドライブにnetstat5333.batスクリプトファイルを作成し、次の内容を書き込みます。

date /t >> c:\netstat5318.txt
time /t >> c:\netstat5318.txt
netstat -bn >> c:\netstat5318.txt

3.タスクスケジューラを開くと、新しく作成されたタスクを確認できます

4.このタスクをダブルクリックし、[アクション]-> [編集]をクリックして、スクリプトを作成したnetstat5333.batファイルに変更します。

5.一般的なチェックボックスで、ユーザーがログインしているか、最高の権限で実行されているかに関係なく実行します。

6.このスクリプトを一定時間実行すると、このマシンのネットワークレコードをこの期間のnetstat5333.txtファイルで確認できます

7.記録されたデータが十分に豊富になったら、タスクを停止し、取得したデータをExcelで分析します。
監視を継続し
、しばらく待機するには、このプロセスを継続してネットワークに接続する必要があります)、保存されたデータをExcelテーブルで整理します

統計結果:

タスク2:sysmonツールを使用してシステムを監視する

  • sysmonはMicrosoft Sysinternalsスイートのツールです。sysmonツールを使用する前に、まずファイルを構成する必要があります。軽量ツールSysmonを使用してシステムを監視し、構成ファイルsysmon20175333.xmlを作成する参照しください

  • 使用可能なイベントフィルターは次のとおりです:
    ProcessCreateプロセスの作成、FileCreateTimeプロセスの作成時間
    NetworkConnectネットワークリンク、ProcessTerminaプロセスの終了
    DriverLoadドライバーの読み込み、ImageLoadミラーの読み込み
    CreateRemoteThリモートスレッドの作成、RawAccessReadドライバーの読み取り
    ProcessAccessプロセスのアクセス、FileCreateファイルの作成
    RegistryEventレジストリイベント、FileCreateStreファイルストリームの作成など

1.構成ファイルを作成します

  • Xuejieブログを参照して、構成ファイルを作成します:sysmon20175333.xml
<Sysmon schemaversion="3.10">
  <!-- Capture all hashes -->
  <HashAlgorithms>*</HashAlgorithms>
  <EventFiltering>
    <!-- Log all drivers except if the signature -->
    <!-- contains Microsoft or Windows -->
    <ProcessCreate onmatch="exclude">     
      <Image condition="end with">chrome.exe</Image> 
      <Image condition="end with">MicrosoftEdgeCP.exe</Image>
    </ProcessCreate>

    <ProcessCreate onmatch="include"> 
      <ParentImage condition="end with">cmd.exe</ParentImage>
    </ProcessCreate>

    <FileCreateTime onmatch="exclude" >
      <Image condition="end with">chrome.exe</Image>
      <Image condition="end with">MicrosoftEdgeCP.exe</Image>
    </FileCreateTime>
    
    <NetworkConnect onmatch="exclude">
      <Image condition="end with">chrome.exe</Image>
      <Image condition="end with">MicrosoftEdgeCP.exe</Image>
      <SourcePort condition="is">137</SourcePort>
      <SourceIp condition="is">127.0.0.1</SourceIp>
    </NetworkConnect>

    <NetworkConnect onmatch="include">     
      <DestinationPort condition="is">80</DestinationPort>      
      <DestinationPort condition="is">5333</DestinationPort>    
    </NetworkConnect>

    <CreateRemoteThread onmatch="include">
      <TargetImage condition="end with">explorer.exe</TargetImage>
      <TargetImage condition="end with">svchost.exe</TargetImage>
      <TargetImage condition="end with">MicrosoftEdgeCP.exe</TargetImage>
      <TargetImage condition="end with">winlogon.exe</TargetImage>
      <SourceImage condition="end with">powershell.exe</SourceImage>
    </CreateRemoteThread>
  </EventFiltering>
</Sysmon>
  • 3.10は、Sysmonの現在のバージョンがバージョン3.10であることを意味します。
  • Excludeはホワイトリストと同等であり、記録する必要はありません。includeはブラックリストと同等です。
  • 画像の状態は、使用しているブラウザによって異なります。たとえば、Google Chromeは「chrome.exe」、Internet Explorerは「iexplore.exe」、Firefoxは「firefox.exe」です。ブラウザのプロセス名を知りたいのですが、 「netstat5333.txt」のレコードを表示します。
  • NetworkConnectは、ブラウザーのネットワーク接続、送信元IPが127.0.0.1のネットワーク接続、および宛先ポートが137の接続サービスを除外し、宛先ポートが80(http)および5333(https)のネットワーク接続をチェックします。
  • CreateRemote(リモートスレッドの作成)は、explorer.exe、svchost.exe、MicrosoftEdgeCP.exe、winlogon.exeおよびpowershell.exeをターゲットとするリモートスレッドを記録します。
    • explorer.exeは、Windowsプログラムマネージャまたはファイルエクスプローラです。
    • svchost.exeは、Microsoft Windowsオペレーティングシステムに属しているシステムプログラムであり、ダイナミックリンクライブラリ(DLL)から実行されているサービスの共通のホストプロセス名です。
    • winlogon.exeは、ユーザーのログインとログアウトの管理に使用されるWindows NTのユーザーログインプログラムです。
    • powershell.exeは、システム管理者専用に設計された新しいWindowsコマンドラインシェルです。シェルプログラムには、インタラクティブプロンプトとスクリプト環境が含まれており、どちらも独立して、または組み合わせて使用​​できます。

2. sysmonをインストールします(管理者権限でインストール)。

  • コマンドsysmon.exe -i C:\ sysmon20175333.xmlを実行すると、正常にインストールされた結果は次のようになります。

3.ログを表示する

  • 「イベントビューア」を表示し、ログ、アプリケーションおよびサービスログの場所を選択します。Microsoft/ Windows / Sysmon / Operational。ここでは、構成ファイルの要件に従って記録された新しいイベントと、イベントID、タスクカテゴリを確認できます。詳細など

4.ログを
分析する自分で生成したバックドアファイルを分析する

  • kaliに接続するには、最初に戻ってください

  • バックドアファイルに対応するログを見つけ、このイベントを開くと、「NetworkContect」に属していることがわかります。詳細情報を表示すると、このバックドアイメージファイルの特定の場所、ソースIPとポート、宛先IPとポートなどを確認できます。

  • 実行操作:シェルと同様に、getuid
    はどの操作を実行しても2つの新しいログを生成し、何も表示されません。

タスク3:マルウェア分析

1. VirusTotalを使用してマルウェアを分析する

  • 生成された悪意のあるコードをVirusTotalに配置して分析します(VirusScanツールを使用することもできます)

  • この悪質なコードの基本的な属性を見ると、SHA-1、MD5ダイジェスト値、ファイルタイプ、ファイルサイズの結果を確認できます。

  • マルウェアのアルゴリズムライブラリのサポート

2. wriesharkパッチパッケージ分析を
使用して、自分生成したバックドアファイルを分析する

  • 接続を再開し、フィルタールールをip.addr == 192.168.253.128(kali ip)に設定します

  • WindowsからKaliに送信されたTCP同期要求パケットSYN、KaliからWindowsに送信されたSYN同期要求パケットと確認パケットACK、KaliからWindowsに送信されたACKパケット、PSH + ACKパケットなど、TCPパケットが多数あることがわかります。

  • webcam_snap、スクリーンショット、その他のコマンドを実行します。今回は、バイト長が長いパケットがさらに多くあります。これはスクリーンショット、写真のデータであるはずです。具体的なものは何も表示されません。

3. Systracerを使用してマルウェアを分析する

  • SysTracerツールをダウンロードしてインストールし、ポート番号5333を設定します。
  • 右側の[スナップショットを撮る]をクリックして、スナップショットを保存します
    • スナップショット1:バックドアプログラムを実行しない
    • スナップショット2:Kaliはmsfconsoleを開き、関連する設定の完了後に監視を開始し、Windowsバックドアを実行します
    • スナップショット3:カメラを取得するためのカーリー攻撃(写真)
    • スナップショット4:ホストオーディオ機器を取得するためのカーリー攻撃(録音)

  • スナップショット分析:
    • [アプリケーション]-> [実行中のプロセス]->バックドアプロセス「cyk_backdoor.exe」を見つけます-> [開いたポート]をクリックして、戻りアドレス、リモートアドレス、ポート番号を表示します。

    • スナップショットインターフェイスの[スナップショット]の右下隅にある[比較]をクリックして、再接続の前後にコンピュータで発生した変更を比較します。すべての青いマークは、変更の前後に発生した場所です。

    • バックドアは多くのファイル、ディレクトリ、キー、接続を生成しました

3:実験の経験
この実験は、主にこの実験が以前の実験の知識とツールを使用する必要があり、また新しいソフトウェアに連絡する必要があるため、長い時間がかかります。そして、これらの新しいソフトウェアによって提供される大量のデータは、分析の経験がない私のような人と同じです。この実験の完了中に、システムの実行状態を監視する方法を学び、マルウェアを分析する方法も学びました。また、Excelを使用して自分でデータを分析し、構成ファイルを書き込むことができました。データを分析することで、バックドアプログラムが何をしているかをよりよく理解し、悪意のあるコードをより深く理解できます。

おすすめ

転載: www.cnblogs.com/Hf-Hf/p/12729775.html