Skip to content

Releases: DanielKirshner/Windows-PE-Loader

Release list

1.0.1

Choose a tag to compare

@DanielKirshner DanielKirshner released this 06 Aug 11:53

v1.0.1

What is new?

  • fix(imports): use DWORD_PTR cast to prevent pointer truncation on x64 [66685de]
  • fix(memory): prevent integer underflow in Memory__copy bounds check [8e1985f]
  • fix(pe_library): validate section raw data bounds against pe_buffer_size [400bc95]
  • fix(memory): allocate with PAGE_READWRITE instead of PAGE_EXECUTE_READWRITE [b8322e6]
  • fix(pe_library): validate PE signatures in Library__FreeLibrary before trusting pointer [c59123a]
  • fix(memory): use wide string literal in DEBUG_LOG for rva_to_absolute [af6c1ed]
  • fix(utils): wrap RVA_TO_ABSOLUTE macro in do/while(0) for safe expansion [dbf2f2c]
  • fix(imports): prevent DLL leak when RVA resolution fails after Dll__load [7638787]
  • fix(dll): add NULL check for dll parameter in Dll__load [9635929]
  • fix(dll): use correct format specifiers for narrow strings and size_t in DEBUG_LOG [a85e08a]
  • fix(pe_library): check return value of Memory__set_protection for initial readonly [3218153]
  • fix(pe_library): validate e_lfanew is non-negative to prevent integer overflow [726817c]
  • fix(pe_library): validate SizeOfHeaders does not exceed pe_buffer_size [e07a24f]
  • fix(memory): add bounds validation in Memory__set_protection [c3fcd12]
  • fix(pe_library): jump to cleanup_all on import failure to free loaded DLLs [ae0f749]
  • fix(pe_library): match header declaration to implementation using uint32_t for pe_buffer_size [2b32276]
  • chore(pe_library): rename Library__load_library to Library__LoadLibrary for consistent naming [32b341f]
  • fix(logger): remove trailing semicolon from DEBUG_LOG macro definition [9aee00f]

1.0.0

Choose a tag to compare

@DanielKirshner DanielKirshner released this 08 Mar 13:07