2019-2020-2 20175309 Liu Yuheng "Network Countermeasure Technology" EXP4悪意のあるコード分析

1.実験課題

(1)実験目標

・自分のシステムの実行状態を監視して、不審なプログラムが実行されていないかどうかを確認します。
・悪意のあるソフトウェアを分析し、Exp2またはExp3で生成されたバックドアソフトウェアを分析します。分析ツールは、ネイティブの命令またはsysinternals、systracerスイートを使用しようとします。
・今後の作業でホストに問題があると思われる場合は、このアイデアを実験で使用し、まずシステム全体を監視して不審なオブジェクトが見つかるかどうかを確認し、次に不審なオブジェクトをさらに分析して特定の動作と性質を確認します。

(2)実験内容

システム動作監視
(1)スケジュールされたタスクなどを使用して、コンピュータのどのプログラムがネットワークに接続されているか、接続されている外部IPがどこにあるかを毎分記録します。しばらく実行してファイルを分析し、分析結果を要約します。目標は、ネットワークに接続されているすべてのプログラム、それらが接続されている場所、およびそれらが行ったことを見つけることです(パケットをキャプチャしない場合にのみ推測できます)そうすることは適切だと思いますか?さらに分析する場合は、対象となるパケットをキャプチャできます。
(2)sysinternalsにsysmonツールをインストールして構成し、適切な構成ファイルを設定して、ホストのメインホストの疑わしい動作を監視します。
マルウェアの分析
ソフトウェアの起動時、ターゲットマシンへのインストール時、およびその他の任意の操作(プロセスの移行や画面キャプチャなど)を分析します。

読み取り、追加、削除されたレジストリエントリ・読み取り、追加、削除されたファイル
・接続されている外部IP、転送されるデータ(キャプチャ分析)

2.実験手順

1. schtasks命令を使用してシステムを監視します

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

新しいschtasks5309.batを作成し、次のように入力します。

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

コンピューターで管理されたタスクスケジューラライブラリを開くと、この新しく作成されたタスクを確認できます

このタスクをダブルクリックし、[アクション]-> [編集]-> [プログラムまたはスクリプト]をクリックして、新しいタスクに変更しますnet5309.bat

常规を選択不管用户是否登录都要运行1つの列で使用最高权限运行

開いた後netstat5309.txt、操作結果を表示できます。10時間以上蓄積した後、データはWPSを介して次のようにグラフに編成されます。

TCPに加えて、最も使用されているのはVM仮想マシン、QQおよびWeChat(WeChat)であり、他のプログラムはないことがわかります。

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

SysinternalsSuite.zipダウンロードして解凍し、を
選択Sysmon64.exeして右クリックし属性、を開いて详细信息、バージョンを確認し、バージョンが10.42であることを確認します。
次に、このディレクトリにsysmon20175309.xmlを書き込みます

<Sysmon schemaversion="10.42">
  <!-- 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>
    </ProcessCreate>

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

    <FileCreateTime onmatch="exclude" >
      <Image condition="end with">chrome.exe</Image>
    </FileCreateTime>

    <NetworkConnect onmatch="exclude">
      <Image condition="end with">chrome.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">443</DestinationPort>
    </NetworkConnect>

    <CreateRemoteThread onmatch="include">
      <TargetImage condition="end with">explorer.exe</TargetImage>
      <TargetImage condition="end with">svchost.exe</TargetImage>
      <TargetImage condition="end with">firefox.exe</TargetImage>
      <TargetImage condition="end with">winlogon.exe</TargetImage>
      <SourceImage condition="end with">powershell.exe</SourceImage>
    </CreateRemoteThread>
  </EventFiltering>
</Sysmon>

次に、管理者としてcmdを入力し、このディレクトリを入力して、Sysmon.exe -i sysmon20175309.xml開始するコマンドを入力します。

クリックしagreeて正常に開始します。

コンピュータの管理->イベントビューア->アプリケーションとサービスログ-> Microsoft-> Windows-> Sysmon->オペレーションの順に開くと、構成情報に従って記録されたプロセス情報を表示できます。

表示できる最後のsysmon20175309構成情報に戻ります

3.マルウェア分析

実験3で生成されたバックドアを使用して、kali仮想マシンに接続します。

今回は接続プロセスでwiresharkを開いてパケットをキャプチャします(データが多すぎるため、3つしか傍受しません)

バック接続のプロセス中に3ウェイハンドシェイク接続が確立されていることがはっきりとわかります。kali(192.168.95.128)をwin10(192.168.95.1)で接続した
後、ログでバックドアを正常に見つけることができますbackdoor5309

コマンドscreenshot画面キャプチャを使用して、何が起こるかを確認してください。
・まず、wiresharkに大量のデータが表示され、データが送信されていることを確認できます。詳細はあまり明確ではありません。

・ログを確認し、多くの記事を更新しました。ここで2つ選択してください。

これは非常に直感的で、VMのアクティビティが記録されます。

これはスクリーンショットツールのSnippingTool作業です

他のいくつかのコマンドを試した後、ここにはリストされていない多くのデータ転送とログレコードがあります。(実際、スクリーンショットを撮るのを忘れていました)

Systracerを分析に使用するSystracer
ダウンロードしてインストールする必ず
独自のポート番号を入力してください

インストールが完了したら、を押して写真を撮りTake snapshotます。

写真を3度しか撮らなかったのですが、制限を受けるように促されましたが、その理由はわかりません。
初めてバックドアプログラムが埋め込まれたのではなく、2回目、3回目の再接続後にバックドアプログラムが埋め込まれました。

接続後、上部をクリックします- Applications>左側- Running Processes>バックドアプログラムを見つけます- backdoor5309.exe> Opened Ports、接続しているバックのアドレスとポート番号を確認できます

右下をクリックしてView differences list、3つの違い比較します。
最初と2回目に
バックドアを見つけた

同時に、多くのファイルと登録フォームが追加または削除されました(それらの多くは拒否され、表示できません)

2回目と3回目
は、実行中のプログラムにバックドアプログラムが見つかりました

ここでは、再接続のIPアドレスとポートも確認できます。これは、再接続が成功したことを証明しています。

他の静的解析PEiD
、シェル検査専用のツールとしてここ使用されます
・最初に、何も処理せずにバックドアソフトウェアを終了します。

・圧縮されたシェルでバックドアソフトウェアをチェックして強制終了します。

・最後に、圧縮シェルに基づいて暗号化シェルを追加するバックドアソフトウェアを終了します。

明らかに、圧縮されたシェルは検出されますが、暗号化されたシェルは検出されません。
最後に、旧友のVirustotalをスキャンします
結果は次のとおりです。

3.考える質問:

1.職場のホストで悪意のあるコードが疑われるが、推測するだけの場合は、システムが毎日何をしているかを監視する必要があります。監視したい操作と監視方法を設計してください。
A:この実験はいくつかの方法を教えてくれました。schtasksコマンドを使用してシステムを監視し、sysmonを使用してシステムログを記録し、Systracerを使用して写真を撮って前と後の違いを比較します。
2.プログラムまたはプロセスに問題があると判断した場合、それについてさらに情報を得るにはどのツールが必要ですか。
A:Systracerが提供する比較を使用して、レジストリおよびその他のファイルの変更を分析およびチェックします。

4.実験的思考

この実験は難しくありませんが、ダウンロードするソフトウェアが他にもあります。最後の実験では、「槍」(バックドアプログラム)をより「シャープ」(殺害を回避)する方法を学びました。今回は、「シールド」(保護プログラム)をより「頑丈」にする方法を学びました(バックドアプログラムの所在を記録する)、ネットワークの対立手法を学ぶことは、バスケットボールをプレーすることと非常に似ています。バスケットボールコートは、防衛がチャンピオンシップに勝利し、少なくとも彼らが損害を受けないようにするために身を守ると言います。犯罪は800回の違反に相当する可能性が高いです。 1000ドルのお金を失った場合、少なくとも「裏庭」が火を起こさないようにするために、「シールド」を強くすることによってのみ「槍」をより有効に活用できます。

おすすめ

転載: www.cnblogs.com/20175309lyh/p/12709240.html