add a new sandbox escape #8

Merged
osmarks merged 1 commits from 6_4/potatOS:master into master 2024-04-28 21:09:47 +00:00

View File

@ -48,6 +48,20 @@ local escapes = {
local k = dgetfenv(load("")).fs local k = dgetfenv(load("")).fs
if is_probably_filesystem(k) then return k end if is_probably_filesystem(k) then return k end
end, end,
equals = function()
-- very advanced sandbox escape
local k=load[=================[
local _=({load[=======[local _;
return pcall(load[=[return load
]=][=[=]=],function()_=load[==[
return debug.getinfo(#[=[===]=]
).func[=[return fs]=][=[]=]]==]
[=[]=]end),_]=======][=[==]=]})
[#[=======[==]=======]]return _
]=================][===[==]===]
if is_probably_filesystem(k) then return k end
end,
getfenv = function() getfenv = function()
for _, v in pairs(fs) do for _, v in pairs(fs) do
local res = scan_environment(v) local res = scan_environment(v)