From bfe4c68dcc61c7301df1f8dc6255fb33e57c671d Mon Sep 17 00:00:00 2001 From: kmanc Date: Fri, 13 Jan 2023 07:46:50 -0800 Subject: [PATCH] Win crate - inet_pton arg changed (#74) * lock update * version bumps * small fix, should work --- Cargo.lock | 53 +++++++++++-------- process_hollowing/Cargo.toml | 4 +- process_migration/Cargo.toml | 4 +- rco_utils/Cargo.toml | 4 +- tcp_reverse_shell/Cargo.toml | 4 +- .../src/reverse_shell_windows.rs | 2 +- .../src/reverse_shell_windows_antistring.rs | 2 +- 7 files changed, 41 insertions(+), 32 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 71484a0..f47cd96 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -41,9 +41,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.138" +version = "0.2.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8" +checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" [[package]] name = "memoffset" @@ -82,7 +82,7 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "process_hollowing" -version = "1.10.1" +version = "1.10.2" dependencies = [ "nix", "rco_config", @@ -92,7 +92,7 @@ dependencies = [ [[package]] name = "process_migration" -version = "1.11.1" +version = "1.11.2" dependencies = [ "nix", "rco_config", @@ -136,7 +136,7 @@ version = "0.2.0" [[package]] name = "rco_utils" -version = "1.2.0" +version = "1.2.1" dependencies = [ "rand", "windows", @@ -150,7 +150,7 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] name = "tcp_reverse_shell" -version = "1.5.1" +version = "1.5.2" dependencies = [ "rco_config", "rco_utils", @@ -165,9 +165,18 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "windows" -version = "0.43.0" +version = "0.44.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04662ed0e3e5630dfa9b26e4cb823b817f1a9addda855d973a9458c236556244" +checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7" dependencies = [ "windows_aarch64_gnullvm", "windows_aarch64_msvc", @@ -180,45 +189,45 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e" +checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" [[package]] name = "windows_aarch64_msvc" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4" +checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" [[package]] name = "windows_i686_gnu" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7" +checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" [[package]] name = "windows_i686_msvc" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246" +checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" [[package]] name = "windows_x86_64_gnu" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed" +checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" [[package]] name = "windows_x86_64_gnullvm" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028" +checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" [[package]] name = "windows_x86_64_msvc" -version = "0.42.0" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5" +checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" [[package]] name = "xor_params" diff --git a/process_hollowing/Cargo.toml b/process_hollowing/Cargo.toml index 13be2cd..3d1201f 100644 --- a/process_hollowing/Cargo.toml +++ b/process_hollowing/Cargo.toml @@ -7,7 +7,7 @@ license = "MIT" name = "process_hollowing" repository = "https://github.com/kmanc/remote_code_oxidation/tree/main/process_hollowing" rust-version = "1.59" -version = "1.10.1" +version = "1.10.2" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -25,7 +25,7 @@ rco_utils = {path = "../rco_utils", version = ">=1.0.1"} nix = ">=0.16" [target.'cfg(windows)'.dependencies] -windows.version = ">=0.41.0" +windows.version = ">=0.44.0" windows.features = [ "Win32_Foundation", "Win32_Security", diff --git a/process_migration/Cargo.toml b/process_migration/Cargo.toml index 2b3ace7..e3deaf1 100644 --- a/process_migration/Cargo.toml +++ b/process_migration/Cargo.toml @@ -7,7 +7,7 @@ license = "MIT" name = "process_migration" repository = "https://github.com/kmanc/remote_code_oxidation/tree/main/process_migration" rust-version = "1.59" -version = "1.11.1" +version = "1.11.2" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -24,7 +24,7 @@ rco_utils = {path = "../rco_utils", version = ">=1.0.1"} nix = ">=0.16" [target.'cfg(windows)'.dependencies] -windows.version = ">=0.41.0" +windows.version = ">=0.44.0" windows.features = [ "Win32_Foundation", "Win32_Security", diff --git a/rco_utils/Cargo.toml b/rco_utils/Cargo.toml index 85d61e0..44d738e 100644 --- a/rco_utils/Cargo.toml +++ b/rco_utils/Cargo.toml @@ -6,7 +6,7 @@ license = "MIT" name = "rco_utils" repository = "https://github.com/kmanc/remote_code_oxidation/tree/main/rco_utils" rust-version = "1.59" -version = "1.2.0" +version = "1.2.1" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -19,7 +19,7 @@ antistring = ["windows"] rand.optional = true rand.version = ">=0.8.5" windows.optional = true -windows.version = ">=0.41.0" +windows.version = ">=0.44.0" windows.features = [ "Win32_Foundation", "Win32_Networking", diff --git a/tcp_reverse_shell/Cargo.toml b/tcp_reverse_shell/Cargo.toml index 951f7bc..11b7562 100644 --- a/tcp_reverse_shell/Cargo.toml +++ b/tcp_reverse_shell/Cargo.toml @@ -7,7 +7,7 @@ license = "MIT" name = "tcp_reverse_shell" repository = "https://github.com/kmanc/remote_code_oxidation/tree/main/tcp_reverse_shell" rust-version = "1.59" -version = "1.5.1" +version = "1.5.2" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -20,7 +20,7 @@ rco_config = {path = "../rco_config", version = ">=0.2.0"} rco_utils = {path = "../rco_utils", version = ">=1.0.1"} [target.'cfg(windows)'.dependencies] -windows.version = ">=0.41.0" +windows.version = ">=0.44.0" windows.features = [ "Win32_Foundation", "Win32_Security", diff --git a/tcp_reverse_shell/src/reverse_shell_windows.rs b/tcp_reverse_shell/src/reverse_shell_windows.rs index 216fb24..3318afe 100644 --- a/tcp_reverse_shell/src/reverse_shell_windows.rs +++ b/tcp_reverse_shell/src/reverse_shell_windows.rs @@ -44,7 +44,7 @@ pub fn shell(ip: &str, port: u16) { // WINDOWS --> https://docs.microsoft.com/en-us/windows/win32/api/ws2tcpip/nf-ws2tcpip-inet_pton // RUST --> https://microsoft.github.io/windows-docs-rs/doc/windows/Win32/Networking/WinSock/fn.inet_pton.html let mut sockaddr_in = SOCKADDR_IN { - sin_family: AF_INET.0 as u16, + sin_family: AF_INET, ..Default::default() }; // This is magic that I don't really understand but seems to work diff --git a/tcp_reverse_shell/src/reverse_shell_windows_antistring.rs b/tcp_reverse_shell/src/reverse_shell_windows_antistring.rs index 996798a..ad25cfa 100644 --- a/tcp_reverse_shell/src/reverse_shell_windows_antistring.rs +++ b/tcp_reverse_shell/src/reverse_shell_windows_antistring.rs @@ -40,7 +40,7 @@ pub fn shell(ip: &str, port: u16) { // See line 42 let function = rco_utils::find_function_address(ws2_32, 0xf6d69fad519d46a0).unwrap(); let mut sockaddr_in = SOCKADDR_IN { - sin_family: AF_INET.0 as u16, + sin_family: AF_INET, ..Default::default() }; let sin_addr_ptr: *mut c_void = &mut sockaddr_in.sin_addr as *mut _ as *mut c_void;