Jump to content
MaLd0n

Lilu - Kext and process patcher

Recommended Posts

  • Administrators

An open source kernel extension bringing a platform for arbitrary kext, library, and program patching throughout the system for macOS.

Link HERE

Features

Generic kext patcher

Generic process patcher (64-bit with basic 32-bit functionality)

Generic framework/library patcher (64-bit with basic 32-bit functionality)

Provides a unified plugin API

Installation

You should install this kext along with the plugin kexts depending on it.
The prebuilt binaries are available on releases page.
Several existing plugins possibly with code samples are available on known plugins page. To compile a plugin copy the debug version of Lilu.kext into its directory.

Configuration

Add -liludbg to enable debug printing (available in DEBUG binaries).

Add -liludbgall to enable debug printing in Lilu and all loaded plugins (available in DEBUG binaries).

Add -liluoff to disable Lilu.

Add -liluuseroff to disable Lilu user patcher (for e.g. dyld_shared_cache manipulations).

Add -liluslow to enable legacy user patcher.

Add -lilulowmem to disable kernel unpack (disables Lilu in recovery mode).

Add -lilubeta to enable Lilu on unsupported OS versions (macOS 13 and below are enabled by default).

Add -lilubetaall to enable Lilu and all loaded plugins on unsupported os versions (use very carefully).

Add -liluforce to enable Lilu regardless of the mode, OS, installer, or recovery.

Add liludelay=1000 to enable 1 second delay after each print for troubleshooting.

Add lilucpu=N to let Lilu and plugins assume Nth CPUInfo::CpuGeneration.

Add liludump=N to let Lilu DEBUG version dump log to /var/log/Lilu_VERSION_KERN_MAJOR.KERN_MINOR.txt after N seconds

Peculiarities

Most of the plugins cease to function in safe (-x) mode.
By default Lilu itself does not function in single-user (-s) mode, unless -liluforce is present.

Contribution

For the contributors with programming skills the headers are filled with AppleDOC comments.
Earlier code changes could be tracked in AppleALC project.
Writing and supporting code is fun but it takes time. Please provide most descriptive bugreports or pull requests.

Credits

Apple for macOS and lzvn decompression

Brad Conte for SHA-256 implementation

fG! for Onyx The Black Cat used as a base of the kernel patcher

Nguyen Anh Quynh for capstone disassembler module

Pike R. Alpha for original lzvn decompression

Ralph Hempel for umm_malloc static pool allocator

Vyacheslav Patkov for hde64 simple disassembler module

07151129 for some code parts and suggestions

vit9696 for writing the software and maintaining it

 

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.





×
  • Create New...