Skip to content

Fix Demon DLL#524

Open
voidvxvi wants to merge 1 commit intoHavocFramework:mainfrom
voidvxvi:main
Open

Fix Demon DLL#524
voidvxvi wants to merge 1 commit intoHavocFramework:mainfrom
voidvxvi:main

Conversation

@voidvxvi
Copy link

@voidvxvi voidvxvi commented Oct 25, 2024

Overview
This PR fixes the Demon DLL crash caused by a null pointer dereference.
TLDR: rundll32 demon.x64.dll,Start will work again.

Details
LdrModulePeb is called in DllMain before Instance has been initialized.

Kernel32 = LdrModulePeb( H_MODULE_KERNEL32 );

LdrModulePeb accesses the uninitialized Instance, which is a null pointer derefernce at this point of execution, causing the process to crash.
if ( ! Instance->Teb ) {

I’ve tested the x64 EXE, DLL, and SHC on Windows 11, with WaitForSingleObjectEx, Foliage, Ekko and Zilean sleep obfuscation enabled and all binaries are operating well with this update.

@M4rdc0re
Copy link

I tested it and the shellcode option with sleep jmp gadget "jmp rbx" is not working with your solution don't delete the information of "payloads/Demon/src/Demon.c" and it will work correctly. Actually, you only need to modify the file "payloads/Demon/src/main/MainDll.c"

ZephrFish added a commit to ZephrFish/Havoc that referenced this pull request Jan 22, 2026
Critical bug fixes applied from upstream PRs:
- Fix config obfuscation technique assignment (HavocFramework#577)
- Fix teamserver unauthenticated DoS vulnerability (HavocFramework#547)
- Fix memory leaks in Transport.c (HavocFramework#545)
- Fix Demon DLL null pointer crash (HavocFramework#524)
- Fix misuse of logger function with error.Error() (HavocFramework#478)
- Fix timezone issue in session health display (HavocFramework#459)
- Fix typo: swap_endianess -> swap_endianness (HavocFramework#469)

New features:
- Enhanced --debug flag for connection troubleshooting
  * Logs connection target, host, port, user
  * Tracks WebSocket state changes
  * Logs SSL errors (ignored)
  * Logs bytes sent/received
  * Tracks authentication flow with password hash

- macOS app bundle build support
  * New 'make macos-app' target creates .app bundle
  * New 'make all-all' target builds everything including app
  * Automatically detects Havoc icon
  * Installs to /Applications/Havoc.app
  * Updated 'make clean' to remove app bundle
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants