Управление Авастом через командную строку

Здравствуйте. Хотел написать в теме про неработающий интерфейс, но её закрыли. Поэтому решил начать новую. Суть вот в чём: В закрытой теме поднимался вопрос об управлении Авастом с использованием команд командной строки, в частности, проведении полного сканирования до загрузки ОС. Я провёл эту проверку двумя способами: через командную строку и через интерфейс Аваста.

В первом случае проверка была на английском языке и с ошибкой “Невозможно загрузить ресурсы, используя настройки по умолчанию. Ошибка: 0xC0000135” что видно на фото ниже

https://i.ibb.co/ZThBbxT/cmd.jpg

При проведении проверки через интерфейс текст был уже русский на транслите. Ошибки не было:

https://i.ibb.co/5M9fgGr/avast.jpg

Отчёт о проверке посредством командной строки выглядел так:

03/11/2024 13:03 Scan of all local drives

Number of tested folders: 245885
Number of tested files: 760051
Number of infected files: 0

Посредством интерфейса Аваста так:

03/12/2024 12:16 Skanirovat' C:

Skanirovat’ *STARTUP

Faiyl C:\Program Files\Microsoft Office\root\Office16\1049\ONGuide.onepkg:WofCompressedData|>Приступая к работе.one Oshibka 42127 {Arhiv CAB povrezhden.}
Faiyl C:\Program Files\Microsoft Office\root\Templates\1049\Access\Part\Issues.accdt:WofCompressedData|>template\database\objects\properties\formoooIssueDetailttt_Properties.axl Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\Microsoft Office\root\Templates\1049\Access\Part\Contacts.accdt:WofCompressedData|>template\database\objects\formoooContactDetailsttt_FlipName.axl Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\Microsoft Office\root\Templates\1049\Access\Part\Tasks.accdt:WofCompressedData|>template\database\objects\tableoooTasksttt.xsd Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\DolbyLaboratories.DolbyAccess_3.20.3368.0_x64__rz1tebttyb220\Assets\RadarHost\Res.dat:WofCompressedData|>DSRHost.exe Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.BatteryStatusTest.dll:WofCompressedData|>HpBwcDecode.dll Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.ACPowerCheckCentennial.dll:WofCompressedData|>HpBwcDecode.dll Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.BatteryLogicTest.dll:WofCompressedData|>HpBwcDecode.dll Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.HpiaTest.dll:WofCompressedData|>HP.Common.UI.Wpf.dll Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.ShortDSTWrapper.dll:WofCompressedData|>DST.exe Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.SmartCheckWrapper.dll:WofCompressedData|>DST.exe Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.VideoExtendedMemoryTest.dll:WofCompressedData|>video-diags.exe Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.VideoShortMemoryTest.dll:WofCompressedData|>video-diags.exe Oshibka 42125 {Arhiv ZIP povrezhden.}
Faiyl C:\Program Files\WindowsApps\AD2F1837.HPPCHardwareDiagnosticsWindows_2.5.0.0_x64__v10z8vjag6ke6\HPI.Wrappers.WirelessStressTest.dll:WofCompressedData|>HPCommRecovery.exe Oshibka 42125 {Arhiv ZIP povrezhden.}
Kolichestvo naiydenyh papok: 246087
Kolichestvo proverenyh faiylov: 912613
Kolichestvo zarazhennyh faiylov: 0

В первом случае был проверен 760051 файл и отсканированы все локальные диски. В командную строку для этого были введены следующие команды:

cd C:\Program Files\AVAST Software\Avast\

sched.exe /A:*

shutdown /r

Во втором случае в настройках сканирования при запуске было указано сканирование системного диска и отсутствовала галочка в параметре “Распаковывать архивные файлы”, но при сканировании почему-то всё равно была попытка распаковать их с ошибкой 42125 что видно в отчёте. При этом было отсканировано 912613 файлов, что на 152562 файла больше, чем при сканировании всех дисков в первом случае.

Вопросы такие:

  1. Почему при сканировании из интерфейса были неудачные попытки распаковать архивные файлы, при том что я не указывал в настройках их распаковывать?
  2. Почему при сканировании диска C было отсканировано больше файлов, чем при сканировании всех локальных дисков?
  3. В чём суть ошибки 0xC0000135 при сканировании из командной строки?
  4. Есть ли ещё какие-либо команды для управления Авастом через командную строку или лучше тема со списком всех команд

Так по отчету видно что ошибки не на архивах а на разных библиотеках .dll например. А по количеству файлов думаю все зависит от настроек сканирования - глубины, типов файлов и прочего. По ошибке тут надо разбираться я на ХР попробовал запуск из командной строки - все работает как и из интерфейса причем при любых его настройках в интерфейсе.

Иван1992
Я думаю так, что лучше то сканированме где не было ошибок, перечислите команды ещё раз которые вы вводили в командную строку и напишите в каком порядке их вводить,одну за другой сразу, поясните. Про ошибку 0xC0000135 я писал в теме которую закрыли, я думаю её не убрать. Я хочу сканировать не до загрузки ОС а уже при включённом компьютере, перечислите пожалуйста ещё раз команды. И как долго шло сканирование без ошибок?

Ничего особенного теже sched.exe /A:* даже перегружался через интерфейс винды а не командой. Длительность тоже обычная ничем не отличалась. Надо на более новой системе попробовать, но до этого я пока не добрался.

Тогда что же он пишет cd C:\Program Files\AVAST Software\Avast\ sched.exe /A:* shutdown /r
три команды получается, но мне не нужно полное сканирование, это долгий процесс, мне надо быстрое сканирование, а тут он пишет про полное, Потом попробую запустить.

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

Эти команды уже перечислены мною в том порядке, в котором я их вводил. Каждая с новой строки. Последняя команда shutdown /r перезагружает ОС через командную строку. Сканирование будет происходить ДО загрузки ОС. Длилось оно в обоих случаях примерно три с половиной часа.

При включённом ПК лучше запустить сканирование из проводника всего диска С через контекстное меню. Недоступный интерфейс это позволяет.

Да пожалуй вы правы, 3 часа это слишком.

Длительность зависит от объема и количества файлов, опять же от производительности жесткого диска, процессора и прочего, у меня было меньше часа. Хотя вообще оно может и больше 3 часов длиться, но это самое лучшее сканирование. А ведь из интерфейса можно еще сделать закачку и установку дополнительных специализированных определений для более глубокого сканирования, но по мне и без них хватает. А по командам все правильно - первая нужна чтобы командная строка нашла файл sched.exe, ее можно не вводить а сразу прописать весь путь целиком с параметром /A:* А третья команда для перезагрузки компа, если система работает не в режиме командной строки то перегрузиться можно как угодно. И еще если верить хелпу необязательные параметры команды позволяют конкретизировать места которые сканировать.

У меня терабайтник 40 минут сканируется. Я вообще только так сканирую, ибо при обычном сканировании вирусы могут гаситься и быть не найденными, а при загрузке вроде как не могут.
Мне из-за наличия такого сканирования аваст и нравится. Есть в других вирусниках что-нибудь подобное?

Давно не делал,максимум час у меня было раньше,не более. Вирус при любом сканировании Аваст находит.если он есть конечно.

https://businesshelp.avast.com/Content/Products/AfB_Antivirus/ConfiguringSettings/CommandLineUpdatesScans.htm

http://avast.helpmax.net/en/command-line-scanner/using-the-command-line/
http://avast.helpmax.net/en/command-line-scanner/command-line-parameters/

Нашел кое-что на тему аваста в командной строке, но на фри нет файла ashCmd.exe а так для общего развития пойдет

Как пользоваться сканером командной строки

Эта функция доступна только в avast! Pro antivirus и avast! Internet Security.

Программа ashCmd использует тот же avast! механизм сканирования для обнаружения потенциальных вредоносных программ, чтобы результаты были точно такими же, как при запуске сканирования через обычный программный интерфейс. Сканер командной строки avast! , ashCmd.exe, обычно устанавливается в каталоге C:\Program Files\AVAST Software\avast.

Сканирование выполняется из командной строки с использованием различных переключателей и параметров. Чтобы просмотреть описание параметров, найдите файл ashCmd и дважды щелкните по нему. Откроется новое окно, в котором отображаются различные параметры. Список всех параметров также можно найти здесь, в avast! Help.

Чтобы запустить сканирование, перейдите в командную строку и измените каталог на:

C:\Program Files\AVAST Software\avast

Затем введите название программы ashCmd.exe, за которым следует область, подлежащая сканированию, и соответствующие параметры. Например, для сканирования всех локальных жестких дисков командной строкой будет:

ashCmd.exe /*

При необходимости могут быть добавлены дополнительные параметры. Чтобы отсканировать определенный файл, введите требуемый путь, убедившись, что все имена, содержащие пробелы, заключены в кавычки (” “), например.

ashCmd.exe “C:\Program files”

Чтобы запустить конкретное сканирование, введите название программы, за которым следует /@=<название сканирования>. Например, для запуска сканирования под названием “Еженедельное сканирование” командная строка будет выглядеть следующим образом:

ashCmd.exe /@=”Еженедельное сканирование”.

Сканирование будет запущено на основе параметров, определенных для данного сканирования. Любые другие параметры, введенные в командной строке, будут проигнорированы.

Когда сканирование завершено, результаты могут быть выведены в файл с использованием параметра “/_ >”. Так, например, командная строка:

ashCmd.exe C:\Windows /_ > results.txt

приведет к сканированию пути C:\Windows и сохранению результатов сканирования в новом файле с именем results.txt

А вот ashUpd.exe на фри работает :slight_smile:

ashUpd.exe (Updates)

Update Virus Definitions Command: ashUpd.exe vps [/autoreboot] [/help]

Update Antivirus Program Command: ashUpd.exe program [/autoreboot] [/help]
OpenExtra Parameters

/autoreboot: reboots the computer after the update, if necessary

/help: displays a help screen


Вот такая красота получается при запуске :slight_smile:

Спасибо за информацию!:+1::ok_hand:

У меня ashUpd.exe вроде бы сработал, но почему-то после надписи initializing, please wait… сразу пишет что обновление не требуется

Запустил через sched.exe /A:* загрузочное на 7-ке и 11-й - везде выдает ошибку 135 и пишет по английски… :slight_smile: но работает. Разобраться бы что и куда прописывает запуск из интерфейса и из командной строки тогда глядишь станет яснее в чем отличие.

Спасибо,всё очень интересно завтра буду проверять команды. пока нет времени.

В общем разгадка найдена и оказалось так как я изначально и подозревал.
Обо всем по порядку.
Для того чтобы запланировать загрузочное сканирование как из интерфейса так и с командной строки они дописывают строку в ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute имеющий тип REG_MULTI_SZ Этот ключ если память не подводит Windows использует для запуска средства проверки файловых систем дисков при запуске, и для этого в нем прописана следующая строка: autocheck autochk * Если вы захотите сделать проверку например диска С: то именно этот ключ будет использован для запуска chkdsk c: /r при следующем запуске компьютера. Вполне логично что и аваст его использует для запуска своего загрузочного сканирования.
Так вот из графического интерфейса аваст при настройках по умолчанию туда дописывает строку следующего содержания:

aswBoot.exe /A:“C:” /A:"STARTUP" /L:“1049” /heur:80 /RA:fix /pup /archives /IA:0 /KBD:1 /dir:“C:\Program Files\AVAST Software\Avast”

из командной строки при вводе sched.exe /A:
туда дописывается:

aswBoot.exe /A:"*" /L:"1033" /KBD:1 /dir:"c:\Program Files\AVAST Software\Avast"
разница ощутимая, и судя по всему это потому что давненько разработчики не заглядывали и не развивали sched.exe потому что если взглянуть на тот же --help некоторые параметры из графического интерфейса в ней указать нет возможности.

Параметры из графического интерфейса:
/A:“C:” - проверять диск C: (если заменить на /A:“*” - будет проверять все диски)
/A:“*STARTUP” - проверять элементы автозапуска
/L:“1049” - использовать русский язык
/heur:80 - средний уровень чувствительности эвристического анализа
/RA:fix - автоматически исправлять при обнаружении зловредов, /RA:ask - спрашивать решение пользователя
/pup - искать так называемые потенциально нежелательные программы
/archives - проверять архивы
/tool - появляется при включенной галочке Искать средства взлома
/dir:“C:\Program Files\AVAST Software\Avast” - aswBoot.exe находится в system32 но вполне логично что необходимо указать где находится установочная папка программы с остальными библиотеками и прочим.
Назначение параметров /IA:0 /KBD:1 пока достоверно не известно, возможно /KBD:1 задает количество запусков системы до удаления всего задания или число проходов…

Так вот ошибку “Cannot load resources, using defaults. Error: 0xC0000135” создает параметр /L:“1033” который задает использование англоязычного сканирования причем в версии United Kingdom, который само собой у нас не установлен, если в ключе реестра заменить 1033 на 1049 то ошибка исчезает и все пишет как обычно транслитом на русском. Думаю если доустановить английский язык соединенного королевства то ошибка тоже исчезнет. Скорее всего и правильный перевод этой ошибки звучит так: “Не могу загрузить ресурсы, использую умолчания. Ошибка: 0xC0000135” т.е. возникла ошибка, но проблема решаема и сканирование работает. Вот такой итог.

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

ashCmd.exe (Scans) сканирование
(area name): зона для тестирования на вирусы; в вашем распоряжении может быть несколько областей
/# or --remote: удаленные диски
/* or --local: локальные жесткие диски
/?, /h or --help: отображает краткое описание всех параметров
/@ = expect string or --task = expect string: параметр содержит имя задачи, которая будет запущена; остальные параметры игнорируются
/_ or --console: приложение будет готово к STDIN/STDOUT
/a or --testall: проверка всех файлов
/c or --testfull: сканировать целые файлы
/d or --dontpanic: не переходить в «режим паники» при обнаружении вируса
/e = expect byte or --heuristics = expect byte: установите эвристическую чувствительность, где 0 — отсутствие эвристики, а 100 — максимальная чувствительность
/f = expect string or --fileactions = expect string: =[BPSW] дополнительная настройка действий над зараженными файлами:

файлы:
B: разрешить отложенные действия (после перезагрузки) для заблокированных файлов
P: если файл невозможно удалить из архива, попробуйте вместо этого удалить его родительский(е) родитель(и)
S: не удалять связанные ссылки автозапуска при удалении файла
W: при обнаружении зараженного файла в архиве выполнять действие со всем архивом, а не только с файлом внутри

/g = expect byte or --checkgenuine = expect byte: =[0|1] проверять цифровые подписи зараженных файлов (и игнорировать подлинные)
/i or --ignoretype: игнорировать наборы вирусов
/j or --paging: перелистывание строк, если программа не находится в режиме (parameter /_)
/m or --boot: протестировать загрузочные сектора и всю оперативную память
/p = expect byte or --continue = expect byte: программа не ждет ввода пользователя (/p); автоматическое действие с зараженным файлом (/p=[01234])

0: исправить автоматически
1: удалить файл
2: карантин
3: ремонт
4: остановиться при обнаружении вируса

Вчера узнал конец своей лицензии - 11 апреля 2024 года.
Так что дерзайте тут без меня.Флаг вам в руки !
Закончится лицензия и поставлю другую программу.
И тут уже мне не придётся ни писать,ни дискутировать.
А разработчикам оставлю в английской ветке письмо от простого пользователя из России.
Удалят или не удалят его,это их проблема.
Всего всем тут хорошего !

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

Уже оставили письмо от простого и недовольного пользователя из России на странице Аваст в Фейсбуке, кто это не знаю, но уж больно вспыльчивый товарищ,я таких быстро ставлю на место. Если писать то не так по хамски как он, всегда надо вежливо и деликатно писать. Лицензию можно продлить теперь только с помощью зарубежной банковской карты, так мне сказали.