xllify

← Home

Things you need to know about XLL add-ins

XLL add-ins are native Windows binaries that load directly into Excel. They offer significant advantages for calculation-heavy workbooks but come with trade-offs worth understanding before running and distributing them. Concerned about XLL security? Read on. This page covers the risks honestly, including where xllify's sandbox mitigates a lot of traditional XLL risks.

Function code cannot escape its sandbox. Your function code runs inside a locked-down Luau sandbox with no access to the file system, network, registry, or any other system resource. The security boundary you are trusting is the xllify runtime and the Luau VM, not the individual function author. More detail below.

Advantages

Things to be aware of

Code signing

Code signing is something we highly recommend when distributing an XLL. A signed binary tells Windows and your users that the file comes from a known publisher and has not been tampered with. Without a signature:

XLLs built by xllify are currently downloaded unsigned. You can sign them yourself using a code-signing certificate before distributing them. Microsoft's Azure Trusted Signing is a straightforward and affordable option. You can also use a traditional code-signing certificate with signtool.exe from the Windows SDK.

Built-in code signing from within xllify is on the roadmap.

The sandbox in detail

xllify compiles your function code to Luau bytecode. Luau is a language derived from Lua, designed from the ground up for safe sandboxed execution and battle-tested by Roblox across millions of developers. The xllify runtime deliberately does not expose any file-system, network, or OS APIs to the scripting environment. Your function code can perform calculations, manipulate strings and tables, and return results to Excel. Nothing more. In the future, a sensible set of opt-in entitlements such as HTTP GET will be permitted to allow-listed domains.

The xllify runtime is the same trusted, read-only binary in every build. There is no mechanism to break out of the sandbox or inject native code through xllify. Enterprise customers are encouraged to review the runtime and sandbox.

The sandboxing is not formally proven: since the Luau VM is implemented in C++, compiler or standard library vulnerabilities could in theory be exploitable. In practice these are very rare and fixed quickly. See the Luau sandbox documentation for a full discussion.