Как стать автором
Поиск
Написать публикацию
Обновить
1.38

PowerShell *

Расширяемое средство автоматизации от Microsoft

Сначала показывать
Порог рейтинга
Уровень сложности

Автоматизация обслуживания компьютерного класса на Powershell

Время на прочтение20 мин
Количество просмотров7.4K


Вот уже несколько лет занимаюсь в университете поддержкой 10 рабочих станций под управлением ОС Microsoft Windows 8.1. В основном поддержка заключается в установке нужного для учебного процесса ПО и обеспечении общей работоспособности.

На каждой станции есть 2 пользователя: Администратор и Студент. Администратору доступно полное управление, у Студента нет возможности установки ПО. Чтобы не утруждать себя чисткой пользователя Студент, эта учетка просто удаляется целиком и создается заново. Это влечет за собой некоторые телодвижения, которые нужно выполнять на каждой станции.

В этом году решил автоматизировать большую часть телодвижений c помощью PowerShell без ActiveDirectory и собрал в этот пост некоторые рецепты, которые отыскал в сети.
Читать дальше →

Притворяемся что пишем на C#, но только на Powershell

Время на прочтение5 мин
Количество просмотров18K

Powershell — удобная API построенная на .net. Powershell позволяет пользователям писать скрипты, не упираясь в программирование, при этом получая схожие результаты. Что происходит на КДВП, автор объяснит позже по тексту. Сейчас нам срочно нужно притвориться, что мы программируем на C#.

TL;DR: Postman не нужен, если есть Powershell. Но сперва нужно зайти издалека.
Читать дальше →

Еще раз про живую миграцию: как перенести виртуальные машины Hyper-V, да побыстрее

Время на прочтение10 мин
Количество просмотров56K
     «Любишь Hyper-V – люби и PowerShell»
     Первое правило Сообщества Hyper-V в Телеграм 

     «А если любишь VMware ESXi, то люби PowerShell на пару с ESXi CLI и REST API»
     Дополнено мной

Живая миграция (live migration) – популярная функция в Hyper-V. Она позволяет переносить работающие виртуальные машины без видимого простоя. В сети много инструкций по переносу ВМ, но многие из них устарели. Вдобавок не все заглядывают в расширенные настройки и правильно используют возможности Live Migration. 

Я собрал нюансы и неочевидные параметры для быстрого переноса ВМ внутри кластера и между кластерами. Заодно поделюсь маленькими секретами в настройке и проектировании. Надеюсь, статья будет полезна начинающим админам.  

Дисклеймер: Все описанные шаги желательно сделать ДО ввода сервера Hyper-V в прод. Hyper-V никогда не прощает ошибок проектирования и подведет вас при первом удобном случае. То есть уже на следующий день.
Читать дальше →

Руководство по анализу Sysmon-угроз, часть 3. Углубленный анализ Sysmon-угроз с помощью графов

Время на прочтение10 мин
Количество просмотров2.5K


Эта статья является третьей, и финальной, частью серии по анализу Sysmon-угроз. Все остальные части серии:

Часть 1. Знакомство с анализом логов Sysmon
Часть 2. Использование данных из Sysmon событий для выявления угроз
Часть 3. Углубленный анализ Sysmon-угроз с помощью графов (мы тут)
Читать дальше →

Руководство по анализу Sysmon-угроз, часть 2. Использование данных из Sysmon-событий для выявления угроз

Время на прочтение5 мин
Количество просмотров2.8K


Эта статья является первой частью серии по анализу Sysmon-угроз. Все остальные части серии:
Часть 1. Знакомство с анализом логов Sysmon
Часть 2. Использование данных из Sysmon-событий для выявления угроз (мы тут)
Часть 3. Углубленный анализ Sysmon-угроз с помощью графов

В этом разделе мы углубимся и начнём использовать детализированную информацию, которую предоставляет нам Sysmon. Вот три основных момента, которые мы будем прорабатывать:

  1. Использование PowerShell для прямого доступа к гранулированной информации о процессах;
  2. Построение и визуализация иерархии процессов – первый важный шаг в поиске угроз;
  3. Использование метаданных Sysmon для формирования важных метрик, полезных при углублённом расследовании угроз, таких как подсчёт частоты, с которой запускаются конкретные процессы.
Читать дальше →

Как убрать назойливое предупреждение о сертификате для RDP

Время на прочтение2 мин
Количество просмотров24K

Привет Хабр, это супер короткое и простое руководство для новичков о том, как подключаться по RDP по доменному имени, чтобы не вылезало назойливое предупреждение о сертификате, подписанным самим сервером. Нам понадобится WinAcme и домен.

Все, кто хоть раз пользовался RDP, видели эту надпись.


В руководстве приведены готовые команды для пущего удобства. Скопировал, вставил и заработало.
Читать дальше →

Руководство по анализу Sysmon-угроз, часть 1

Время на прочтение6 мин
Количество просмотров11K


Эта статья является первой частью серии по анализу Sysmon-угроз. Все остальные части серии:

Часть 1. Знакомство с анализом логов Sysmon (мы тут)
Часть 2. Использование данных из Sysmon событий для выявления угроз
Часть 3. Углубленный анализ Sysmon-угроз с помощью графов

Если вы занимаетесь информационной безопасностью, наверняка вам часто приходится разбираться в происходящих атаках. Если у вас уже намётанный глаз, вы можете поискать нестандартную активность в «сырых» необработанных логах — скажем, PowerShell-скрипт с запущенной командой DownloadString или VBS-скрипт, притворяющийся Word-файлом, — просто пролистывая последнюю активность в журнале событий Windows. Но это реально большая головная боль. К счастью, Microsoft создал Sysmon, делающий анализ атак куда более простым.

Хотите разобраться в базовых идеях, стоящих за отображаемыми в логе Sysmon угрозами? Скачайте наше руководство WMI события как средство шпионажа и вы осознаете, как инсайдеры могут незаметно наблюдать за другими сотрудниками. Основной проблемой работы с журналом событий Windows является отсутствие информации о родительских процессах, т.е. из него нельзя понять иерархию процессов. В записях лога Sysmon же наоборот, содержатся идентификатор процесса родителя, его имя и запускаемая командная строка. Спасибо тебе, Microsoft.

В первой части нашей серии мы посмотрим, что можно сделать с базовой информацией из Sysmon. Во второй части мы в полной мере воспользуемся информацией о родительских процессах для создания более комплексных структур соответствия, которые известны как графы угроз. В третьей части мы рассмотрим простой алгоритм, который сканирует граф угроз для поиска нестандартной активности через анализ «веса» графа. А в конце в качестве вознаграждения вас ждет аккуратный (и понятный) вероятностный метод обнаружения угроз.
Читать дальше →

Изменяем и удаляем Azure VMs, используя PowerShell

Время на прочтение6 мин
Количество просмотров1.7K
С помощью PowerShell инженеры и IT-администраторы успешно автоматизируют различные задачи при работе не только с on-premises, но и с облачными инфраструктурами, в частности, с Azure. Работать через PowerShell в ряде случаев гораздо удобнее и быстрее, чем через Azure portal. Благодаря кросс-платформенности PowerShell можно использовать для любых ОС.

Неважно, работаете ли вы с Ubuntu, Red Hat или Windows — PowerShell поможет контролировать облачные ресурсы. Используя модуль Azure PowerShell, к примеру, можно задавать любые свойства виртуальных машин.

В этой статье мы рассмотрим, как можно использовать PowerShell, чтобы изменить размер ВМ в облаке Azure, а также чтобы удалить ВМ и ассоциированные с ней объекты.


Читать дальше →

Руководство по инструментарию управления Windows (WMI): основные сведения о WMI-атаках

Время на прочтение16 мин
Количество просмотров57K


Инструментарий управления Windows (WMI) — это подсистема PowerShell, которая обеспечивает администраторам доступ к мощным инструментам системного мониторинга. Этот инструментарий задумывался как быстрое и эффективное средство системного администрирования, однако далеко не все используют его с благими целями: с его помощью злоумышленники-инсайдеры могут шпионить за другими сотрудниками. Знание этой уязвимости WMI ощутимым образом упрощает обнаружение внутренних угроз и борьбу с ними.
В этой статье мы рассмотрим, что такое инструментарий WMI, для чего он нужен и как его можно использовать для отслеживания инсайдерской деятельности в системе. Мы также составили более подробное руководство, посвященное событиям WMI и инсайдерскому шпионажу, которое вы можете скачать бесплатно.
Читать дальше →

Что такое Windows PowerShell и с чем его едят? Часть 6: Решение практических задач

Время на прочтение7 мин
Количество просмотров22K


В предыдущих статьях мы разобрались с основами среды и достаточно подробно изучили язык программирования Microsoft PowerShell. Завершая цикл, мы рассмотрим работу с процессами и службами, реестром и журналами событий в распределенной среде, а также разберем некоторые способы администрирования операционной системы, настройки стороннего ПО и просмотра сведений об установленном оборудовании. Для этого в PowerShell активно применяются объекты различных типов, изучению которых были посвящены четвертая и пятая части цикла.
Читать дальше →

HackTheBox endgame. Прохождение лаборатории Professional Offensive Operations. Пентест Active Directory

Время на прочтение8 мин
Количество просмотров9.6K
image

В данной статье разберем прохождение не просто машины, а целой мини-лаборатории с площадки HackTheBox.

Как сказано в описании, P.O.O. предназначен для проверки навыков на всех стадиях атак в небольшой среде Active Directory. Цель состоит в том, чтобы скомпрометировать доступный хост, повысить привилегии и, в конечном итоге, скомпрометировать весь домен, собрав при этом 5 флагов.

Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ :)

Организационная информация
Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал канал в Telegram и группу для обсуждения любых вопросов в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации рассмотрю лично и отвечу всем.
Читать дальше →

Возврат значения из powershell invoke-command агенту SQL-Server

Время на прочтение5 мин
Количество просмотров7.2K
При создании собственной методики управления резервными копиями на множестве серверов MS-SQL я потратил кучу времени на изучение механизма передачи значений в powershell при удаленных вызовах, поэтому пишу самому себе памятку, а вдруг кому-то еще пригодится.

Итак, возьмем для начала простейший скрипт и запустим его локально:

$exitcode = $args[0]
Write-Host 'Out to host.'
Write-Output 'Out to output.'
Write-Host ('ExitCode: ' + $exitcode)
Write-Output $exitcode
$host.SetShouldExit($exitcode)

Для запуска скриптов я буду пользоваться следующим CMD-файлом, каждый раз его приводить не стану:

@Echo OFF
PowerShell .\TestOutput1.ps1 1
ECHO ERRORLEVEL=%ERRORLEVEL%

На экране мы увидим следующее:

Out to host.
Out to output.
ExitCode: 1
1
ERRORLEVEL=1
Читать дальше →

На чьей стороне вы: Push и Pull в Desired State Configuration

Время на прочтение8 мин
Количество просмотров3.4K
Мы уже рассказали, как описывать конфигурацию в Desired State Configuration (DSC) и разобрали встроенный агент Local Configuration Manager (LCM) для применения конфигурации на сервере. В первой части статьи пошагово прошлись по основным особенностям инструмента вместе с Евгением Парфеновым из DataLine.

Здесь же погрузимся в настройку и особенности работы в режимах Push и Pull.



О чём расскажем:


  1. Различия режимов Push и Pull
  2. Push-режим в деталях
  3. Pull-режим в деталях
Читать дальше →

Ближайшие события

Just another tool: знакомство с конфигурацией сервисов с помощью Desired State Configuration 

Время на прочтение14 мин
Количество просмотров4.2K
Desired State Configuration (DSC) — инструмент управления конфигурацией сервера. С его помощью можно настроить сервер (внести изменения в реестр, копировать файлы, установить и удалить компоненты), проконтролировать текущее состояние настроек и быстро откатиться до базовых настроек.

DSC интересен тем, кто придерживается DevOps-подхода. Этот инструмент хорошо укладывается в парадигму Infrastructure as a Code: разработчики могут вносить свои требования в конфигурацию и включать ее в систему управления версиями, а команды — развертывать код без использования «ручных» процессов.

Совместно со Станиславом Булдаковым из Райффайзенбанка мы объединили наш опыт работы с движком DSC и разделили его на 2 статьи. В первой мы разберем основные принципы работы и познакомимся с особенностями использования на практических примерах:

  • «распакуем коробку» с движком DSC, посмотрим, какие ресурсы есть по умолчанию, и покажем, где взять дополнительные ресурсы;
  • разберем, как описывать  конфигурацию в DSC; 
  • узнаем, как встроенный агент Local Configuration Manager применяет конфигурации на сервере, покажем, как он настраивается с помощью метаконфигураций;
  • перейдем к более сложным случаям настройки: частичным конфигурациям и конфигурациям-заглушкам.

А про настройку и особенности работы в режимах Push и Pull можно узнать во второй статье.

Читать дальше →

DGTL Communications Online Meetup 28/05

Время на прочтение1 мин
Количество просмотров850
28 мая сообщество DGTL Communications Райффайзенбанка приглашает на свою первую открытую online-встречу. Спикеры из компаний Mars, DataLine и Райффайзенбанка обсудят системы объединенных коммуникаций и средства связи: настройка выгрузки логов Exchange в Elastic, Microsoft Endpoint Manager в управлении iOS, Android и Windows 10 и границы применимости PowerShell Desired State Configuration.

Смотрите митап в записи!


Как я сделал систему приема платежей в Minecraft на чистом PowerShell

Время на прочтение10 мин
Количество просмотров13K

В этой статье мы прикрутим богомерзкий донат к ванильному серверу Minecraft с помощью Powershell. Преимущество метода в том, что майнкрафт это лишь частный случай реализации автоматических платежей с помощью консольных команд. Мы лишь слушаем, что нам присылает платежная система и заворачиваем это в команду. И главное – никаких плагинов.
А принимать платежи мы будем через PayPal. Самое главное, для того чтобы начать принимать платежи не нужно изменять код, PayPal отправит нам все что нужно. На сайте будем использовать через кнопки, так что на сайте можно обойтись чистым HTML. Абстрагируемся от тонкостей самой платежной системы и сконцентрируемся только на основных моментах в коде.
Читать дальше →

Как построить ракетный ускоритель для скриптов PowerCLI 

Время на прочтение9 мин
Количество просмотров3K
Рано или поздно любой системный администратор VMware доходит до автоматизации рутинных задач. Начинается все с командной строки, потом идет PowerShell или VMware PowerCLI.

Допустим, вы освоили PowerShell чуть дальше запуска ISE и использования стандартных командлетов из модулей, которые работают за счет «какой-то магии». Когда вы начнете считать виртуальные машины сотнями, то обнаружите, что скрипты, которые выручали на малых масштабах, работают заметно медленнее на больших. 

В этой ситуации выручат 2 инструмента:

  • PowerShell Runspaces – подход, который позволяет распараллелить выполнение процессов в отдельных потоках; 
  • Get-View – базовая функция PowerCLI, аналог Get-WMIObject в Windows. Этот командлет не тянет за собой сопутствующие сущности объекты, а получает информацию в виде простого объекта с простыми типами данных. Во многих случаях выходит быстрее.

Дальше кратко расскажу про каждый инструмент и покажу примеры использования. Разберем конкретные скрипты и посмотрим, когда лучше работает один, когда второй. Поехали!


Читать дальше →

Что такое Windows PowerShell и с чем его едят? Часть 5: Доступ к внешним объектам

Время на прочтение10 мин
Количество просмотров18K


В операционных системах Windows поддерживаются различные объектные инфраструктуры. Для доступа к ним можно использовать интерфейсы прикладного программирования (API), но разработка полноценных приложений не всегда оправдана. В PowerShell существуют специальные командлеты, позволяющие обращаться к объектам .NET, COM, WMI (CIM) и ADSI в интерактивном режиме. В четвертой части цикла мы изучили основы с упором на классы .NET Core, а сейчас хотим углубить тему и разобрать особенности взаимодействия PowerShell с внешними объектами.
Читать дальше →

Идеальный скрипт запуска сервера Minecraft

Время на прочтение8 мин
Количество просмотров30K


Автор очень любит игру, и сам является администратором небольшого сервера «чисто для друзей». Как водится среди любителей, на сервере замодировано все, а это влечёт за собой нестабильность работы и как следствие падения. Так как Powershell автор знает лучше, чем расположение магазинов на своей улице, он принял решение сделать «Лучший Скрипт Для Запуска Майнкрафт 2020». Этот же скрипт послужил основой для шаблона в маркетплейсе Ruvds. Но все исходники уже есть в статье. Сейчас по порядку, как это все производилось.
Читать дальше →

Что такое Windows PowerShell и с чем его едят? Часть 4: Работа с объектами, собственные классы

Время на прочтение9 мин
Количество просмотров36K


Текстовый вывод команд в окне интерпретатора PowerShell — всего лишь способ отображения информации в пригодном для человеческого восприятия виде. На самом деле среда ориентирована на работу с объектами: командлеты и функции получают их на входе и возвращают на выходе, а доступные в интерактивном режиме и в сценариях типы переменных базируются на классах .NET. В четвертой статье цикла мы изучим работу с объектами более детально.
Читать дальше →