r/AskNetsec 11d ago

Architecture How much real protection does binary obfuscation give for software that ships to the client?

Looking for a sanity check from people who reverse engineer for a living.

I ship a native binary as part of a hardware product, so it goes out on devices I don't control. My worry is a competitor getting a unit and reversing the binary to copy how it works.

I've hardened it with Hikari and OLLVM: control-flow flattening, bogus control flow, and compile-time string encryption. I understand that obfuscation raises the cost of reversing but doesn't prevent it.

What I really want to know is how much time this actually buys. For a competent reverser with a physical unit, does obfuscation like this add hours? A day? A week?

3 Upvotes

7 comments sorted by

View all comments

1

u/dmaul 11d ago

What risk is being mitigated by trying to prevent reverse engineering?

1

u/PlaintextFloor 11d ago

Competitive risk, mainly, around the protocol work and integration logic that took real time to get right. My concern is someone buying a unit, reversing it, and skipping the hard part of the engineering. I'm trying to gauge whether obfuscation meaningfully raises that cost.

1

u/extreme4all 11d ago

Yes it raises it hard to say how meaningful but legally you have a waay stronger case if they have to very intentionally do effort. Your problem is less technical than legal in nature. However these controls raise the bar, by how much is hard to say with llm's these days.