Касперский блокирует скрипты powershell

Обновлено: 02.07.2024

По умолчанию PowerShell сконфигурирован на запрет выполнения скриптов в системах на базе ОС Windows. Подобные настройки могут затруднять работу админов, пентестеров и разработчиков, и в этой статье я расскажу о 15 способах обхода execution policy без использования прав локального администратора.

Автор: Scott Sutherland

По умолчанию PowerShell сконфигурирован на запрет выполнения скриптов в системах на базе ОС Windows. Подобные настройки могут затруднять работу админов, пентестеров и разработчиков, и в этой статье я расскажу о 15 способах обхода execution policy без использования прав локального администратора. Полагаю, что есть техники, которые не будут упомянуты из-за моей забывчивости или элементарного незнания, однако, надеюсь, нижеприведенный список будет хорошим стартом для тех, кто нуждается в нем.

Что такое PowerShell Execution Policy?

Execution policy определяет, какие типы скриптов могут быть запущены (если вообще могут) в системе. По умолчанию значение параметра выставлено как « Restricted », что запрещает запуск любых скриптов. Однако следует понимать, что настройка Execution Policy никогда не относилась к управлению безопасностью, а служила лишь для того, чтобы администраторы случайно не могли вывести систему из строя. Именно поэтому существует множество техник, чтобы обойти эти настройки, включая некоторые, предоставленные компанией Microsoft. Более подробно о Execution Policy и других настройках безопасности в PowerShell рекомендую почитать блог Карлоса Переса .

Зачем нужно обходить Execution Policy?

  • Встроен в Window.
  • Может вызывать Windows API.
  • Может запускать команды без записи на диск.
  • Может избегать обнаружения антивирусами.
  • Уже помечен как «достоверный» и находится в большинстве белых списков.
  • Используется при написании многих утилит безопасности с открытым исходным кодом.

Как посмотреть настройки Execution Policy

Powershell.exe вирус

Вы знаете, что такое вирус Powershell.exe и как с ним бороться? Если ответ отрицательный, то этот пост написал MiniTool это то, что вам нужно. Кроме того, вы можете узнать некоторые методы, чтобы избежать повторного заражения этого вируса, а также получить способ защиты своего компьютера.

Быстрая навигация:

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

Что такое вирус Powershell.exe?

Для начала нужно знать, что такое Powershell.exe. Подлинный файл Powershell.exe является важной частью системы Windows и находится в подпапках каталога. C: Windows System32 WindowsPowerShell v1.0 .

Наконечник: Если вы хотите узнать некоторую информацию о папке System 32, вы можете прочитать этот пост - Что такое каталог System 32 и почему его не следует удалять? .

расположение powershell.exe

Как видите, Powershell.exe - это исполняемый файл, связанный с PowerShell, и в нормальном состоянии он не причиняет вреда вашему компьютеру.

Так что же такое вирус Powershell.exe? Это скрытая опасная форма трояна, цель которого - кража ваших данных и информации. И это может помешать вашей деятельности на вашем компьютере. Иногда причиной медленной работы вашего компьютера является вирус Powershell.exe.

Поэтому, чтобы избежать ухудшения ситуации, вам следует как можно скорее удалить вирус Powershell.exe.

Как узнать, есть ли у вас вирус Powershell.exe?

Легко ли определить, заражен ли ваш компьютер вирусом Powershell.exe Windows 10? Собственно, это зависит от того, как он повлияет на вашу операционную систему.

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

Поэтому вам нужно уделять пристальное внимание безопасности вашего компьютера. Если он работает очень медленно или появляются значки, которые вы не помните, что они установили, возможно, ваш компьютер был заражен вирусом Powershell.exe.

Как вы получили вирус Powershell.exe?

Ваш компьютер может быть заражен вирусом Powershell.exe разными способами. Я перечислил несколько способов ниже:

Как избавиться от вируса Powershell.exe?

Как удалить вирус Powershell.exe? Для вас есть три полезных метода, поэтому продолжайте читать, чтобы получить подробную информацию.

Метод 1. Используйте антивирусное программное обеспечение и средство удаления вредоносных программ.

Первый и самый эффективный способ удалить вирус Windows Powershell - это использовать антивирусное программное обеспечение и средство удаления вредоносных программ.

В Windows 10 есть мощная встроенная функция, которую вы можете использовать - Защитник Windows. Вы можете использовать его для сканирования вашего компьютера. Хотя запуск Защитника Windows для сканирования вашего компьютера может занять у вас много времени, он хорош для удаления вируса Powershell.exe в Windows 10. И вы также можете попробовать использовать другое мощное антивирусное программное обеспечение, такое как McAfee.

Вы можете прочитать этот пост - Бесплатные способы запланировать сканирование в антивирусе Защитника Windows чтобы получить подробную информацию для регулярной проверки на вирусы.

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

Метод 2: запустить восстановление системы

Как удалить вирус Windows Powershell? Если вы создали точку восстановления заранее, вы также можете попробовать запустить Восстановление системы, чтобы вернуться к предыдущей точке до того, как вы получили вирус Powershell.exe. Но вы должны выбрать точку восстановления, о которой вы точно знаете, что на вашем компьютере не было вируса Powershell.exe.

Вот способ запустить восстановление системы:

Шаг 1: нажмите кнопку Windows + р ключи одновременно, чтобы открыть Бежать диалоговое окно.

Шаг 2: введите Rstrui а затем щелкните да открыть Восстановление системы меню.

Шаг 3. Как только вы дойдете до начального Восстановление системы экран, щелкните следующий продолжать.

Шаг 4. Проверьте Показать больше точек восстановления , затем выберите точку восстановления, которая была создана ранее, и нажмите следующий .

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

выполнить восстановление системы

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

уменьшенное изображение точки восстановления системы win10

Что такое точка восстановления системы и как ее создать? Решения здесь!

Что такое точка восстановления системы и как создать точку восстановления Windows 10? Этот пост покажет вам ответы.

Метод 3: переустановите операционную систему

Если ни один из методов не может помочь вам избавиться от вируса Powershell.exe, вы можете только попробовать переустановить операционную систему.

Вот подробные инструкции по переустановке вашей системы:

Шаг 1. Вставьте USB-накопитель в другой рабочий компьютер и загрузите Windows 10. Инструмент для создания медиа на USB-накопитель.

Заметка: На USB-накопителе должно быть не менее 8 ГБ свободного места, и вы должны помнить, что все данные на USB-накопителе будут удалены, поэтому вам лучше заранее сделать резервную копию данных, которые вам нужны.

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

Шаг 4: Выберите Язык для установки , Формат времени и валюты и Клавиатура или метод ввода что ты хочешь. Затем нажмите следующий .

Шаг 5: нажмите Установите сейчас а затем выберите У меня нет ключа продукта .

Заметка: После завершения переустановки вам понадобится ключ продукта.

Шаг 6: Выберите операционную систему, которую хотите установить, и нажмите следующий .

выберите операционную систему, которую хотите установить

Шаг 7. Примите условия лицензии, а затем выберите любой из типов установки: Обновление: установите Windows и сохраните файлы, настройки и приложения. и Выборочная: установка только Windows (дополнительно) .

Шаг 8: Выберите раздел с текущей установкой Windows. Нажмите следующий .

выберите место

Шаг 9: Нажмите Установить .

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

Сброс Windows 10 против миниатюры чистой установки

Сброс Windows 10 VS Чистая установка VS Новый запуск, подробности здесь!

Сброс Windows 10 VS чистая установка VS новый запуск, в чем разница? Прочтите этот пост, чтобы узнать о них и выбрать подходящий для переустановки ОС.

Как избежать повторного заражения вирусом Powershell.exe?

Вы можете попробовать несколько методов, чтобы снизить вероятность повторного заражения вирусом Powershell.exe и даже любым другим вирусом. Я перечислил их ниже:

Обновите свою защиту от вредоносных программ и антивирусное ПО.

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

Будьте бдительны в отношении нового программного обеспечения.

Очень важно знать источник загружаемого программного обеспечения, потому что некоторые сайты с сомнительной репутацией могут содержать вирусы, такие как вирус Powershell.exe.

Посещайте известные сайты.

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

Никогда не нажимайте на рекламные баннеры.

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

date

03.06.2020

directory

PowerShell, Windows 10, Windows Server 2016

comments

Комментариев пока нет

По-умолчанию настройки Windows запрещают запуск скриптов PowerShell. Это необходимо для предотвращения запуска вредоносного кода на PowerShell. Настройки политик запуска PowerShell скриптов определяются в Execution Policy. В этой статье мы рассмотрим доступные политики запуска PS скриптов, как изменить Execution Policy и настроить политики использования PowerShell скриптов на компьютерах в домене.

Выполнение PowerShell скриптов запрещено для данной системы

При попытке выполнить PowerShell скрипт (файл с расширением PS1) на чистой Windows 10, появляется ошибка:

Не удается загрузить файл ps1, так как выполнение скриптов запрещено для данной системы.

Текущее значение политики выполнения скриптов PowerShell на компьютере можно получить командой:

Get-ExecutionPolicy

Доступны следующие значения PowerShell Execution Policy:

При запуске сторонних PowerShell скриптов может появляется предупреждение с подтверждением запуска, см. ниже.

Как разрешить запуск скриптов PowerShell с помощью Execution Policy?

Чтобы изменить текущее значение политики запуска PowerShell скриптов, используется командлет Set-ExecutionPolicy.

Например, разрешим запуск локальных скриптов:

Подтвердите изменение политики запуска PS1 скриптов, нажав Y или A.

Set-ExecutionPolicy RemoteSigned разрешить запуск локальных powershell скриптов

Чтобы запрос не появлялся, можно использовать параметр Force.

Set-ExecutionPolicy RemoteSigned –Force

Если вы установили значение политики PowerShell Execution Policy в Unrestricted, то при запуске удаленных скриптов из сетевых каталогов по UNC пути, скачанных из интернета файлов, все равно будет появляться предупреждение:

Run only scripts that you trust. While scripts from the internet can be useful, this script can potentially harm your computer. If you trust this script, use the Unblock-File cmdlet to allow the script to run without this warning message

Как PowerShell различает локальные и удаленные скрипты? Все дело в идентификаторе зоны ZoneId, которую выставляет браузер в альтернативном потоке при загрузке файла (см. статью “Как Windows определяет, что файл скачан из Интернета?”). Вы можете разблокировать такой файл, поставив галку “Разблокирвать” в его свойствах или очиститься метку зоны с помощью комадлета Unblock-File.

Также следует различать различные области действия политик выполнения скриптов PowerShell (scopes):

Область применения политики можно указать с помощью параметр Scope командлета Set-ExecutionPolicy. Например:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass –Force

Проверим текущие настройки ExecutionPolicy для всех областей:

Get-ExecutionPolicy scopes области действия

Значение политики выполнения, которые вы задаете с помощью командлета Set-ExecutionPolicy для областей CurrentUser и LocalMachine, хранятся в реестре. Например, выполните командлет:

Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy Restricted –Force

Откройте ветку реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell и проверьте значение REG_SZ параметра ExecutionPolicy. Оно изменилось на Restricted (допустимые значения параметра Restricted, AllSigned, RemoteSigned, Bypass, Unrestricted и Undefined).

ExecutionPolicy в реестре

Аналогичные настройки для области CurrentUser находятся в разделе реестра пользователя HKEY_CURRENT_USER\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell.

Т.е. вы можете распространить нужные настройки политики исполнения скриптов через реестр с помощью Group Policy Preferences.

Отметим, что чаще всего в корпоративной среде используется ExecutionPolicy со значением AllSigned на уровне LocalMachine. Это обеспечивает максимальный баланс между безопасностью и удобством. Для личного пользования на компьютере можно использовать RemoteSigned. Ну а Bypass политику лучше использовать только для запуска отдельных задач (например для запуска скриптов через GPO или заданий планировщика).

Настройка PowerShell Execution Policy с помощью групповых политик

Вы можете настроить политику выполнения PowerShel скриптов на серверах или компьютерах домена с помощью групповых политик.

  1. С помощью редактора доменных GPO (gpmc.msc) создайте новую GPO (или отредактируйте) существующую и назначьте ее на OU с компьютерами, к которым нужно применить политику запуска PowerShell скриптов;
  2. В редакторе политики перейдите в раздел Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Windows PowerShell и найдите политику Turn on Script Execution (Включить выполнение сценариев);

групповая политика Turn on Script Execution

  • Allow only signed scripts (Разрешать только подписанные сценарии) — соответствует политике AllSigned;
  • Allow local scripts and remote signed scripts (Разрешать локальные и удаленные подписанные сценарии) — соответствует политике PS RemoteSigned;
  • Allow all scripts (Разрешать все сценарии) — политика Unrestricted.

После настройки политики выполнения через GPO вы не сможете изменить настройки политики выполнения скриптов вручную. При попытке изменить настройки Execution Policy на компьютере, на который применяется такая GPO, появится ошибка:

Set-ExecutionPolicy : Windows PowerShell updated your execution policy successfully, but the setting is overridden by a policy defined at a more specific scope

Аналогичным образом можно настроить Execution Policy на отдельном компьютере с помощью локального редактора GPO – gpedit.msc.

Способы обхода политики PowerShell Execution

Есть несколько трюков, которые могут помочь вам, когда нужно запустить на компьютере PowerShell скрипт, не изменяя настройки политики выполнения. Например, я хочу запустить простой PS1 скрипт, который поверяет, что запущен с правами администратора.


Скорее всего, при попытке запуска ты видишь такую ошибку: «Невозможно загрузить файл C:Usersusernametest1.ps1» (File C:UsersC:Usersusernametest1.ps1 cannot be loaded because running scripts is disabled on this system).

Ошибка пошика

Ошибка пошика

Первым делом проверим настройки политики. Для этого откроем редактор PowerShell и выполним команду Get-ExecutionPolicy . В ответ ты получишь один из вариантов:

  • Restricted — запрет запуска сценариев;
  • AllSigned — могут быть запущены только сценарии, подписанные доверенным издателем. Будет запрашивать подтверждение перед каждым выполнением;
  • RemoteSigned — разрешено выполнять созданные и скачанные сценарии, подписанные доверенным издателем;
  • Unrestricted — самый опасный вариант, никаких ограничений. Все скрипты могут быть запущены.

Чтобы выполнять сценарии, понизим бдительность системы и установим RemoteSigned:

Попробуй снова запустить скрипт — теперь должно получиться.

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

Здесь есть еще интересный нюанс. Если ты скачал скрипт из интернета и совершенно точно хочешь его запустить, то его потребуется сначала разблокировать. Для этого зайди в свойства файла и ищи внизу кнопку «Разблокировать».

Снимаем блокировку с файла

Снимаем блокировку с файла

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

Читайте также: