S&box Wiki

Revision Difference

AccessList#543929

<cat>Code.Misc</cat> <title>Code Accesslist</title> S&box uses an accesslist to restrict which types and members you can access from your code. This is necessary to prevent access to dangerous functions such as `Process.Start`, `DllImport` or reflection. You can only access types and members that are allowed in the accesslist below. # How it works After your addon gets compiled the generated assembly will be scanned for all used types. Any call to a type or member that is not allowed explicitly will result in the addon not getting loaded. # Reporting a bug Since escaping or bypassing the sandbox would result in serious security issues (such as getting infected with malware just by joining servers), please report them properly as described [here](https://github.com/Facepunch/sbox-issues/security/policy). *Do not report them publicly*. # Accesslist <warning>This list is almost guaranteed to be out of date, you can check the whitelist yourself in `config\accessgroups\baseaccess.txt`</warning> <warning>This list is almost guaranteed to be out of date, you should check the whitelist yourself in `config\accessgroups\baseaccess.txt`</warning> Last updated: 15/5/2021 ``` Sandbox.Engine/* Sandbox.Game/* Sandbox.System/* System.Private.CoreLib/System.Void System.Private.CoreLib/System.Void.* System.Private.CoreLib/System.Boolean System.Private.CoreLib/System.Boolean.* System.Private.CoreLib/System.Double System.Private.CoreLib/System.Double.* System.Private.CoreLib/System.Int16 System.Private.CoreLib/System.Int16.* System.Private.CoreLib/System.UInt16 System.Private.CoreLib/System.UInt16.* System.Private.CoreLib/System.Int32 System.Private.CoreLib/System.Int32.* System.Private.CoreLib/System.UInt32 System.Private.CoreLib/System.UInt32.* System.Private.CoreLib/System.UInt64 System.Private.CoreLib/System.UInt64.* System.Private.CoreLib/System.Int64 System.Private.CoreLib/System.Int64.* System.Private.CoreLib/System.IntPtr System.Private.CoreLib/System.IntPtr.* System.Private.CoreLib/System.Single System.Private.CoreLib/System.Single.* System.Private.CoreLib/System.Object System.Private.CoreLib/System.Object.* System.Private.CoreLib/System.String System.Private.CoreLib/System.String.* System.Private.CoreLib/System.Action* System.Private.CoreLib/System.Func* System.Private.CoreLib/System.Type System.Private.CoreLib/System.Type.* System.Private.CoreLib/System.Array System.Private.CoreLib/System.Array.* System.Private.CoreLib/System.Char System.Private.CoreLib/System.Char.* System.Private.CoreLib/System.IDisposable* System.Private.CoreLib/System.Collections.* System.Collections/System.Collections.* System.Private.CoreLib/System.Math.* System.Linq/* System.Private.CoreLib/System.Byte* System.Private.CoreLib/System.SByte* System.Private.CoreLib/System.Nullable* System.Private.CoreLib/System.Predicate* System.Private.CoreLib/System.IEquatable* System.Private.CoreLib/System.IO.BinaryWriter* System.Private.CoreLib/System.IO.BinaryReader* System.Private.CoreLib/System.Threading.Tasks.Task System.Private.CoreLib/System.Threading.Tasks.Task.Yield() System.Private.CoreLib/System.Threading.Tasks.Task`1 System.Private.CoreLib/System.Threading.Tasks.Task`1.* System.Private.CoreLib/System.Runtime.CompilerServices.AsyncTaskMethodBuilder* System.Private.CoreLib/System.Runtime.CompilerServices.YieldAwaitable* System.Private.CoreLib/System.Runtime.CompilerServices.IAsyncStateMachine System.Private.CoreLib/System.Activator.CreateInstance<T>() System.Private.CoreLib/System.Guid* System.Private.CoreLib/System.IO.MemoryStream* System.Private.CoreLib/System.IO.Stream System.Private.CoreLib/System.IO.Stream.* System.Private.CoreLib/System.Runtime.CompilerServices.TaskAwaiter* System.Private.CoreLib/System.Threading.Tasks.Task.Delay* System.Private.CoreLib/System.Threading.Tasks.Task.GetAwaiter* System.Private.CoreLib/System.Threading.CancellationToken* System.Private.CoreLib/System.Enum* System.Private.CoreLib/System.IAsyncResult System.Private.CoreLib/System.AsyncCallback System.Private.CoreLib/System.Runtime.CompilerServices.AsyncVoidMethodBuilder* System.Private.CoreLib/System.Environment.get_CurrentManagedThreadId() System.Private.CoreLib/System.DateTime* System.Private.CoreLib/System.DayOfWeek* System.Private.CoreLib/System.HashCode* System.Private.CoreLib/System.StringSplitOptions* System.Private.CoreLib/System.ValueTuple* System.Private.CoreLib/System.Tuple* System.Private.CoreLib/System.Random* System.Private.CoreLib/System.Threading.Interlocked* System.Private.CoreLib/System.Delegate System.Private.CoreLib/System.Delegate.Combine(* System.Private.CoreLib/System.Delegate.Remove(* System.Private.CoreLib/System.Exception* System.Private.CoreLib/System.NotImplementedException* System.Private.CoreLib/System.NotSupportedException* System.Private.CoreLib/System.IndexOutOfRangeException* System.Private.CoreLib/System.FormatException* System.Private.CoreLib/System.Math.* System.Private.CoreLib/System.MathF.* System.Private.CoreLib/System.RuntimeFieldHandle System.Private.CoreLib/System.Runtime.CompilerServices.RuntimeHelpers.InitializeArray( System.Array, System.RuntimeFieldHandle ) System.Private.CoreLib/System.IO.Path.* System.Private.CoreLib/System.IO.FileMode System.Private.CoreLib/System.IO.SeekOrigin System.Text.RegularExpressions/System.Text.RegularExpressions.* System.Private.CoreLib/System.Text.Encoding* System.Private.CoreLib/System.Buffers.ArrayPool* System.Private.CoreLib/System.Convert.ToInt32* System.Net.Http/System.Net.Http.HttpClient* System.Net.Http.Json/System.Net.Http.Json.HttpClientJsonExtensions* System.Private.CoreLib/System.TimeSpan* System.Private.CoreLib/System.RuntimeTypeHandle System.Private.CoreLib/System.StringComparison System.Private.CoreLib/System.Attribute* System.Private.CoreLib/System.AttributeUsageAttribute* System.Private.CoreLib/System.FlagsAttribute* System.Private.CoreLib/System.Runtime.CompilerServices.IsReadOnlyAttribute System.Private.CoreLib/System.Runtime.CompilerServices.ExtensionAttribute System.Private.CoreLib/System.Runtime.CompilerServices.IteratorStateMachineAttribute System.Private.CoreLib/System.Runtime.CompilerServices.AsyncStateMachineAttribute System.Private.CoreLib/System.Runtime.CompilerServices.CompilerGeneratedAttribute System.Private.CoreLib/System.Runtime.CompilerServices.PreserveBaseOverridesAttribute System.Private.CoreLib/System.Diagnostics.DebuggerBrowsableAttribute System.Private.CoreLib/System.Diagnostics.DebuggerHiddenAttribute System.Private.CoreLib/System.Diagnostics.DebuggerStepThroughAttribute System.Text.Json/System.Text.Json.Serialization.JsonPropertyNameAttribute* System.Private.CoreLib/System.Span* System.Private.CoreLib/System.Reflection.DefaultMemberAttribute ```