Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Удаление скрытых файлов с флешки и Безопасное извл.устройства (http://forum.oszone.net/showthread.php?t=137556)

beve 13-04-2009 15:44 1092805

Удаление скрытых файлов с флешки и Безопасное извл.устройства
 
Подскажите знающие, возможно ли реализовать такое:
Скажем так, на некоем предприятии, недобросовесный админ, или др. причины, но на сервере постоянно присуствуют вирусы. При подсоединении флешки к компьютеру на предприятии - флешка заражается....Идея такая:
Создать скрипт-файл, который будет помещен на флешку, и перед тем как вынуть флешку, нужно будет просто запустить данный скрипт, и он производил бы такие действия:
• Так как файл на флешке, то букву Диска флешки узнать будет нетрудно, хотябы даже так: $N_Disk=StringLeft(@ScriptFullPath,1)
• Дальше произвести поиск файлов на флешке с атрибутами - Скрытый, Системный (думаю ясно почему), включая файл AUTORUN.INF и удаление их.
• После удаления - последующее извлечение устройства (Тут есть код: http://www.autoitscript.com/forum/in...6&#entry597036)
Вопрос такой, как вы думаете, "прокатит" такой способ, или нет, не успеет ли вирус заразить скрипт-файл?
И если "прокатит", то как лучше произвести поиск на данной флешке только файлов по маске *.exe с атрибутами "S" = SYSTEM и "H" = HIDDEN с последующим их удалением - (в примере на всяк случай вместо удаления напишите просто вывод в msgbox-e), чтобы было очень быстро (флешка используется восновном для "переноса" аудио и видео, ну могут там быть еще какие то файлы, но точно не скрытые и не системные.Мне нужна помощь именно в этом участке кода - поиск и удаление файлов с атрибутами скрытый, системный, и если они только для чтения - то и этот.

Котяра 13-04-2009 16:11 1092821

beve, это бесполезно. Вы запустите этот скрипт, дальше за секунды флешка заразится опять.

speechless 13-04-2009 18:20 1092969

beve, можно сделать по другому:
Я на своём компе поставил в авто загрузку скрипт типа:

Код:

#NoTrayIcon
$regRead = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer", "NoDriveTypeAutoRun") ;читаем реестр
If $regRead<>221 Then
        $msgReg=MsgBox(4, "NoAutorunRz", "Вы хотите отключить автозапуск всех"&@LF&"типов устройств, кроме привода"&@LF&"(Рекомендуется)")
                If $msgReg =6 Then ;если да
                        $regWrite=RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer", "NoDriveTypeAutoRun", "REG_DWORD", "221")
                                If $regWrite=0 Then ;если ошибка
                                        MsgBox(48, "NoAutorunRz", "Не удалось добавить инфармацию в реестр")
                                        Exit
                                EndIf       
                EndIf
EndIf

While 1
        Sleep(3000) ; проверка каждые 3 секунды
  Event1()  ; выполняем функцию в цикле
WEnd
 
Func Event1()
  $letterDrive = DriveGetDrive( "REMOVABLE" )  ; ищем все съемные носители
If NOT @error Then
    ;MsgBox(4096,"", "Found " & $var[0] & " drives")
    For $i = 1 to $letterDrive[0]
                If $letterDrive[$i]<> "a:" Then  ;пропускаем дисковод
                ;$labelDrive = DriveGetLabel( $letterDrive[$i] ) ;узнаём метку найденых
                $autorun=FileExists($letterDrive[$i]&"\Autorun.inf") ;ищем файл Autorun.inf
                        If $autorun=1 Then ;если существует
                                $msgAut=MsgBox(20,"NoAutorunRz - ВНИМАНИЕ", "На флешке найден файл <"&$letterDrive[$i]&"\autorun.inf>"&@LF&"ВОЗМОЖНО ВИРУС"&@LF&@LF&"Хотите его удалить")
                                If $msgAut=6 Then
                                        FileSetAttrib($letterDrive[$i]&"\autorun.inf", "-R") ;снять атрибут чтения
                                        FileDelete($letterDrive[$i]&"\autorun.inf")
                                EndIf       
                        Endif       
                Endif
    Next
EndIf
EndFunc

И при втыкании флешки проверяет наличие файла autorun.inf (все остальное можно удалить ручками)

proxy 13-04-2009 19:02 1093002

Имхо, у меня стоит антивир+фаервол: ESS 4 (jy же NOD) все удалет со всех флешек ;) и с ключами нет проблем )))

beve, а попробуйте на флешку записать папку с именем:
AUTORUN.INF

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

beve, как понимаю хотите запускать скрипт на флэшке - пока она еще "в гостях".
тогда релаьно стоит посмотреть в сторону:
1. поиск возможных нарушителей
2. если есть - то создовать файлы с таким е именем с атрибутами системными, что бы сложнее удалить....(может поможет)
3. и побыстрее выдернуть...

Вы поэксперементируйте на зараженном ПК - и все станет ясно.
А то тут много можем гадать ))

speechless 13-04-2009 19:20 1093017

proxy,

Ничего из выше перичисленного не сработает на зараженной машине (намаелся уже)
Остается только боротсься с последствиями на незараженной системе

beve 13-04-2009 19:23 1093020

Цитата:

Цитата proxy
Вы поэксперементируйте на зараженном ПК - и все станет ясно. »

Лично у меня KIS 6 и тоже проблем с этим нету, но вот у сестры на работе - эта проблемма! Флэшку боится включать на работе, ибо тогда куда, не прийдет с этой флэшкой - ясное дело, не вольно вирусы переносит(неприятная систуация), вот и думал про такое простое решение. Видимо так как думалось - не выйдет... Мож кто еще какое решение предложит? speechless-решение хорошее. Но если бы хоть это было на всех компах в мире...

proxy 13-04-2009 19:31 1093027

beve, тогда учите скрипт:
0. думаю стоит поискать вариант блокировки....
1. чистеть флешку
2. сразу её отключать

т.е. скрипт удаляет все подозрительные файлы.
и далее следить каждую секунду (а лучше 250мс) не появился ли файл AUTORUN.INF (все остальное не важно - без него все равно они не запустятся)
и в это время отключать флешку (скрипт даже можно что бы он копировался в тэм и оттуда запусклся или в надежное место и
линк в пуск - что бы на будущее ))

скорее всего есть средства (мож win Api) безопасного извлечения...
в помощь MSDN - значит можно )
немного по теме
+ еще

идея в том, что вир не будет записываться каждую секунду, как
правило, имхо так встречал, проходит 2-5 секунд....если контролить
появление AUTORUN.INF каждые 50-250мс = то он не проскользнет.
а в это время второй скрипт будет безопасно извлекать флешку.

все это дела, как говорил в одно скрипте который через FileInstall
все закидывает куданить на лок машину и запускает...

должно сработать )

beve 13-04-2009 19:58 1093053

Цитата:

Цитата proxy
скорее всего есть средства (мож win Api) безопасного извлечения... »

Код на autoit, как это сделать через Win Api, я нашел и писал об этом в начале, переработать его под этие нужды - проблем нет.
Я тоже размышляю, удастся ли раньше вируса успеть удалить файлы и извлеч устройство или нет...

proxy 13-04-2009 20:09 1093062

Цитата:

Цитата beve
как это сделать через Win Api, я нашел и писал об этом в начале »

пардон, ступил...
Цитата:

Цитата beve
удастся ли раньше вируса успеть удалить файлы и извлеч устройство или нет... »

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

speechless 13-04-2009 20:48 1093115

Цитата:

Цитата proxy
....если контролить
появление AUTORUN.INF каждые 50-250мс »

При слишком частом мониторинге флешки, безопасно её удалить не удасться.
каждые 2 сек - 50/50
1,5 сек - 10/90
покрайне мере у меня

SyDr 13-04-2009 21:47 1093187

Если флэшка с NTFS - лучше просто закрыть доступ к файлу autorun.inf
Чистые машины с неотключённым автораном будут тогда в порядке.
А то с этим удалением - кот в мешке.

beve 13-04-2009 21:58 1093204

Цитата:

Цитата Sylver Dragon
NTFS - лучше просто закрыть доступ к файлу autorun.inf »

Это самое верное решение для NTFS-флешек. Вот только теперь, копая глубже, нашел оригинальный способ для Fat-флешек. Есть самое удачное на теперешнее время решение - Оно связано с вирусами, которые распостраняются, используя файл autorun.inf, и суть описана на сайте - http://habrahabr.ru/blogs/infosecurity/54187/ Думается мне, что лучшего решения,чем просто запретить перезаписывать файл Autorun.inf быть не может, вернее сказать, если пойти по данному методу, то с файлом autorun.inf - вобще ничего нельзя будет сделать, ни перезаписать, ни удалить.

proxy 13-04-2009 22:07 1093218

beve, если на NTFS этот файлик так же не перезапишется - это мега решение!!
Просто отключение AutoRun-а и т.д. вмешательство в чужую систему, имхо, не изящно ...

speechless 13-04-2009 22:46 1093258

beve, Насчет http://habrahabr.ru/blogs/infosecurity/54187/
Цитата с форума:"Ммм, что мешает вирусу отредактировать FAT и убрать установленные атрибуты?"
Пока вроде таких нету, но ...
А если форматнуть флеш в NTFS, то на другом компе с урезанными пользовательскими правами(как часто бывает на работе) - "у вас нет прав на открытие носителя"

proxy 13-04-2009 23:15 1093288

speechless, тогда вопрос, зачем форматировать в NTFS, если под FAT все классно?
или я что то недопонял?

Цитата:

Цитата speechless
Ммм, что мешает вирусу отредактировать FAT и убрать установленные атрибуты? »

имхо, думаю время пока есть ))

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

К тому же win 7, скорее всего как в аналогии с вистой будет все ок.
А сама ос очень хороша. Пора бы потихоньку и переходить....))

speechless 14-04-2009 00:02 1093330

proxy, не буду спорить на счет ОСей, ибо неблагодарное это дело.

Цитата:

Цитата proxy
когда "зверки" научатся это делать »

По моему скромному мнению слишком скоро, потому это не решение.
Кельтская народная поговорка: Расслабился - обделался )))
Хотя, согласен, идея интересная.
Цитата:

Цитата proxy
зачем форматировать в NTFS, если под FAT все классно? »

Я имел ввиду что в NTFS флешка может и не открытся на работе(с чего все и началось)
Цитата:

Цитата beve
у сестры на работе - эта проблемма »

Ибо могут быть проблемы с правами доступа

proxy 14-04-2009 00:20 1093342

Цитата:

Цитата speechless
Я имел ввиду что в NTFS флешка может и не открытся на работе(с чего все и началось) »

Вот и отлично, в FAT её и замена байтов в autorun.

И судоржно дражать, с замиранием сердца, в ожидание злобных вирусов ;) ))

Цитата:

Цитата speechless
proxy, не буду спорить на счет ОСей, ибо неблагодарное это дело. »

Лично - уже давно убедился - у каждого свой вкус ))) как бы не был прекрасени линукс - обожаю винду )))))))
Просто ставил 7-ку, у меня на виртуалке она летает как локальная хп, даже после опытов )))
А привоститься к интерфейсу+подлапатить под себя - дело техники ......помню как скрепя сердцем и не только
переходил с 98 (секанд эдишин) на xp, вот уж дело было.... )))))))))

speechless 14-04-2009 00:32 1093350

proxy, модератор по ходу спит )))) :yahoo:

Creat0R 21-04-2009 11:32 1099799

Цитата:

Цитата speechless
модератор по ходу спи »

Сейчас он проснётся, и начнёт раздавать подарки, в виде банов :)


speechless,
! Предупреждение за нарушение общих правил форума (3.17).

ganselo 25-04-2009 20:48 1104129

Лично я использую такой способ: отслеживаю все новые появившиеся в системе устройства(с помощью сообщения WM_DEVICECHANGE). Если это устройство флешка или винт, то проверяю, есть ли там файл Autorun.inf. Если есть, то удаляю. Данный вариант будит работать на чистой машине.
Увы кода данного варианта на AutoIT у меня нет. (есть только C++ (win32 api) вариант).

amel27 26-04-2009 05:57 1104404

Цитата:

Цитата beve
нашел оригинальный способ »

а по форуму поискать?.. например: http://forum.oszone.net/thread-99144.html

Habetdin 02-05-2009 21:41 1109309

Код:

@echo off
mkdir autorun.inf
cd autorun.inf
mkdir 1..\
if "%errorlevel%"=="0" echo All done!
pause
exit

это поможет в борьбе с авторанами - вирус не сможет просто так записать файл autorun.inf, т.к. не сможет удалить папку autorun.inf ... ;)
создаем батник, ложим в корень флешки и запускаем - AutoIt не нужен =)

avenir00 02-05-2009 22:18 1109332

Цитата:

Цитата beve
Подскажите знающие, возможно ли реализовать такое:
Скажем так, на некоем предприятии, недобросовесный админ, или др. причины, но на сервере постоянно присуствуют вирусы. При подсоединении флешки к компьютеру на предприятии - флешка заражается....Идея такая:
Создать скрипт-файл, который будет помещен на флешку, и перед тем как вынуть флешку, нужно будет просто запустить данный скрипт, и он производил бы такие действия: »

Почитайте здесь. Есть и бесплатный скрипт по защите флэшек от авторан-вирусов.http://mechanicuss.livejournal.com/195192.html


Время: 16:00.

Время: 16:00.
© OSzone.net 2001-