1
0
forked from osmarks/potatOS

Merge pull request 'add a new sandbox escape' (#8) from 6_4/potatOS:master into master

Reviewed-on: osmarks/potatOS#8
This commit is contained in:
osmarks 2024-04-28 21:09:47 +00:00
commit 991dd92c5b

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)