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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
al-khaser — 実際に使用されている公知のマルウェア技術:仮想マシン、エミュレーション、デバッガ、サンドボックス検出。 | Kitploit
ツール/GitHubGitHub/ayoubfaouzi/al-khaser
IDS/IPS回避マルウェア分析ペネトレーションテスト学習と教育レッドチーミングラボと実践
GitHubayoubfaouzi/al-khaser

al-khaser

実際に使用されている公知のマルウェア技術:仮想マシン、エミュレーション、デバッガ、サンドボックス検出。

リポジトリを見る
7.1k1.3k1ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

Al-Khaser v0.81

Logo

目次

  • はじめに
  • 考えられる用途
  • 機能
  • デバッグ防止攻撃
  • アンチダンプ
  • タイミング攻撃
  • 人間との対話
  • アンチVM
  • アンチディスアセンブリ
  • 必要条件
  • ライセンス

はじめに

al-khaser は、善意から作られた PoC の「マルウェア」アプリケーションであり、あなたのアンチマラウェアシステムをストレステストすることを目的としています。 一般的なマルウェアのトリックを多数実行し、検知されずにいられるかどうかを確認します。

Logo

使用方法

root@kitploit:~
$ ./al-khaser.exe -h
Usage: al-khaser.exe [OPTIONS]
Options:
  --check <type>      Enable specific check(s). Can be used multiple times. Valid types are:
                        TLS              (Thread Local Storage callback checks)
                        DEBUG            (Anti-debugging checks)
                        INJECTION        (Code injection checks)
                        GEN_SANDBOX      (Generic sandbox checks)
                        VBOX             (VirtualBox detection)
                        VMWARE           (VMware detection)
                        VPC              (Virtual PC detection)
                        QEMU             (QEMU detection)
                        KVM              (KVM detection)
                        XEN              (Xen detection)
                        WINE             (Wine detection)
                        PARALLELS        (Parallels detection)
                        HYPERV           (Hyper-V detection)
                        CODE_INJECTIONS  (Additional code injection techniques)
                        TIMING_ATTACKS   (Timing/sleep-based sandbox evasion)
                        DUMPING_CHECK    (Dumping memory/process checks)
                        ANALYSIS_TOOLS   (Analysis tools detection)
                        ANTI_DISASSM     (Anti-disassembly checks)
  --sleep <seconds>   Set sleep/delay duration in seconds (default: 600).
  --delay <seconds>   Alias for --sleep.
  -h, --help          Show this help message and exit.

Examples:
  al-khaser.exe --check DEBUG --check TIMING_ATTACKS --sleep 30
  al-khaser.exe --check VMWARE --check QEMU
  al-khaser.exe --sleep 30

ダウンロード

ビルド済みバイナリ(x86, x64)は、このプロジェクトのリリースページからダウンロードできます。7zファイルのパスワードはこちらにあります。

考えられる用途

  • アンチデバッグプラグインを作成していて、その効果を確認したい場合。
  • サンドボックスソリューションが十分に隠蔽されていることを確認したい場合。
  • あるいは、マルウェア分析環境がうまく隠蔽されていることを確認したい場合。

マルウェアで見かけたアンチ解析トリックに遭遇した場合は、遠慮なくご寄稿ください。

機能

デバッグ防止攻撃

  • IsDebuggerPresent
  • CheckRemoteDebuggerPresent
  • Process Environment Block (BeingDebugged)
  • Process Environment Block (NtGlobalFlag)
  • ProcessHeap (Flags)
  • ProcessHeap (ForceFlags)
  • Low Fragmentation Heap (LFH)
  • NtQueryInformationProcess (ProcessDebugPort)
  • NtQueryInformationProcess (ProcessDebugFlags)
  • NtQueryInformationProcess (ProcessDebugObject)
  • WudfIsAnyDebuggerPresent
  • WudfIsKernelDebuggerPresent
  • WudfIsUserDebuggerPresent
  • NtSetInformationThread (HideThreadFromDebugger)
  • NtQueryObject (ObjectTypeInformation)
  • NtQueryObject (ObjectAllTypesInformation)
  • CloseHanlde (NtClose) Invalide Handle
  • SetHandleInformation (Protected Handle)
  • UnhandledExceptionFilter
  • OutputDebugString (GetLastError())
  • Hardware Breakpoints (SEH / GetThreadContext)
  • Software Breakpoints (INT3 / 0xCC)
  • Memory Breakpoints (PAGE_GUARD)
  • Interrupt 0x2d
  • Interrupt 1
  • Trap Flag
  • Parent Process (Explorer.exe)
  • SeDebugPrivilege (Csrss.exe)
  • NtYieldExecution / SwitchToThread
  • TLS callbacks
  • Process jobs
  • Memory write watching
  • Page exception breakpoint detection
  • API hook detection (module bounds based)

アンチインジェクション

  • Enumerate modules with EnumProcessModulesEx (32-bit, 64-bit, and all options)
  • Enumerate modules with ToolHelp32
  • Enumerate the process LDR structures with LdrEnumerateLoadedModules
  • Enumerate the process LDR structures directly
  • Walk memory with GetModuleInformation
  • Walk memory for hidden modules

アンチダンプ

  • メモリからPEヘッダを消去
  • SizeOfImage

タイミング攻撃 [アンチサンドボックス]

  • RDTSC (with CPUID to force a VM Exit)
  • RDTSC (Locky version with GetProcessHeap & CloseHandle)
  • Sleep -> SleepEx -> NtDelayExecution
  • Sleep(ループ内で小さな遅延)
  • Sleep and check if time was accelerated (GetTickCount)
  • SetTimer(標準Windowsタイマー)
  • timeSetEvent(マルチメディアタイマー)
  • WaitForSingleObject -> WaitForSingleObjectEx -> NtWaitForSingleObject
  • WaitForMultipleObjects -> WaitForMultipleObjectsEx -> NtWaitForMultipleObjects
  • IcmpSendEcho(CCleaner マルウェア)
  • CreateWaitableTimer
  • CreateTimerQueueTimer
  • 大きな暗号ループ(未実装)

人間との対話 / 汎用 [アンチサンドボックス]

  • マウスの移動
  • sample.exe や sandbox.exe のようなファイル名
  • 総物理メモリ(GlobalMemoryStatusEx)
  • DeviceIoControl を使用したディスクサイズ(IOCTL_DISK_GET_LENGTH_INFO)
  • GetDiskFreeSpaceEx を使用したディスクサイズ(TotalNumberOfBytes)
  • マウス(シングルクリック / ダブルクリック)(未実装)
  • DialogBox(未実装)
  • スクロール(未実装)
  • 再起動後の実行(未実装)
  • プロセッサ数(Win32/Tinba - Win32/Dyre)
  • 既知のサンドボックス製品ID(未実装)
  • 背景ピクセルの色(未実装)
  • キーボードレイアウト(Win32/Banload)(未実装)
  • 正規のWindowsインストール
  • 既知のサンドボックスホスト名とユーザー名

アンチ仮想化 / 完全システムエミュレーション

  • レジストリキー値の痕跡

    • HARDWARE\DEVICEMAP\Scsi\Scsi Port 0\Scsi Bus 0\Target Id 0\Logical Unit Id 0 (Identifier) (VBOX)
    • HARDWARE\DEVICEMAP\Scsi\Scsi Port 0\Scsi Bus 0\Target Id 0\Logical Unit Id 0 (Identifier) (QEMU)
    • HARDWARE\Description\System (SystemBiosVersion) (VBOX)
    • HARDWARE\Description\System (SystemBiosVersion) (QEMU)
    • HARDWARE\Description\System (VideoBiosVersion) (VIRTUALBOX)
    • HARDWARE\Description\System (SystemBiosDate) (06/23/99)
    • HARDWARE\DEVICEMAP\Scsi\Scsi Port 0\Scsi Bus 0\Target Id 0\Logical Unit Id 0 (Identifier) (VMWARE)
    • HARDWARE\DEVICEMAP\Scsi\Scsi Port 1\Scsi Bus 0\Target Id 0\Logical Unit Id 0 (Identifier) (VMWARE)
    • HARDWARE\DEVICEMAP\Scsi\Scsi Port 2\Scsi Bus 0\Target Id 0\Logical Unit Id 0 (Identifier) (VMWARE)
    • SYSTEM\ControlSet001\Control\SystemInformation (SystemManufacturer) (VMWARE)
    • SYSTEM\ControlSet001\Control\SystemInformation (SystemProductName) (VMWARE)
  • レジストリキーの痕跡

    • HARDWARE\ACPI\DSDT\VBOX__ (VBOX)
    • HARDWARE\ACPI\FADT\VBOX__ (VBOX)
    • HARDWARE\ACPI\RSDT\VBOX__ (VBOX)
    • SOFTWARE\Oracle\VirtualBox Guest Additions (VBOX)
    • SYSTEM\ControlSet001\Services\VBoxGuest (VBOX)
    • SYSTEM\ControlSet001\Services\VBoxMouse (VBOX)
    • SYSTEM\ControlSet001\Services\VBoxService (VBOX)
    • SYSTEM\ControlSet001\Services\VBoxSF (VBOX)
    • SYSTEM\ControlSet001\Services\VBoxVideo (VBOX)
    • SOFTWARE\VMware, Inc.\VMware Tools (VMWARE)
    • SOFTWARE\Wine (WINE)
    • SOFTWARE\Microsoft\Virtual Machine\Guest\Parameters (HYPER-V)
    • SYSTEM\CurrentControlSet\Services\Disk\Enum
    • SYSTEM\CurrentControlSet\Enum\IDE
    • SYSTEM\CurrentControlSet\Enum\SCSI
  • ファイルシステムの痕跡

    • "system32\drivers\VBoxMouse.sys"
    • "system32\drivers\VBoxGuest.sys"
    • "system32\drivers\VBoxSF.sys"
    • "system32\drivers\VBoxVideo.sys"
    • "system32\vboxdisp.dll"
    • "system32\vboxhook.dll"
    • "system32\vboxmrxnp.dll"
    • "system32\vboxogl.dll"
    • "system32\vboxoglarrayspu.dll"
    • "system32\vboxoglcrutil.dll"
    • "system32\vboxoglerrorspu.dll"
    • "system32\vboxoglfeedbackspu.dll"
    • "system32\vboxoglpackspu.dll"
    • "system32\vboxoglpassthroughspu.dll"
    • "system32\vboxservice.exe"
    • "system32\vboxtray.exe"
    • "system32\VBoxControl.exe"

アンチ解析

  • プロセス
    • OllyDBG / ImmunityDebugger / WinDbg / IDA Pro / X64dbg / Cheat Engine
    • SysInternals スイートツール (Process Explorer / Process Monitor / Regmon / Filemon, TCPView, Autoruns)
    • Wireshark / Dumpcap / Fiddler / Http Debugger
    • ProcessHacker / SysAnalyzer / HookExplorer / SysInspector
    • ImportREC / PETools / LordPE
    • JoeBox Sandbox
    • Resource Hacker
    • Frida

アンチディスアセンブリ

  • 定数条件によるジャンプ
  • 同一ターゲットへのジャンプ命令
  • 不可能な逆アセンブル
  • 関数ポインタ
  • 戻りポインタの悪用

マクロマルウェア攻撃

  • Document_Close / Auto_Close.
  • Application.RecentFiles.Count

コード/DLLインジェクション手法

  • CreateRemoteThread
  • SetWindowsHooksEx
  • NtCreateThreadEx
  • RtlCreateUserThread
  • APC(QueueUserAPC / NtQueueApcThread)
  • RunPE(GetThreadContext / SetThreadContext)

著者

  • Mattiwatti: Matthijs Lavrijsen
  • gsuberland: Graham Sutherland
  • hFireF0x: hfiref0x

プルリクエスト歓迎。プロジェクトに貢献したい場合は、Wikiの開発者ガイドラインをお読みください。

参考文献

  • Josh Jackson によるアンチリバースエンジニアリングガイド。
  • Peter Ferrie によるアンチアンパッカーのトリック。
  • Mark Vincent Yason によるアンパッキングの技法。
  • Walied Assar のブログ http://waleedassar.blogspot.de/。
  • Pafish ツール: https://github.com/a0rtega/pafish。
  • JoeSecurity による PafishMacro: https://github.com/joesecurity/pafishmacro
ツールをダウンロード
  • "system32\drivers\vmmouse.sys"
  • "system32\drivers\vmhgfs.sys"
  • "system32\drivers\vm3dmp.sys"
  • "system32\drivers\vmci.sys"
  • "system32\drivers\vmhgfs.sys"
  • "system32\drivers\vmmemctl.sys"
  • "system32\drivers\vmmouse.sys"
  • "system32\drivers\vmrawdsk.sys"
  • "system32\drivers\vmusbmouse.sys"
  • ディレクトリの痕跡

    • "%PROGRAMFILES%\oracle\virtualbox guest additions\"
    • "%PROGRAMFILES%\VMWare\"
  • メモリの痕跡

    • Interupt Descriptor Table (IDT) の位置
    • Local Descriptor Table (LDT) の位置
    • Global Descriptor Table (GDT) の位置
    • STR を用いたタスクステートセグメントのトリック
  • MACアドレス

    • "\x08\x00\x27" (VBOX)
    • "\x00\x05\x69" (VMWARE)
    • "\x00\x0C\x29" (VMWARE)
    • "\x00\x1C\x14" (VMWARE)
    • "\x00\x50\x56" (VMWARE)
    • "\x00\x1C\x42" (Parallels)
    • "\x00\x16\x3E" (Xen)
    • "\x0A\x00\x27" (Hybrid Analysis)
  • 仮想デバイス

    • "\\.\VBoxMiniRdrDN"
    • "\\.\VBoxGuest"
    • "\\.\pipe\VBoxMiniRdDN"
    • "\\.\VBoxTrayIPC"
    • "\\.\pipe\VBoxTrayIPC")
    • "\\.\HGFS"
    • "\\.\vmci"
  • ハードウェアデバイス情報

    • SetupAPI SetupDiEnumDeviceInfo (GUID_DEVCLASS_DISKDRIVE)
      • QEMU
      • VMWare
      • VBOX
      • VIRTUAL HD
    • Power policies (S1-S4 states, thermal control)
  • システムファームウェアテーブル

    • SMBIOS 文字列チェック (VirtualBox)
    • SMBIOS 文字列チェック (VMWare)
    • SMBIOS 文字列チェック (Qemu)
    • SMBIOS テーブル数 (Qemu, VirtualBox)
    • ACPI 文字列チェック (WAET table, PNP devices, PM state with battery checks)
    • ACPI 文字列チェック (VirtualBox)
    • ACPI 文字列チェック (VMWare)
    • ACPI 文字列チェック (Qemu)
  • ドライバサービス

    • VirtualBox
    • VMWare
  • アダプタ名

    • VMWare
  • ウィンドウクラス

    • VBoxTrayToolWndClass
    • VBoxTrayToolWnd
  • ネットワーク共有

    • VirtualBox Shared Folders
  • プロセス

    • vboxservice.exe (VBOX)
    • vboxtray.exe (VBOX)
    • vmtoolsd.exe(VMWARE)
    • vmwaretray.exe(VMWARE)
    • vmwareuser(VMWARE)
    • VGAuthService.exe (VMWARE)
    • vmacthlp.exe (VMWARE)
    • vmsrvc.exe(VirtualPC)
    • vmusrvc.exe(VirtualPC)
    • prl_cc.exe(Parallels)
    • prl_tools.exe(Parallels)
    • xenservice.exe(Citrix Xen)
    • qemu-ga.exe (QEMU)
    • looking-glass-host.exe (GENERIC)
    • VDDSysTray.exe (GENERIC)
  • WMI

    • SELECT * FROM Win32_Bios (SerialNumber) (GENERIC)
    • SELECT * FROM Win32_PnPEntity (DeviceId) (VBOX)
    • SELECT * FROM Win32_NetworkAdapterConfiguration (MACAddress) (VBOX)
    • SELECT * FROM Win32_NTEventlogFile (VBOX)
    • SELECT * FROM Win32_Processor (NumberOfCores and ProcessorId) (GENERIC)
    • SELECT * FROM Win32_LogicalDisk (Size) (GENERIC)
    • SELECT * FROM Win32_ComputerSystem (Model and Manufacturer) (GENERIC)
    • SELECT * FROM MSAcpi_ThermalZoneTemperature CurrentTemperature) (GENERIC)
    • SELECT * FROM Win32_Fan (GENERIC)
  • DLLエクスポートとロード済みDLL

    • avghookx.dll (AVG)
    • avghooka.dll (AVG)
    • snxhk.dll (Avast)
    • kernel32.dll!wine_get_unix_file_nameWine (Wine)
    • sbiedll.dll (Sandboxie)
    • dbghelp.dll (MS debugging support routines)
    • api_log.dll (iDefense Labs)
    • dir_watch.dll (iDefense Labs)
    • pstorec.dll (SunBelt Sandbox)
    • vmcheck.dll (Virtual PC)
    • wpespy.dll (WPE Pro)
    • cmdvrt32.dll (Comodo Container)
    • cmdvrt64.dll (Comodo Container)
  • CPU

    • Hypervisor presence using (EAX=0x1)
    • Hypervisor vendor using (EAX=0x40000000)
      • "KVMKVMKVM\0\0\0" (KVM)
        • "Microsoft Hv"(Microsoft Hyper-V or Windows Virtual PC)
        • "VMwareVMware"(VMware)
        • "XenVMMXenVMM"(Xen)
        • "prl hyperv "( Parallels) -"VBoxVBoxVBox"( VirtualBox)
  • NtQueryLicenseValue with Kernel-VMDetection-Private as license value.