Thanks for the tip! I'll have to talk to Megiddo about his thoughts on this. We have been wanting to move most of ULib and ULX's data to a database instead of flatfiles for a while now (or implement
Megiddo's SQL/Flatfile abstraction concept), but I can't give even an estimate on the timeframe for that.
The only problem I foresee is that having this unique string stored in a configuration file means that the configuration file has to be stored in a location that can be read without knowing the unique string-- In other words, a fixed location. That file could easily get overwritten, the server would lose the unique string, then wouldn't be able to load any of the 'protected' files, thus causing the same effect.
Again, I'll talk to the all-knowing (well, mostly-knowing) Megiddo and see what he thinks. In the meantime, the best way to prevent this if you refuse to set sv_allowupload to 0 would be to manually edit the ULib defines.lua file, like you suggested.