vit9696
72b4e55786
Fix invalid Mach-O command handling during kext injection
2019-03-23 17:17:33 +03:00
vit9696
868c064fb1
Get symbol location work
2019-03-23 15:05:12 +03:00
Download-Fritz
0ce7e1ec99
OcMachoLib: Update GetSymbolByRelocOffset interface to report Relocation existance.
2019-03-23 11:51:15 +01:00
Download-Fritz
b18a2feeec
OcMachoLib: Allow for relocation of external symbols.
2019-03-22 11:52:43 +01:00
Download-Fritz
67e445f97b
OcMachoLib: Do not assume DySymtab is available
2019-03-21 21:19:31 +01:00
vit9696
30fb879941
Add internal symbol table stubs
2019-03-20 16:07:18 +03:00
vit9696
59f86290b6
Add missing Mach-O dependencies
2019-03-19 23:16:17 +03:00
vit9696
b05b5a66d1
Implement kext patcher with symbolic resolver in OcAppleKernelLib
...
1. Add support for parsing ID/IDREF in OcXmlLib.
2. Add support for parsing hex numbers in OcXmlLib.
3. Fix buggy MachoSymbolGetFileOffset64 mishandling section numbers.
2019-03-18 00:57:20 +03:00
Download-Fritz
5f5c379c2c
Fix a couple of type mismatches
2019-03-09 15:02:18 +01:00
vit9696
27eb6080ba
Start refactoring SMBIOS
2019-03-01 20:07:50 +03:00
vit9696
c1ef04e47c
Fix OcMachoLib compilation
2019-01-17 12:34:26 +03:00
vit9696
a471bd6c61
Late touches on OcMachoLib
2019-01-17 10:01:26 +03:00
vit9696
caabf0b2ab
Continue fixing and refactoring OcMachoLib
2019-01-16 17:46:10 +03:00
vit9696
aca4a620ac
Fix sanity of symbol retrieval code
2019-01-16 13:15:22 +03:00
vit9696
69f441b5ec
Restore OcMachoLib interfaces for convenience resons
2019-01-15 23:34:01 +03:00
Download-Fritz
28c65c9e9e
OcMachoLib: Add forgotten initialization of Context->SymbolTable.
2019-01-15 19:14:10 +01:00
vit9696
a43cb1386e
Start cleaning up OcMachoLib
2019-01-15 18:23:29 +03:00
Download-Fritz
793b78d103
OcMachoLib: Revise several function prorotypes and checks as part of security considerations.
2019-01-12 22:57:57 +01:00
Download-Fritz
fbac1c4258
OcMachoLib: Runtime-check whether the next LC is in bounds to allow "!= NULL" loops.
2019-01-05 16:29:48 +01:00
Download-Fritz
e92ab78bfc
OcMachoLib: Add forgotten change.
2019-01-05 15:38:28 +01:00
Download-Fritz
dac925cd58
Runtime-check whether the next section is in bounds to allow "!= NULL" loops.
2019-01-05 15:37:46 +01:00
Download-Fritz
dde6882ba3
OcMachoLib: Drop inconvenient CONST qualifiers.
2019-01-05 15:37:14 +01:00
Download-Fritz
7c8347f0ad
OcMachoLib: ASSERT for UINT32 limitation assumption in the symbol code.
2019-01-05 15:29:21 +01:00
Download-Fritz
8d8dbcc6d8
OcMachoLib: Fix a few C++ symbol cosmetics.
2019-01-05 15:29:21 +01:00
Download-Fritz
1bc4c3d379
OcMachoLib: Fix possible overflows when concating C++ symbol names.
2019-01-05 15:29:13 +01:00
Download-Fritz
62c681dd9f
OcMachoLib: Fix function prototype from last commit.
2018-11-10 10:57:46 +01:00
Download-Fritz
51c63ec135
OcMachoLib: Introduce MachoSymbolGetFileOffset64() API.
2018-11-10 10:53:11 +01:00
Download-Fritz
6b4d5120b6
OcMachoLib: Do not use CONST qualifier in casts for readability.
2018-11-10 10:52:33 +01:00
Download-Fritz
619e30c5ba
OcMachoLib: Retrieve symbol type by name.
2018-11-09 18:50:20 +01:00
Download-Fritz
37b0e363d9
OcMachoLib: Verify the name layout for SMCP and MetaClass symbols.
2018-11-09 18:30:23 +01:00
Download-Fritz
b22cb40043
OcMachoLib: Use new OcStringLib macros for CCX symbol name handling.
2018-11-07 14:27:27 +01:00
Download-Fritz
97718a7599
OcMachoLib: Safety improvements, including overflow checks.
...
* Check for offset and address overflows
* Properly sanity-check sections
* Fix an issue misusing Section->Alignment
2018-11-07 10:18:19 +01:00
Download-Fritz
f94f6c5645
OcMachoLib: Fix Relocation iteration index overflow.
2018-11-06 09:09:01 +01:00
Download-Fritz
97da06f663
OcMachoLib: use UINT32 for FileSize and all offsets.
2018-11-06 09:08:46 +01:00
Download-Fritz
0418143198
OcMachoLib: Revert 634f560 for Segments as it's not a completed type.
2018-11-04 11:09:58 +01:00
Download-Fritz
6388838c9a
OcMachoLib: Fix LC boundary verification.
2018-11-04 10:56:43 +01:00
Download-Fritz
634f560be8
OcMachoLib: Verify exact LC size when the exact type is known.
2018-11-04 10:44:09 +01:00
Download-Fritz
006cb222e4
OcMachoLib: Check symbol value sanity in MachoGetMetaclassSymbolFromSmcpSymbol64().
2018-11-04 10:38:57 +01:00
Download-Fritz
ff6a9b83eb
OcMachoLib: Ensure string index sanity when retrieving an indirect symbol's name.
2018-11-04 10:30:33 +01:00
Download-Fritz
649679570a
OcMachoLib: Use MachoGetSymbolName64() internally.
2018-11-04 09:55:31 +01:00
Download-Fritz
b14efc6136
OcMachoLib: Catch potential Index overflow when iterating over Relocations.
2018-11-04 09:14:44 +01:00
Download-Fritz
524732e0ef
OcMachoLib: Use UINT32 variables to refer to UINT32 Mach-O structure data.
2018-11-04 09:14:20 +01:00
Download-Fritz
4241912574
OcMachoLib: Publish updated Context struct to support static allocations.
2018-11-04 09:06:50 +01:00
Download-Fritz
c957f97c30
OcMachoLib: Consume OcGuardLib to verify alignment requirements.
2018-11-04 09:05:49 +01:00
Download-Fritz
4b4e518567
OcMachoLib: Expand internal CONST usage and remove related redundant casts.
2018-11-04 09:02:15 +01:00
Download-Fritz
df54805a92
OcMachoLib: Always return Mach-O memory as CONST.
2018-11-04 08:42:04 +01:00
Download-Fritz
8ddbd9fdd4
OcMachoLib: Introduce MachoGetFileSize() API.
2018-11-04 08:21:17 +01:00
Download-Fritz
3b9ad05f71
OcMachoLib: Generically take VOID * for file data in Context init.
2018-11-04 08:19:27 +01:00
Download-Fritz
9c3eb014c7
OcMachoLib: Fix MachoGetNextSegment64() to return NULL when the LC is too small.
2018-11-03 21:04:19 +01:00
Download-Fritz
46c6c16405
OcMachoLib: Enforce exact UUID LC size.
2018-11-03 20:58:42 +01:00