Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.57/28: Рейтинг темы: голосов - 28, средняя оценка - 4.57
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
1

WiLD: Алгоритм работы ■ (основное обсуждение) ■

10.01.2013, 15:41. Просмотров 5496. Ответов 90
Метки нет (Все метки)

Обсуждение части проекта: Создание комплексной утилиты противодействия вирусам семейства WinLocker (WiLD)


Полезные ссылки:
BackwardRecovery by glax24
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2013, 15:41
Ответы с готовыми решениями:

Каталог простых примеров решенных задач BAT/CMD, с чего начать (■■■ основная тема ■■■)
Тема создана для размещения "классических" примеров решения только самых распространенных задач,...

Как задать вопрос на форуме Batch и выделить свой код? (■■■ Кто первый раз в этом разделе ■■■)
Как задать вопрос на форуме Batch и выделить свой код? Важно знать: у нас есть "тема-каталог...

WiLD: Автозапуск при входе в систему, завершении работы (и ее отмена)*
Обсуждение части проекта: http://www.cyberforum.ru/cmd-bat/thread866656.html Связанная тема:...

Lenovo G500 (LA-9632 rev 1.0) не включается
Добрый день. Ноутбук пришел перебитым кабелем з.у. В EC KB9012QF дырка, кз по B+. По B+ в к.з. был...

Lenovo G500 (LA-9632) - Сильно греется хаб
Всем добрый день. Принесли ноут Lenovo G500 мать la-9632 При включении не было изображение....

90
Eva Rosalene
Ladybug
4128 / 1601 / 305
Регистрация: 06.01.2013
Сообщений: 4,194
Завершенные тесты: 2
14.05.2013, 21:52 2
Ну вариант:
А) Делаем бэкап системных файлов shell, userinit и иже с ними, если он уже есть, не делаем.
Б) Сравниваем файлы с бэкапом. Если не равны, то заменяем и пишем в лог.
В) Работаем с реестром. Скрипты уже были в теме.
1
Kиpилл
Особый статус
Эксперт WindowsВирусоборец
8302 / 1653 / 78
Регистрация: 15.04.2011
Сообщений: 5,405
15.05.2013, 04:46 3
1)не увидел записи в лог
2)не увидел поиска фейков в HKCU
3)запятая\слэш будут игнорироваться?

Добавлено через 1 минуту
Есть еще недоработки,мне на работу надо,там гляну.
0
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
15.05.2013, 18:28  [ТС] 4
Цитата Сообщение от Koza Nozdri Посмотреть сообщение
1)не увидел записи в лог
2)не увидел поиска фейков в HKCU
3)запятая\слэш будут игнорироваться?
Я выше написал, что это еще не реализовано.

Цитата Сообщение от FraidZZ Посмотреть сообщение
при первом запуске на свежем новом компе скрипт сам их создает
Не вижу, как это применить к теме. Растолкуйте. Мне в принципе не сложно установить быстро любую систему и вытянуть файлы. Хотя проще из ресурсов. Но тут знать надо, в каких из них отличаются данные файлы:
Цитата Сообщение от Dragokas Посмотреть сообщение
(рязрядность, обновления, редакция, язык...)
Цитата Сообщение от Koza Nozdri Посмотреть сообщение
3)запятая\слэш будут игнорироваться?
Запятая можно. Слеш - не представляю, какой будет в точности алгоритм.
Пока идея:
1) считать значение с реестра
2) урезать запятую в конце, если она есть.
3) сравниваю, например значение "%systemroot%\system32\logonui.exe" со своим значением "%windir%\system32\logonui.exe" (при этом проценты раскроются)
Если не совпадает, сравниваю это значение с просто logonui.exe.
Если и в этом случае не совпадает, бью тревогу.
А что делать, например, если паразит создался здесь: %systemroot%\system32\[b]virus[b]\logonui.exe

Алгоритм предположительно:
1) перед проверкой sfcсделать резервные копии файлов.
2) если sfc положителен, делать рекурсивный поиск с побайтовым FC /B сравнением logonui.exe с резервной копией. Равны = удаляем.

Кроме того 1-я стадия может не дать эффекта, если logonui.exe расположен в папке, которая перехватывает выполнение EXE ранее c:\windows
Я кстати, просил кто знает, дать перечень каталогов на системном диске, в каком порядке происходит поиск исполняемых файлов для запуска, таким образом и файл в system32 будет оригинальный, и запись в реестре верная, а паразит все равно запустится.

Сегодня на эту тему ответил Charles Kludge:
http://msdn.microsoft.com/en-us/library/ms682586(v=vs.85).aspx
хотя и не совсем об EXE там идет речь.
1
15.05.2013, 18:28
Kиpилл
Особый статус
Эксперт WindowsВирусоборец
8302 / 1653 / 78
Регистрация: 15.04.2011
Сообщений: 5,405
15.05.2013, 19:33 5
Цитата Сообщение от Dragokas Посмотреть сообщение
Я кстати, просил кто знает, дать перечень каталогов на системном диске, в каком порядке происходит поиск исполняемых файлов для запуска
Не понял вопроса я?

2)вариант с копированием файла отпадает-наверняка скрипт могут испробовать и на зараженной системе и тогда мы получим прожку которая наоборот заражает систему.

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


итак:

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

2) получив команду выключения производится определение версии ос.

3) если это ось семейства виста:
проверяем реестр,если найдены несоответсвия то выдаем сообщение msgbox с вариантом отказаться/согласиться
сообщение:
типа найдено несоответствие записей реестра,настоятельно рекомендуем произвести проверку и отладку,а так же обратиться за помощью в раздел безопасности бла бла бла

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

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

5) и ,наконец,если найдены проблемы то прверяем не заблокирован ли реестр,диспетчер и консоль,чистим темп.

последний шаг(вот это уже я слабо себе представляю) это проверка мбр.
с этим пожалуй не получится,но мало ли-будут мысли у кого.

Во всех вариантах регистр должен игнорироваться.
0
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
01.06.2013, 16:08  [ТС] 6
Цитата Сообщение от Koza Nozdri Посмотреть сообщение
прверяем не заблокирован ли реестр,диспетчер и консоль
я думаю можно и всегда проверять.

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

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

Добавлено через 13 часов 1 минуту
Стоит еще раз взглянуть на пути заражения:
1) записи в реестре
2) подмена файлов
3) MBR

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

Т.е. еще и:
4) автозапуск (другие записи реестра, из служб, политик или банально папок автозагрузки).

Я предлагаю дополнить утилиту программой проверки наличия среди всех открытых окон тех, которые имеют
атрибут видимости и находятся принудительно поверх всех окон (таких во время запуска или завершения системы не должно быть). Иначе определяем процесс, которому принадлежит это окно и убиваем его. Вот, пожалуй и разблокировали рабочий стол.

Рабочий набросок кода на плюсах у меня есть, осталось добавить в фильтр нужные атрибуты окна, типа TOPMOST...
0
Kиpилл
Особый статус
Эксперт WindowsВирусоборец
8302 / 1653 / 78
Регистрация: 15.04.2011
Сообщений: 5,405
01.06.2013, 22:00 7
Цитата Сообщение от Dragokas Посмотреть сообщение
Я предлагаю дополнить утилиту программой проверки наличия среди всех открытых окон тех, которые имеют
атрибут видимости и находятся принудительно поверх всех окон (таких во время запуска или завершения системы не должно быть). Иначе определяем процесс, которому принадлежит это окно и убиваем его. Вот, пожалуй и разблокировали рабочий стол.
Это в том случае если это просто локер-окно.
А если он запускается вместо оболочки например то надо бы
start explorer.exe добавить.
и userinit.
0
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
02.06.2013, 01:47  [ТС] 8
Как добавить userinit? - тоже обычным start?
Каков порядок?
0
Kиpилл
Особый статус
Эксперт WindowsВирусоборец
8302 / 1653 / 78
Регистрация: 15.04.2011
Сообщений: 5,405
02.06.2013, 06:58 9
Сначала userinit потом explorer.
start подойдет,в крайнем случае просто проводник запустится и все.
0
Eva Rosalene
Ladybug
4128 / 1601 / 305
Регистрация: 06.01.2013
Сообщений: 4,194
Завершенные тесты: 2
03.06.2013, 15:59 10

Не по теме:

Дико извиняюсь, что так затягиваю с MBR, вот как 7-ого сдам ГИА по физике, подключаюсь. Я смотрю, вы там примерно 1/5 уже сделали, скиньте если не сложно.



Добавлено через 1 минуту
Цитата Сообщение от Dragokas Посмотреть сообщение
Не вижу, как это применить к теме.
Ставить утилиту еще до заражения, запускать - она все добавляет в свои базы. Потом запускать в режиме лечения.

Добавлено через 2 минуты
Сначала тасккилл всех процессов кроме определенных из списка, а потом запуск Эксплорера против чего-то должен помочь.
1
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
03.06.2013, 17:13  [ТС] 11
Цитата Сообщение от FraidZZ Посмотреть сообщение
Ставить утилиту еще до заражения, запускать - она все добавляет в свои базы.
Если хеши не будут совпадать именно это и будет предложено. Потом запаковка.

Сейчас еще обсуждаем необходимость упаковки EXE-компонентов в архив (распаковка при каждом запуске родными средствами Windows).

Главная тема дополнена пунктом:
//TODO. Основные направление работ по утилите. Тестирование. Планирование будущих компонентов.
0
MihaniX
10.08.2013, 18:02
  #12

Не по теме:

Проект у вас супер! :good:
А можно мне чем ни будь помочь? Я хоть еще и новичок но есть большое желание помочь и куча энтузиазма :)

3
Eva Rosalene
Ladybug
4128 / 1601 / 305
Регистрация: 06.01.2013
Сообщений: 4,194
Завершенные тесты: 2
10.08.2013, 18:25 13
Цитата Сообщение от Dragokas Посмотреть сообщение
Меню VBScript Dragokas (0%)
Эмм, это как? У VBS же нет GUI. Или.... ????
0
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
10.08.2013, 18:39  [ТС] 14
ORLY, как же INPUTBOX, MSGBOX, WScript.Echo, Popup и еже с ними.
0
Eva Rosalene
Ladybug
4128 / 1601 / 305
Регистрация: 06.01.2013
Сообщений: 4,194
Завершенные тесты: 2
10.08.2013, 18:41 15
Цитата Сообщение от Dragokas Посмотреть сообщение
ORLY, как же INPUTBOX, MSGBOX, WScript.Echo, Popup и еже с ними.
Ну да. Я имел ввиду полноценное. В плане сам рисуешь, сам кнопки ставишь. Как HTA. Просто я способ вызова именно меню не видел ни разу))
0
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
10.08.2013, 18:42  [ТС] 16
MihaniX, можно. У нас вообщем-то уже все давно оговорено (см. все связанные темы под спойлером в закрепленной). Просто тупо не хватает рук и времени, чтобы обернуть в код.
1
MihaniX
138 / 48 / 2
Регистрация: 06.08.2013
Сообщений: 292
Записей в блоге: 4
10.08.2013, 18:43 17
А что мне делать? Есть какие задания?
0
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
10.08.2013, 19:08  [ТС] 18
FraidZZ, нам сложная система рисования форм не нужна.
Можно считать, что эта часть уже готова: Вывод сообщения в отдельном окне с информацией

На счет кастомных форм, если интересует можно воспользоваться сторонним объектом WindowSystemObject: читай внизу поста тут - Подскажите литературу для начинающего!
(сам не пользовался).

Добавлено через 23 минуты
MihaniX, для начала установить себе в систему виртуалку от Oracle или WMWare (XP или Win7)), чтобы не убить экспериментами систему.

В идеале нарисовать алгоритм работы всей системы.
Сейчас поставлю музычку, пролистаю все темы, постараюсь вспомнить.

Какие у Вас знания в области языка VBS, C++? Знаете как работать с реестром? Чтение/запись консольными командами?
Каковы познания в администрировании системы?
Вообщем, смотрите у нас готов код только для самого лечения поврежденных ключей.
Все остальное, что видите в шапке нужно делать. Просто напишите, что лучше знаете и чем по душе заняться. Вполне реально доработать (переписать даже) то, что уже готово.
Есть и инфа, которая у нас пока "закрытая", потом доберемся.
Нужно также сделать скрипт для сверки хешей основных системных файлов по базам хешей.
2
MihaniX
138 / 48 / 2
Регистрация: 06.08.2013
Сообщений: 292
Записей в блоге: 4
10.08.2013, 19:29 19
С++ на нуле полном... Python разве что. VBScript в стадии изучения еще. В основном знаю Batch. Есть опыт написания зловредов (в том числе и винлоков). Про записи в реестр знаю немного FASM начинаю изучать.
В общем чем конкретно хочу заниматься - не знаю. Хочу помочь и принять участие
0
Dragokas
Эксперт WindowsАвтор FAQ
17098 / 7153 / 861
Регистрация: 25.12.2011
Сообщений: 10,954
Записей в блоге: 16
10.08.2013, 19:30  [ТС] 20
MihaniX, новое задание: WiLD: SFC и хеш-сумма. Проверка системных файлов*

Сейчас напишу пример вызова fsum. Здесь: Скобки в составе пути команды для цикла приводят к критическому сбою (на примере FSUM)

Полное описание можно найти здесь: Ключи запуска программ, вспомогательные утилиты (Windows Resource Kit, Support Tools)

По любым сложностям всегда спрашивайте.
2
10.08.2013, 19:30
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.08.2013, 19:30

Алгоритм загрузки изображений из excel по ссылке URL в реквизит основное изображение
Добрый день. Есть стандартная обработка "ЗагрузкаДанныхИзТабличногоДокумента" В событии при записи...

Обсуждение работы сборщика
Приветствую постоянных обитателей раздела bsod. Я вот что подумал: у пользователей периодически...

Обсуждение правильной работы mathcad
Товарищи! Подскажите, пожалуйста, работаю в Mathcad - делаю инженерные расчёты. И что-то в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.