552 Commits

Author SHA1 Message Date
dependabot[bot] 513d42e91c Bump AButler/upload-release-assets from 3.0 to 4.0 (#311)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-02 15:58:09 +01:00
dependabot[bot] 58d87cc837 Bump microsoft/setup-msbuild from 2.0.0 to 3.0.0 (#310)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-01 09:49:24 +01:00
dependabot[bot] 68c6a2b903 Bump actions/upload-artifact from 6 to 7 (#308)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-01 15:40:57 +00:00
dependabot[bot] 59be27488f Bump microsoft/setup-msbuild from 1.1.3 to 2.0.0 (#305)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-01 06:00:24 +01:00
dependabot[bot] cb4e09a901 Bump actions/checkout from 2 to 6 (#304)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-01 05:59:58 +01:00
dependabot[bot] 0d417859f8 Bump actions/upload-artifact from 4 to 6 (#303)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-01 05:59:42 +01:00
Igor Korkin 490f270897 Fix for VirtualBox checks: add VariantInit(&vtProp) to ensure safe VARIANT initialization (#301)
Co-authored-by: igor korkin <ikorkin@ptsecurity.com>
2026-01-30 11:37:07 +01:00
Ayoub Faouzi 6d64536545 fix: Qemu ACPI firmware string check logic is backwards (#300)
Co-authored-by: Ayoub Faouzi <ayoubfaouzi@users.noreply.github.com>
v1.1.0
2026-01-26 19:02:49 +01:00
Igor Korkin bcff49773e Fix Windows license check: use WMI to get the detailed status (#298)
Co-authored-by: igor korkin <ikorkin@ptsecurity.com>
2026-01-26 19:02:36 +01:00
Ayoub Faouzi 7e01b3029e ci: add dependabot workflow for automatically updating github actions (#299)
Co-authored-by: Ayoub Faouzi <ayoubfaouzi@users.noreply.github.com>
2026-01-26 18:38:32 +01:00
RazviOverflow f27424dcc0 Parametrized --sleep/--delay seconds. Added -h/--help. (#293)
* Parametrized --delay/--sleep

* Added -h/--help message. Updated README with --help message (Usage)
2025-07-14 11:30:40 +01:00
Igor Korkin aa9150da49 Add .clang-format file; fix ldt test for x64; remove an unused local variable (#292)
Co-authored-by: igor korkin <ikorkin@ptsecurity.com>
2025-07-14 11:26:04 +01:00
Igor Korkin 494f421720 fix build warnings and apply code style (#291)
Co-authored-by: igor korkin <ikorkin@ptsecurity.com>
2025-06-27 10:04:45 +01:00
Zakariaa c060253474 Added some important analysis processes (#289)
Thanks for the PR, yeah those are all tools I use :D
2025-04-24 05:26:34 +10:00
dmfrpro 9510abd979 Implement advanced ACPI scan for generic sandbox & QEMU (#288)
Signed-off-by: dmfrpro <dmfr2021y@gmail.com>
2025-04-22 05:59:55 +10:00
dmfrpro 623b75227a Looking Glass, VirtualDisplayDriver & PCI VID scan VM detection methods (#287)
* Add Looking-Glass & VDD processes check

Signed-off-by: dmfrpro <dmfr2021y@gmail.com>

* Add PCI Vendor ID registry scan

Signed-off-by: dmfrpro <dmfr2021y@gmail.com>

---------

Signed-off-by: dmfrpro <dmfr2021y@gmail.com>
2025-04-14 10:16:26 +10:00
Zakariaa 2b78990b04 Added goto cleanup and fixed conflict (#285) 2025-04-02 13:25:37 +11:00
dmfrpro 0ff4088b14 Add check for WAET ACPI table presence (#284)
Signed-off-by: dmfrpro <dmfr2021y@gmail.com>
2025-04-02 07:11:49 +11:00
Asteria 8808859d8c Fixed NtSystemDebugControl STATUS_NOT_IMPLEMENTED cases (#279) 2025-01-12 11:57:05 +11:00
xtex b4d1e5af16 Add ollyice.exe, dedup joeboxserver.exe (#275) 2024-10-07 08:46:25 +11:00
Patrick Evans 680b623e8a Build and attach binaries on release (#274) v1.0.0 2024-09-22 11:00:22 +10:00
CyberGreg05 967afa0d78 Fix incorrect comparison when counting smbios tables (#271)
+Fix incorrect comparison. Table counting may have completed early due to an incorrect comparison.
+refacto.
2024-03-19 08:51:23 +11:00
CyberGreg05 3878b27e21 Working with a mounted flash drive (#270)
* Working with a mounted flash drive

If a flash drive smaller than 80 GB is mounted, there will be a false positive.

* wiring of small devices

USB Devices rarely have a capacity of more than 80 GB. A false positive occurs.

* fix ;

* Revert "fix ;"

This reverts commit bf68dc2758.

* fix deleted }
2024-03-19 08:50:54 +11:00
CyberGreg05 1f7c4a6309 Checking the virtual machine through the number of SMBIOS tables (#267)
* checking the virtual machine through the number of SMBIOS tables

* Update README.md
2024-02-17 10:00:33 +11:00
iamjplant d028a0eba6 Spelling cleanup (#268)
* corrected spelling in comment

* corrected spelling in comment

* corrected spelling in comment
2024-02-17 09:25:22 +11:00
Graham Sutherland 1879863556 Fix missing variable declaration in WaitForMultipleObjects check 2024-02-04 20:21:41 +00:00
Fra-SM 0c22e74e36 Added WaitForMultipleObjects and Frida processes (#265)
* Added WaitForMultipleObjects and Frida processes

* Fix previous commit
2024-01-16 11:18:41 +11:00
xmaple555 0f31a3866b Add cheat engine for anti-analysis (#264)
* Add cheat engine for analysis_tools_process

* Update README.md
2023-10-30 20:35:17 +11:00
Duncan Ogilvie 124f9c9f46 Update README.md (#262) 2023-09-07 06:49:43 +10:00
Denis Melnikov 4532cb7ab1 Added Al-Khaser console parameters for test enabling (#261) 2023-08-25 21:19:47 +10:00
SleekZ c7642a1672 Update timing.cpp (#255) 2023-01-01 16:00:01 +11:00
hasdhuahd 0cf44d9b83 Update Al-khaser.cpp (#253) 2022-12-07 19:28:04 +11:00
Stephen Eckels 6cd41fa690 Add NtSystemDebugControl anti-dbg (#252)
* Add NtSystemDebugControl anti-dbg

* Update CI

* force 2022

Co-authored-by: Stephen Eckels <stephen.eckels@mandiant.com>
2022-11-05 08:18:46 +11:00
Fulvio di Girolamo bed03d2f84 Bugfix + new anti-disassembly technique (#245)
* Disable optimization to avoid crash in GetProcAddress

* Adding the SEH misuse anti-disassembly technique

* Fix messed-up stack after execution of VectoredHandler in TrapFlag.cpp

* Fix messed-up stack after executing the SEH misuse anti-disassembly technique

* Fix VectoredHandler for x64 architectures

Co-authored-by: Fulvio Di Girolamo <fulviodigirolamo@tutanota.com>
Co-authored-by: Fulvio Di Girolamo <fulviodig96@gmail.com>
2021-10-21 00:28:34 +11:00
Noteworthy d3efb3f5d6 Merge pull request #246 from hasherezade/vs2019_fix
Fixed building with VS2019
2021-10-17 11:00:55 +11:00
hasherezade da94a0a60b Bugfix: fixed building with VS2019 2021-10-15 01:37:37 -07:00
Noteworthy be948e0813 Merge pull request #244 from LordNoteworthy/virtio
Add KVM virtio artifacts and QEMU guest agent / spice tools artifacts.
2021-09-14 14:44:04 +10:00
LordNoteworthy f2b026a49c Add KVM virtio reg keys, files and dir and QEMU dirs 2021-09-14 14:38:22 +10:00
Graham Sutherland 06d4a89e9e Add Hyper-V object checks.
This check enumerates the \Driver and \GLOBAL?? object directories for a bunch of Hyper-V related drivers & objects.
2021-07-10 00:46:28 +01:00
Noteworthy a4442a5648 Merge pull request #240 from graysuit/master
This will build and upload binaries
2021-07-06 20:56:08 +10:00
Gray Programmerz 7f9bb0b15a This will build and upload binaries
info at: https://github.com/LordNoteworthy/al-khaser/pull/239
2021-07-06 14:34:43 +05:00
Graham Sutherland 66c0a8a429 Merge pull request #238 from LordNoteworthy/scan_for_modules_improvements
Fix ScanForModules_MemoryWalk_Hidden and add new .NET structure scan.
2021-06-13 01:55:27 +01:00
Graham Sutherland d727738c85 Fix ScanForModules_MemoryWalk_Hidden and add new .NET structure scan.
The memory walk check was broken because it assumed that memory regions would be executable. It also started at the wrong address - AllocationBase is the start of the allocator region, whereas BaseAddress is the actual start of the region. This has now been fixed.

This commit also adds a new check, which scans for memory structures that the .NET runtime creates to track loaded modules. This should catch injected modules even if they're dynamically loaded from memory.
2021-06-12 20:46:51 +01:00
Noteworthy 7b78e61610 Merge pull request #236 from LordNoteworthy/parentprocess-improvement
Improve parent process check to avoid false positives.
2021-06-12 14:07:26 +10:00
Graham Sutherland aafb419cbf Improve parent process check to avoid false positives.
The previous method of checking if the process was launched by Explorer was very prone to false positives, since it would return a detection if you have Explorer process isolation enabled (i.e. one process per explorer window).

The new method finds the parent process ID and checks the main module path to see if it's an explorer.exe process. The full path is checked so as to avoid the trick of just renaming the parent process to explorer.exe somewhere else in the filesystem.

If the parent process filename or explorer path cannot be fetched for some reason, the check falls back to the old method. It also handles the situation where GetExplorerPIDbyShellWindow fails and returns zero.
2021-06-10 19:57:50 +01:00
Graham Sutherland 8779645051 Merge pull request #235 from LordNoteworthy/threadhidefromdebugger-fix
Bug fixes and new checks in ThreadHideFromDebugger.
2021-06-10 19:17:52 +01:00
Graham Sutherland b6eaa5bce9 Bug fixes and new checks in ThreadHideFromDebugger.
Previously we were using BOOL for the hidden thread flag, but that's typedef int which is 4 bytes. This query call expects a 1-byte bool instead, so the NtQueryInformationThread call would always fail with a length mismatch. Due to the logic in the function, this resulted in silently returning no detection.

One important detail of note is that because bool is a single byte local variable, it is free to be allocated anywhere and isn't necessarily aligned. This commit introduces an AlignedBool struct that uses the alignas keyword to get around this issue.

Three new checks are added in this commit:

The first check detects if a length mismatch status is returned for legitimate calls, which might happen if someone writes a buggy hook that incorrectly assumes a BOOL is passed rather than a bool.

The second check detects if a length mismatch status is not returned when a BOOL is passed, which is likely to happen if someone writes a buggy hook that doesn't check the input length properly.

The third check detects if misaligned ThreadInformation pointers are properly rejected. This is not something a hook is likely to properly check for, so it's a good way to catch them out.

This resolves #230.
2021-06-10 19:15:49 +01:00
Noteworthy 06399c26a4 Merge pull request #226 from packmad/master
Check for the lack of user input.
2021-02-12 13:19:07 +11:00
packmad df9f5b1cd4 Check for the lack of user input. 2021-02-12 02:21:52 +01:00
Noteworthy 2662b22430 Merge pull request #224 from SpriteOvO/patch-1
Fix wrong comment
2021-01-28 22:03:37 +11:00