News for hackers. Stuff that matters.
Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by Therenas on Saturday June 29, 2024 @12:02PM (#40831515)
Factorio disabled bytecode loading in response to this. Bytecode did allow for some cool stuff like writing mods in a preprocessor language that spits out Lua bytecode, but ultimately the security issues were more important to address.

Almost all of the debug library was made unavailable to mods as well, for similar security reasons.

Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by gjsman-1000 on Saturday June 29, 2024 @12:05PM (#40831533)
Citation?

Factorio 1.1.101 (which the blog post says included the fix) does not list any changes regarding the disabling of bytecode or restricting the debug library. This would have been notable news, even without admitting the security risk. Factorio 1.1.107 does mention disabling the debug library, but it doesn’t seem this article had anything to do with that.

Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by Therenas on Saturday June 29, 2024 @12:13PM (#40831574)
I work on the game. The debug library was disabled for other security holes that were brought to our attention, so it wouldn‘t be related to this, but I thought it was interesting to mention.

I believe the change was not mentioned in the changelog as an attempt at 'security through obscurity', trying to avoid people getting any ideas before the update is wide-spread. Not sure that helps any, but still.

Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by deely3 on Saturday June 29, 2024 @01:05PM (#40831974)
Sorry, but thats just a perfect example why 'security through obscurity' is wrong. I have zero idea about security risks, but if fix does not mentioned anywhere, then for people that use previous version there no rush to upgrade.
Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by TillE on Saturday June 29, 2024 @01:45PM (#40832275)
> no rush to upgrade

I suspect the overwhelming majority of Factorio players are using Steam, which auto updates.

Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by kevincox on Saturday June 29, 2024 @04:08PM (#40833039)
Due to the need for perfect synchronization all users need to be using the exact same version. Mods can also break between versions. It is therefore very common for public servers to stick on one version for extended periods of time. It is common for people to use the Steam "betas" functionality to pick an exact version or download an exact version from the Factorio website.

I would say that servers only tend to update when large features are released. So announcing a security vulnerability would likely push some servers to update.

Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by bigstrat2003 on Saturday June 29, 2024 @11:45PM (#40835004)
Without metrics of some kind from Wube I guess we aren't likely to know for sure, but I doubt very much it is common to run old versions of the game on Steam. I bet you that most people are simply running on the latest version at all times. That solves the MP issue, and plenty of mods don't need to be updated for each game version.
Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by magicalhippo on Saturday June 29, 2024 @02:55PM (#40832656)
Factorio is special though, because it actively uses the beta version functionality in Steam to not only provide betas but also older stable versions. This allows the devs to move fast and break things.

I know I've held back my copy of Factorio due to some concern over changes in newer versions, preferring to letting the dust settle before upgrading to the latest stable version.

Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by Therenas on Saturday June 29, 2024 @01:08PM (#40831995)
I don‘t disagree.
Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by ethbr1 on Saturday June 29, 2024 @01:30PM (#40832158)
Arguments either way. Generic "security vulnerabilities addressed" in release notes is a nice balance.
Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by wruza on Saturday June 29, 2024 @02:24PM (#40832493)
Loading raw bytecode is known to be unsafe, and iirc that is mentioned in lua_load/luaL_load* documentation.

A preprocessor could spit out Lua code with the same effect and less complexity. Really interesting why and how these decision were made.

Re:Bytecode Breakdown: Unraveling Factorio's Lua Security Flaws by mananaysiempre on Saturday June 29, 2024 @04:07PM (#40833035)
For what it’s worth, Metalua also generated PUC-Lua bytecode directly instead of source code, making it incompatible with LuaJIT (which might have been part of the reason why it died).