diff --git a/README.md b/README.md
@@ -14,7 +14,8 @@ or related to the access to or use of the software.
## How to use the software ?
-> Please note this project is under development & subject to changes. Breaking changes can be introduced from release to release.
+> Please note this project is under development & subject to changes.
+> Breaking changes can be introduced from release to release.
### Compiling or Installing the project
@@ -90,4 +91,5 @@ docker build . -t myph:latest
### Contributing
Contributions are welcome, but please try to keep PRs short and issues descriptive. :)~
+
A guide on how to use the tool is in the works, please let us know if you're interested in helping out.
diff --git a/TODO.txt b/TODO.txt
@@ -4,7 +4,6 @@
Encryption:
-> add support for chacha20
- -> re-introduce support for blowfish
Templates:
- ProcessHollowing
diff --git a/cli/defaults.go b/cli/defaults.go
@@ -15,7 +15,7 @@ func GetDefaultCLIOptions() Options {
Encryption: EncKindAES,
Key: "",
Technique: "CRT",
- SleepTime: 0,
+ SleepTime: 0,
}
return opts
diff --git a/cli/parser.go b/cli/parser.go
@@ -115,6 +115,9 @@ func GetParser(opts *Options) *cobra.Command {
panic(err)
}
+ fmt.Println("\n...downloading necessary library...")
+ fmt.Println("if it fails because of your internet connection, please consider using XOR or AES instead")
+
/* Running `go get golang.org/x/crypto/blowfish in MYPH_TMP_DIR` */
execCmd := exec.Command("go", "get", "golang.org/x/crypto/blowfish")
execCmd.Dir = MYPH_TMP_DIR
@@ -133,15 +136,15 @@ func GetParser(opts *Options) *cobra.Command {
encodedShellcode := tools.EncodeForInterpolation(encType, encrypted)
encodedKey := tools.EncodeForInterpolation(encType, []byte(opts.Key))
err = tools.WriteToFile(
- MYPH_TMP_DIR,
- "main.go",
- tools.GetMainTemplate(
- encType.String(),
- encodedKey,
- encodedShellcode,
- opts.SleepTime,
- ),
- )
+ MYPH_TMP_DIR,
+ "main.go",
+ tools.GetMainTemplate(
+ encType.String(),
+ encodedKey,
+ encodedShellcode,
+ opts.SleepTime,
+ ),
+ )
if err != nil {
panic(err)
}
@@ -197,7 +200,7 @@ func GetParser(opts *Options) *cobra.Command {
cmd.PersistentFlags().VarP(&opts.Encryption, "encryption", "e", "encryption method. (allowed: AES, XOR, blowfish)")
cmd.PersistentFlags().StringVarP(&opts.Key, "key", "k", "", "encryption key, auto-generated if empty. (if used by --encryption)")
- cmd.PersistentFlags().UintVarP(&opts.SleepTime, "sleep-time", "", defaults.SleepTime, "sleep time in seconds before executing loader (default: 0)")
+ cmd.PersistentFlags().UintVarP(&opts.SleepTime, "sleep-time", "", defaults.SleepTime, "sleep time in seconds before executing loader (default: 0)")
return cmd
}
diff --git a/cli/types.go b/cli/types.go
@@ -85,6 +85,6 @@ type Options struct {
// Shellcode loading method
Technique string
- // Sleep time before running execution
- SleepTime uint
+ // Sleep time before running execution
+ SleepTime uint
}
diff --git a/tools/utils.go b/tools/utils.go
@@ -128,10 +128,10 @@ go 1.20
}
func GetMainTemplate(
- encoding string,
- key string,
- sc string,
- sleepTime uint,
+ encoding string,
+ key string,
+ sc string,
+ sleepTime uint,
) string {
/* if hex encoding is used, it does not require to go through StdEncoding */
@@ -162,7 +162,7 @@ func main() {
os.Exit(1)
}
- time.sleep(%d * time.Second)
+ time.Sleep(%d * time.Second)
ExecuteOrderSixtySix(decrypted)
}
`, encoding, key, sc, encCall, encCall, sleepTime)
| | | | | |