updated the names of the workspace subprojects
This commit is contained in:
parent
10cbe12a39
commit
9fd511cb62
BIN
.github/docs/dllmain-exec.png
vendored
BIN
.github/docs/dllmain-exec.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 217 KiB After Width: | Height: | Size: 213 KiB |
BIN
.github/docs/userfunction-exec.png
vendored
BIN
.github/docs/userfunction-exec.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 215 KiB After Width: | Height: | Size: 214 KiB |
68
Cargo.lock
generated
68
Cargo.lock
generated
@ -2,40 +2,6 @@
|
|||||||
# It is not intended for manual editing.
|
# It is not intended for manual editing.
|
||||||
version = 3
|
version = 3
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "airborne-generator"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
"airborne-utils",
|
|
||||||
"clap",
|
|
||||||
"rand",
|
|
||||||
"windows-sys",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "airborne-injector"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
"airborne-utils",
|
|
||||||
"lexopt",
|
|
||||||
"windows-sys",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "airborne-payload"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
"windows-sys",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "airborne-reflective_loader"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
"airborne-utils",
|
|
||||||
"windows-sys",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "airborne-utils"
|
name = "airborne-utils"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
@ -140,6 +106,16 @@ version = "1.0.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
|
checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "generator"
|
||||||
|
version = "0.1.0"
|
||||||
|
dependencies = [
|
||||||
|
"airborne-utils",
|
||||||
|
"clap",
|
||||||
|
"rand",
|
||||||
|
"windows-sys",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "getrandom"
|
name = "getrandom"
|
||||||
version = "0.2.12"
|
version = "0.2.12"
|
||||||
@ -169,6 +145,22 @@ version = "0.2.152"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
|
checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "poc-injector"
|
||||||
|
version = "0.1.0"
|
||||||
|
dependencies = [
|
||||||
|
"airborne-utils",
|
||||||
|
"lexopt",
|
||||||
|
"windows-sys",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "poc-payload"
|
||||||
|
version = "0.1.0"
|
||||||
|
dependencies = [
|
||||||
|
"windows-sys",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ppv-lite86"
|
name = "ppv-lite86"
|
||||||
version = "0.2.17"
|
version = "0.2.17"
|
||||||
@ -223,6 +215,14 @@ dependencies = [
|
|||||||
"getrandom",
|
"getrandom",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "reflective-loader"
|
||||||
|
version = "0.1.0"
|
||||||
|
dependencies = [
|
||||||
|
"airborne-utils",
|
||||||
|
"windows-sys",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "strsim"
|
name = "strsim"
|
||||||
version = "0.10.0"
|
version = "0.10.0"
|
||||||
|
29
README.md
29
README.md
@ -33,30 +33,31 @@ $ cargo build --release
|
|||||||
1. Generate shellcode containing the loader and the payload:
|
1. Generate shellcode containing the loader and the payload:
|
||||||
|
|
||||||
```
|
```
|
||||||
Usage: airborne-generator.exe [OPTIONS] --loader <LOADER_PATH> --payload <PAYLOAD_PATH> --function <FUNCTION_NAME> --parameter <PARAMETER> --output <OUTPUT_PATH>
|
Usage: generator.exe [OPTIONS] --loader <LOADER_PATH> --payload <PAYLOAD_PATH> --function <FUNCTION_NAME> --parameter <PARAMETER> --output <OUTPUT_PATH>
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-l, --loader <LOADER_PATH> Path to the sRDI loader DLL
|
-l, --loader <LOADER_PATH> Path to the sRDI loader DLL
|
||||||
-p, --payload <PAYLOAD_PATH> Path to the payload DLL
|
-p, --payload <PAYLOAD_PATH> Path to the payload DLL
|
||||||
-f, --function <FUNCTION_NAME> Name of the function to call in the payload DLL
|
-f, --function <FUNCTION_NAME> Name of the function to call in the payload DLL
|
||||||
-n, --parameter <PARAMETER> Parameter to pass to the function
|
-n, --parameter <PARAMETER> Parameter to pass to the function
|
||||||
-o, --output <OUTPUT_PATH> Path to the output file
|
-o, --output <OUTPUT_PATH> Path to the output file
|
||||||
-f, --flag <FLAG> Flag to pass to the loader (by default DllMain is called) [default: 0]
|
-f, --flag <FLAG> Flag to pass to the loader (by default DllMain is called) [default: 0]
|
||||||
-h, --help Print help
|
-h, --help Print help
|
||||||
-V, --version Print version
|
-V, --version Print version
|
||||||
```
|
```
|
||||||
|
|
||||||
2. Inject the created shellcode into target:
|
2. Inject the created shellcode into target:
|
||||||
|
|
||||||
```
|
```
|
||||||
Usage: airborne-injector.exe -p <process_name> -s <shellcode_path> -k <keyfile_path>
|
Usage: poc-injector.exe -p <PROCESS_NAME> -s <SHELLCODE_PATH> -k <KEYFILE_PATH>
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Depending on the flag passed to the generator, either payload's `DllMain` or user defined function will run:
|
3. Depending on the flag passed to the generator, either payload's `DllMain` with `DLL_PROCESS_ATTACH` or user defined function will run:
|
||||||
|
|
||||||
![Payload's DllMain execution with the default flag (0)](/.github/docs/dllmain-exec.png)
|
<div align="center">
|
||||||
|
<img src=".github/docs/dllmain-exec.png" alt="Payload's DllMain execution with the default flag (0)" width="90%">
|
||||||
![Payload's user defined function execution with the modified flag (1)](/.github/docs/userfunction-exec.png)
|
<img src=".github/docs/userfunction-exec.png" alt="Payload's user defined function execution with the modified flag (1)" width="90%">
|
||||||
|
</div>
|
||||||
|
|
||||||
### Disclaimer
|
### Disclaimer
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "airborne-generator"
|
name = "generator"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "airborne-injector"
|
name = "poc-injector"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
|
@ -85,7 +85,5 @@ fn parse_args() -> Args {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn print_usage() {
|
fn print_usage() {
|
||||||
println!(
|
println!("Usage: poc-injector.exe -p <PROCESS_NAME> -s <SHELLCODE_PATH> -k <KEYFILE_PATH>");
|
||||||
"Usage: airborne-injector.exe -p <process_name> -s <shellcode_path> -k <keyfile_path>"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "airborne-payload"
|
name = "poc-payload"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "airborne-reflective_loader"
|
name = "reflective-loader"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user