From 3d1ce2d58afa4fdcf158551da618d0bdb2564931 Mon Sep 17 00:00:00 2001 From: asahi <381848900@qq.com> Date: Mon, 30 Dec 2024 00:02:57 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8Dload=5Fexe=E5=87=BD?= =?UTF-8?q?=E6=95=B0=E4=B8=AD=E7=9A=84=E9=97=AE=E9=A2=98,=E7=8E=B0?= =?UTF-8?q?=E5=9C=A8=E5=8F=AF=E4=BB=A5=E6=AD=A3=E5=B8=B8=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cargo.lock | 44 ++++++++++++++ Cargo.toml | 5 +- Readme.md | 8 ++- src/bin/main.rs | 2 +- src/errors.rs | 3 + src/lib.rs | 139 ++++++++++++++++++++++++++++----------------- src/types.rs | 14 +++++ tests/Test.exe | Bin 1024 -> 0 bytes tests/Testx32.exe | Bin 156160 -> 0 bytes tests/Testx32D.exe | Bin 0 -> 50176 bytes tests/Testx32R.exe | Bin 0 -> 10752 bytes tests/Testx64.exe | Bin 179200 -> 0 bytes tests/Testx64D.exe | Bin 0 -> 69120 bytes 13 files changed, 159 insertions(+), 56 deletions(-) create mode 100644 src/types.rs delete mode 100644 tests/Test.exe delete mode 100644 tests/Testx32.exe create mode 100644 tests/Testx32D.exe create mode 100644 tests/Testx32R.exe delete mode 100644 tests/Testx64.exe create mode 100644 tests/Testx64D.exe diff --git a/Cargo.lock b/Cargo.lock index 8aa8a30..28d1de8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -23,6 +23,12 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + [[package]] name = "flate2" version = "1.0.35" @@ -33,15 +39,50 @@ dependencies = [ "miniz_oxide", ] +[[package]] +name = "foldhash" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" + +[[package]] +name = "hashbrown" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +dependencies = [ + "foldhash", +] + +[[package]] +name = "indexmap" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" +dependencies = [ + "equivalent", + "hashbrown", +] + [[package]] name = "loadpe-rs" version = "0.1.0" dependencies = [ + "lz4_flex", "object", "thiserror", "windows", ] +[[package]] +name = "lz4_flex" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5" +dependencies = [ + "twox-hash", +] + [[package]] name = "memchr" version = "2.7.4" @@ -63,7 +104,10 @@ version = "0.36.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ + "crc32fast", "flate2", + "hashbrown", + "indexmap", "memchr", "ruzstd", ] diff --git a/Cargo.toml b/Cargo.toml index c959459..78425f6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,8 @@ version = "0.1.0" edition = "2021" [dependencies] -object = "0.36.7" +lz4_flex = "0.11.3" +object = {version= "0.36.7", features=["default", "write"]} thiserror = "2.0.9" [dependencies.windows] @@ -12,4 +13,4 @@ version = "0.58.0" features=[ "Win32_System_Memory", "Win32_System_LibraryLoader" -] \ No newline at end of file +] diff --git a/Readme.md b/Readme.md index 2a6c9d7..ed9d962 100644 --- a/Readme.md +++ b/Readme.md @@ -4,4 +4,10 @@ ```bash git remote add origin ssh://git@81.70.52.148:17022/asahi/loadpe-rs.git -``` \ No newline at end of file +``` + +如果使用rust进行壳的开发: +- 压缩程序并生成PE +- 编写shellcode,shellcode依赖: + - 解压缩API + - kernel32.dll中的API \ No newline at end of file diff --git a/src/bin/main.rs b/src/bin/main.rs index 6778e54..ad219bb 100644 --- a/src/bin/main.rs +++ b/src/bin/main.rs @@ -4,7 +4,7 @@ use loadpe_rs::load_exe; const EXE_PATH: &str = r#"E:\work\rust\loadpe-rs\tests\Testx64.exe"#; #[cfg(target_arch = "x86")] -const EXE_PATH: &str = r#"E:\work\rust\loadpe-rs\tests\Testx32.exe"#; +const EXE_PATH: &str = r#"E:\work\rust\loadpe-rs\tests\Testx32R.exe"#; fn main() { match load_exe(EXE_PATH, None) { diff --git a/src/errors.rs b/src/errors.rs index 279dbcc..4c646fc 100644 --- a/src/errors.rs +++ b/src/errors.rs @@ -2,6 +2,7 @@ use std::alloc::LayoutError; use thiserror::Error; use object::Error as ObjectError; +use object::write::Error as ObjectWriteError; use windows::core::Error as WindowsError; #[derive(Error, Debug)] pub enum LoadPEError { @@ -28,4 +29,6 @@ pub enum LoadPEError { LayoutError(#[from] LayoutError), #[error("更改内存属性失败!")] ChangeMemoryProtectFailed, + #[error("写入PE文件失败!")] + WritePEError(#[from] ObjectWriteError), } \ No newline at end of file diff --git a/src/lib.rs b/src/lib.rs index 0f1cf5d..acdd243 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,4 +1,6 @@ use errors::LoadPEError; + +use lz4_flex::block::compress_prepend_size; use object::{ endian, pe::{ @@ -6,11 +8,14 @@ use object::{ IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE, }, read::pe::{self, ImageOptionalHeader, PeFile32}, - LittleEndian, Object, + write::pe::Writer, + LittleEndian, Object, ObjectSection, SectionIndex, U16Bytes, }; use std::{ - alloc::{alloc, Layout}, arch::asm, fs + alloc::{alloc, Layout}, + fs, }; +use types::CompressPeInfo; use windows::{ core::PCSTR, Win32::System::{ @@ -23,12 +28,9 @@ use windows::{ }; pub mod errors; mod help; +mod types; /// 加载并启动一个exe文件,需要支持命令行参数 -/// -/// -/// -/// pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEError> { // 1. 检查文件是否存在 if !fs::metadata(exe_path).is_ok() { @@ -49,13 +51,13 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr .get(endian::LittleEndian); // 3. 为镜像分配内存 // 分配的内存,后续需要修改内存属性 - // - let layout = Layout::from_size_align(image_size as usize, 1)?; + + // 对齐值一定要写0x1000,否则会出现问题 + let layout = Layout::from_size_align(image_size as usize, 0x1000)?; let buf = unsafe { alloc(layout) }; if buf.is_null() { return Err(LoadPEError::MemoryAllocFailed); } - dbg!("分配的内存地址: {:?}", buf); // 进行数据的拷贝。 @@ -100,15 +102,8 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr let section_data = &data [pointer_to_raw_data as usize..(pointer_to_raw_data + size_of_raw_data) as usize]; - dbg!( - "拷贝节区数据: va: {:?}, size_of_raw_data: {:?}, pointer_to_raw_data: {:?}, section_data.len: {:?}", - va, size_of_raw_data, pointer_to_raw_data, section_data.len() - ); - unsafe { let dst = (buf as usize + va as usize) as *mut u8; - dbg!("dst: {:p}", dst); - std::ptr::copy(section_data.as_ptr(), dst, size_of_raw_data as usize); }; } @@ -140,7 +135,6 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr LoadLibraryA(PCSTR::from_raw(p_module_name)) .map_err(|err| LoadPEError::LoadLibraryError(err))? }; - dbg!(h_module); if h_module.is_invalid() { // 这个逻辑应该走不到 unimplemented!("LoadLibraryA failed"); @@ -230,7 +224,6 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr // 修复IAT表 // 将函数地址写入IAT表 如果是x86_64,需要写入8字节 // 如果是x86,需要写入4字节 - // TODO: 验证一下是否修复了 unsafe { #[cfg(target_arch = "x86")] { @@ -251,7 +244,6 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr // 1. 获取重定向表的数据目录 let relocation_table_directory = file.data_directory(IMAGE_DIRECTORY_ENTRY_BASERELOC); if relocation_table_directory.is_none() { - // TODO: 如果没有重定位表,应该要把这个错误返回出去 return Err(LoadPEError::NoRelocationTable); } let base_relocation_table_rva = relocation_table_directory @@ -260,6 +252,11 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr .get(LittleEndian); let mut relocation_offset = 0; + let image_base = file + .nt_headers() + .optional_header + .image_base + .get(LittleEndian); loop { // 读取一个IMAGE_BASE_RELOCATION @@ -276,6 +273,7 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr let size_of_block = relocation.size_of_block.get(LittleEndian); let base_block = base_relocation_table_rva as usize + relocation_offset + 8; let block_num = (size_of_block - 8) / 2; + for i in 0..block_num { // 读取一个TypeOffset let type_offset = unsafe { @@ -291,21 +289,12 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr // 需要修复的地址偏移 let offset_va = virtual_address + r_offset as u32; // 若要应用基址重定位,会计算首选基址与在其中实际加载映像的基址之间的差异。 如果在首选基址处加载映像,则差异为零,因此无需应用基址重定位。 - let reloc_offset = buf as usize - - file - .nt_headers() - .optional_header - .image_base - .get(LittleEndian) as usize; + // 修复后的值: 按类型 + let reloc_offset = buf as usize - image_base as usize; + // 被修复的地址: let p_address = (buf as usize + offset_va as usize) as *mut u32; let address_value = unsafe { *p_address }; - dbg!( - "r_type: {:?}, r_offset: {:?}, offset_va: {:?}, virtual_address: {:?}", - r_type, - r_offset, - offset_va, - virtual_address - ); + // TODO: 验证一下是否修复了 match r_type { 0 => {} @@ -317,7 +306,6 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr unsafe { *p_address = new_address; } - dbg!("修复一个16位地址: {:?} -> {:?}", address_value, new_address); } 2 => { // IMAGE_REL_BASED_LOW 基准重定位将差值的低 16 位加到偏移的 16 位字段。 16 位字段代表 32 位字的低半部分。 @@ -327,16 +315,14 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr unsafe { *p_address = new_address; } - dbg!("修复一个16位地址: {:?} -> {:?}", address_value, new_address); } 3 => { // 如果r_type是3,表示这个TypeOffset是一个IMAGE_REL_BASED_HIGHLOW // 这个时候需要修复一个32位的地址 - let new_address = address_value + buf as u32; + let new_address = address_value + reloc_offset as u32; unsafe { *p_address = new_address; } - dbg!("修复一个32位地址: {:?} -> {:?}", address_value, new_address); } 10 => { // IMAGE_REL_BASED_DIR64 基址重定位将差值添加到偏移的 64 位字段。 @@ -344,7 +330,6 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr unsafe { *(p_address as *mut u64) = new_address as u64; } - dbg!("修复一个64位地址: {:?} -> {:?}", address_value, new_address); } _ => { // 其他的类型,暂时不支持 @@ -368,13 +353,13 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr // 遍历节区,设置节区属性 for section in file.sections() { let va = section.pe_section().virtual_address.get(LittleEndian); - let size_of_raw_data = section.pe_section().size_of_raw_data.get(LittleEndian); + // let size_of_raw_data = section.pe_section().size_of_raw_data.get(LittleEndian); + let section_name = section.name().unwrap(); + let virtual_size = section.pe_section().virtual_size.get(LittleEndian); let characteristics = section.pe_section().characteristics.get(LittleEndian); let section_va = buf as usize + va as usize; - let section_size = align_to!(size_of_raw_data, section_alignment); - if section_size == 0 { - continue; - } + let section_size = align_to!(virtual_size, section_alignment); + // 设置节区属性 let protect; if characteristics & IMAGE_SCN_MEM_EXECUTE != 0 @@ -405,16 +390,9 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr } else { return Err(LoadPEError::ChangeMemoryProtectFailed); } - // 设置属性 let mut old_protect = PAGE_PROTECTION_FLAGS(0); - - dbg!( - "设置节区属性: va: {:?}, size: {:?}, protect: {:?}", - section_va, - section_size, - protect - ); + println!("{section_name} va: {:x}, section_size: {:x} address: {:x} characteristics: {:x} protect: {:x}", va, section_size, section_va, characteristics, protect); let result = unsafe { VirtualProtect( @@ -425,7 +403,6 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr ) }; if result.is_err() { - dbg!("设置节区属性失败: {:?}", result.unwrap_err()); return Err(LoadPEError::ChangeMemoryProtectFailed); } } @@ -439,9 +416,67 @@ pub fn load_exe(exe_path: &str, _args: Option>) -> Result<(), LoadPEEr let entry_point = buf as usize + entry_point as usize; let entry_point: extern "system" fn() = unsafe { std::mem::transmute(entry_point) }; dbg!("entry_point: {:p}", entry_point); - entry_point(); } } Ok(()) } + +/// 压缩PE并保存到指定路径 +/// 需要注入解压缩的位置无关代码 +pub fn compress_pe(pe_data: &[u8], output_path: &str) -> Result<(), LoadPEError> { + // 1. 解析PE文件 + #[cfg(target_arch = "x86")] + let origin_pe: PeFile32 = pe::PeFile::parse(pe_data)?; + #[cfg(target_arch = "x86_64")] + let origin_pe: PeFile64 = pe::PeFile::parse(pe_data)?; + // 2. 获取头部数据 + let origin_pe_header_data = { + let head_size = origin_pe + .nt_headers() + .optional_header + .size_of_headers + .get(endian::LittleEndian); + &pe_data[..head_size as usize] + }; + // 压缩头部数据 + let compressed_header_data = compress_prepend_size(origin_pe_header_data); + + // 3. 获取节区数据 + let section_data = { + let offset = origin_pe + .section_by_index(SectionIndex(0))? + .pe_section() + .pointer_to_raw_data + .get(LittleEndian); + &pe_data[offset as usize..] + }; + // 压缩节区数据 + let compressed_section_data = compress_prepend_size(section_data); + + // 4. 构造压缩后的PE文件 + { + let section_alignment = origin_pe.nt_headers().optional_header.section_alignment(); + let file_alignment = origin_pe.nt_headers().optional_header.file_alignment(); + let compress_info = CompressPeInfo { + header_origin_size: origin_pe_header_data.len() as u32, + header_compress_size: compressed_header_data.len() as u32, + code_origin_size: section_data.len() as u32, + code_compress_size: compressed_section_data.len() as u32, + }; + let mut buf = Vec::with_capacity(1024 * 1024); + let is_64 = origin_pe.is_64(); + let mut new_pe_writer = Writer::new(is_64, section_alignment, file_alignment, &mut buf); + + // 写入DOS头和dos sub + new_pe_writer.write_dos_header_and_stub()?; + // 写入PE头 拷贝一份 + let mut new_pe_header = origin_pe.nt_headers().clone(); + // 重写节区 + new_pe_header.file_header.number_of_sections = U16Bytes::new(LittleEndian, 2); + + // TODO: 数据目录中,我还是想要kernel32.dll中的LoadLibraryA和GetProcAddress地址 + } + + todo!() +} diff --git a/src/types.rs b/src/types.rs new file mode 100644 index 0000000..2a98886 --- /dev/null +++ b/src/types.rs @@ -0,0 +1,14 @@ + +#[repr(C)] +#[derive(Debug, Clone, Copy)] +/// 保存压缩前的原始PE文件信息 +pub struct CompressPeInfo { + // 原始PE文件头大小 + pub header_origin_size: u32, + // 压缩后的PE文件头大小 + pub header_compress_size: u32, + // 原始PE文件代码段大小 + pub code_origin_size: u32, + // 压缩后的PE文件代码段大小 + pub code_compress_size: u32, +} \ No newline at end of file diff --git a/tests/Test.exe b/tests/Test.exe deleted file mode 100644 index d2601315ddf9363a8916f4d377af53ad30ed9dab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1024 zcmeZ`n!v!!z`(!)#Q*;@Fzf)*Am9Kd@e>Dt(tPr}_!zcuo>knz=yO&vBqOs}p`a)~ zy(lqPAvrNGFTX?~DOI7UG*2NjPr=1MSRpq*B~_1?mrDg|bndG1Lz<^0C&KXZD_j$` zzER|3`{T) z1_l)YARB}gKw=IMHc%eqZx{y2faQVWYn2(G+JTxt`alGjhEpIx1|Oi94VXn`0%09i zgY`;MD@tH8Aa{ZM3c^T0fq@|biHnsv1L~(OP}(CkCnsMaJijO>MUlbOFtIq7fgy__ zLsr0nAwvL2WHG$p2O0#VK$aao^Iw$#DEeQO14wp2%>Y@n48#WF2}ojxfNTyVK1dx5 zpt~cH(X}G8B%mliIkmW$!P_;+&(+7+NG~NPhk;=(qc2b}F+J5OzrvBBv^cd0CId5V IlqNO=09jUEaR2}S diff --git a/tests/Testx32.exe b/tests/Testx32.exe deleted file mode 100644 index 241d9c74bc89b83d27be32e145c6b163436a9a8a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156160 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 literal 0 HcmV?d00001 diff --git a/tests/Testx32R.exe b/tests/Testx32R.exe new file mode 100644 index 0000000000000000000000000000000000000000..333da320d46802456f10580eb63ba8d9481bfc0d GIT binary patch literal 10752 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 E1CKV_6951J diff --git a/tests/Testx64D.exe b/tests/Testx64D.exe new file mode 100644 index 0000000000000000000000000000000000000000..0b41602f52d427775839cb8b5ebc3d174e17817b GIT binary patch literal 69120 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 Vt9@(vR%GcP-2%D={=+Qre*i)KQwIP5 literal 0 HcmV?d00001