Pull to refresh
  • by relevance
  • by date
  • by rating

Работа с WMI. События для процессов

.NET *
Мониторить список процессов можно разными способами, мне понравился вариант с использованием WMI, с помощью которого, мы можем обработать событие создание процесса, изменения, удаления и т.п.

интересно, что же дальше?
Total votes 29: ↑24 and ↓5 +19
Views 7.2K
Comments 12

PowerShell для автоматического переключения сетевых настроек

PowerShell *
Некоторое время назад у моего провайдера случилась полоса глюков, связанных с перекладкой кабеля. Сейчас все нормально, но тогда пару раз в неделю отрубался инет и работник поддержки каждый раз требовал от меня подключать комп напрямую а не через рутер. Вот для быстрого изменения сетевых настроек я как раз и сделал две маленькие функции to_direct и to_router, которые я и предлагаю вашему вниманию. Они написаны не лучшим образом — так что это просто кусочки кода которые работают и которыe могут вам пригодиться, а не образец того, как писать скрипты.

Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Views 4K
Comments 5

Диспетчер задач на Javascript

Lumber room
Предыстория: на рабочих станциях домена что я тоже администрирую частенько падает некий Lotus Notes, причем падает так что один из его процессов (ntaskldr.exe) остается в памяти и не дает запустить Lotus снова.

Приходилось заходить UltraVNC на машину, запускать привилегированным пользователем диспетчер задач и убивать ненавистный процесс. Сей процесс утомил меня и я начал копать в сторону удаленных диспетчеров задач. Не найдя ничего достойного кроме платного Remote Process Explorer решил написать его сам. А так как я начал изучать JavaScript, то решил сделать программу с использованием этой технологии.

Вот и пришло время представить на суд общественности диспетчер задач полностью написанный на JavaScript: HTAPrEx
Total votes 10: ↑6 and ↓4 +2
Views 643
Comments 21

WMI что это такое и с чего начать?

Lumber room
Для начала что такое WMI (Windows Management Instrumentation)? Это технология, которая с помощью единого интерфейса позволяет управлять компонентами как локальной, так и удаленной операционной системы.
Данный материал рассчитан на тех, кто что-то слышал о WMI, но не знает с чего начать его «ковырять». А так же на тех, кто и не подозревал о существовании такого удобного инструмента.

Читать дальше →
Total votes 14: ↑12 and ↓2 +10
Views 38K
Comments 1

PRTG: Система мониторинга и некоторые полезные советы

Information Security *
Sandbox


На рынке существует огромное множество систем мониторинга, начиная от самых простых и бесплатных и заканчивая дорогими решениями от известных производителей, таких как Hewlett-Packard и Microsoft.

В этой статье я расскажу вам о системе PRTG Network Monitor от компании Paessler AG. Сразу хочу оговориться, что я не являюсь серьезным IT специалистом, а работаю в области безопасности, хотя и достаточно тесно сотрудничаю с департаментами IT и IT Security.

Выбор ПО производился мной на основании поверхностного анализа сайтов производителей.
Читать дальше →
Total votes 13: ↑7 and ↓6 +1
Views 101K
Comments 7

Получение административных привилегий в Microsoft SQL Server

Microsoft SQL Server *
Tutorial

Введение

После смены рабочей станции начал ставить на нее Micorosft SQL Server 2008 R2 и чуть было не натолкнулся на традиционные грабли, связанные с улучшенной безопасностью в этой версии. Если в Microsoft SQL Server 2005 группа локальных администраторов по умолчанию включалась в роль sysadmin на SQL сервере, то в 2008-й в эту роль не включается никто:

В итоге, в инсталляции по умолчанию получается ситуация, в которой к инстансу не имеет административного доступа никто, то есть сделать с этим инстансом нельзя ничего кроме как периодически перезагружать его. Также такая ситуация возникает, когда тот, кто устанавливал SQL сервер, назначив себя единственным администратором, увольняется — например такая ситуация возникла нашими админами.
Данный пост показывает решение этой проблемы и предоставляет автоматизированное решение этой проблемы в виде скрипта, ровно как и рассказывает историю его написания, иллюстрируя мощь WMI, которая недопустимо замалчивается в литературе и в интернете.
Читать дальше →
Total votes 26: ↑20 and ↓6 +14
Views 37K
Comments 11

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

Configuring Linux *System administration *Server Administration *Puppet *
Tutorial

В качестве предисловия


Основной задачей моей работы является поддержка парка железных и vm хостов — уже под 200 (а приходил было менше 100, эх, время бежит...) Поддерживаю все железо, а также сеть. Также на мне весь мониторинг (используем Opsview — сделан на ядре nagios), аггрегация логов (я внедрил Logstash, обалденное opensource решение за место ну ооочень дорогого Splunk), configuration management (puppet), бекапы, поддержка баз данных и прочих систем тоже на мне (MongoDB, MySQL, Redis, ElasticSearch, etc). В общем — все самое интересное). Стоит отметить что у нас достаточно тонкая грань между поддержкой и разработкой, и разработчики часто говорят что они хотят, а я уже занимаюсь внедрением. Хочется рассказать обо всем что происходит интересного и какие технологии удается использовать. Какие прижились, а какие по каким-то причинам нет.
Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Views 10K
Comments 0

Управление удалённым IIS

Аркадия corporate blog Website development *.NET *IIS *C# *

Вступление


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

Вот список основных требований к реализуемому модулю:
  • Возможность выполнения основных операций с IIS:
    • создание сайта
    • создание virtual application
    • создание virtual directory
    • настройка bindings для сайтов, включая установку сертификатов SSL
    • создание пулов приложений с детальной настройкой
  • Поддержка параллельной работы с несколькими IIS на разных серверах фермы
  • Поддержка IIS версии 8.0 (более ранние версии поддерживать не нужно).

Одним словом, модуль должен был уметь практически всё, что можно сделать через IIS Manager.
Как реализовывался данный функционал
Total votes 10: ↑10 and ↓0 +10
Views 12K
Comments 8

Пишем Custom MSBuild Task для деплоя (WMI included)

Programming *.NET *ASP *C# *
Добрый день! Одним прекрасным днем мы обнаружили, что наш MSBuild деплой проект не хочет работать в новой среде: для создания и управления сайтами и пулами он использовал MSBuild.ExtensionPack. Падали ошибки, связанные с недоступностью DCOM. Среду менять было нельзя, поэтому кстати пришлась возможность написания собственных задач для MSBuild: msdn.microsoft.com/en-us/library/t9883dzc.aspx, было принято решения написать свои, которые работали бы через WMI (доступный на среде) Кому интересно, что получилось, прошу под кат.
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Views 7.5K
Comments 3

Можно ли полагаться на данные, извлекаемые WMI классами?

Perl *Python *JavaScript *Programming *API *
На примере нескольких WMI-классов Win32_xxxx, показано, что как минимум некоторые из свойств объектов, возвращаемые указанными классами, совершенно не соответствуют реальным значениям этих свойств.
Читать дальше →
Total votes 9: ↑7 and ↓2 +5
Views 9.3K
Comments 8

Детектим виртуальную машину на C#: 1 уровень

.NET *C# *
Sandbox

Одним жуть каким прохладным январским утром от знакомого прилетел вопрос — как на C# определить, не запущена ли программа в ОС (оконное приложение в ОС Windows 7 или новее) на виртуальной машине.


Требования к такому детектору были достаточно жёсткими:

  1. Должен быть полностью в исходных кодах,
  2. Должен собираться с помощью Visual Studio,
  3. Должен работать из-под аккаунта непривилегированного пользователя (нельзя использовать методы, требующие, к примеру, установки драйверов устройств, или иных операций, для которых нужны права администратора),
  4. Разрешено использовать .NET Framework 4.5 и никаких лишних зависимостей (типа Visual C++ Redistributable Package).


Под катом описание реализованного детектора на C# (в следующей части — с некоторыми элементами C++) и приличным количеством неприличного кода с использованием Visual Studio 2015 Community.


Структура публикации


  • 1 уровень. Изучение матчасти и простейших существующих решений:

    • немного теории касательно виртуализации,
    • реализация проверки ВМ с помощью данных из Windows Management Instrumentation (WMI).

  • 2 уровень. Поиск статей и публикаций про детектирование запуска в виртуальных машинах:

    • допиливаем реализацию с WMI,
    • работа с инструкцией CPUID.

  • 3 уровень. Поиск материалов с хакерских конференций:

    • допиливаем работу с CPUID,
    • делаем сводную таблицу параметров и результатов тестирования.
Читать дальше →
Total votes 30: ↑29 and ↓1 +28
Views 21K
Comments 27

OSSIM. WMI плагины с хрустящей корочкой. Рецепт

Configuring Linux *System administration *
Доброго времени суток, уважаемые читатели.

Хочу поделиться с Вами своими экспериментами по сбору журналов событий Windows в OSSIM без использования агентов, т.е. с помощью WMI плагинов.
Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 2.5K
Comments 4

1000++ способ запуска команд на удаленном компьютере

Сервер Молл corporate blog System administration *PowerShell *Server Administration *IT Terminology


В наше время даже для собак придумали удаленное управление.


Возвращаясь к циклу «Конспект Админа», мне хотелось бы рассказать о вариантах запуска исполняемых программ на удаленных компьютерах. Эта статья будет интересна тем, у кого еще нет систем централизованного управления, но уже есть понимание утомительности ручного обхода рабочих станций и серверов. Либо тем, кому решения «под ключ» не интересны ввиду неспортивности.

Читать дальше →
Total votes 12: ↑9 and ↓3 +6
Views 135K
Comments 27

Обнаружение сетевых устройств

System administration *IT Infrastructure *Network technologies *
Сканирование сети с построением списка устройств и их свойств, таких как перечень сетевых интерфейсов, с последующим снятием данных в системах мониторинга, если не вникать в происходящее, может показаться особой, компьютерной, магией. Как же это работает — под катом.


Читать дальше →
Total votes 15: ↑13 and ↓2 +11
Views 60K
Comments 12

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Enterprise Tactics. Часть 2

Information Security *
Tutorial

Выполнение (Execution)


Ссылки на все части:
Часть 1. Получение первоначального доступа (Initial Access)
Часть 2. Выполнение (Execution)
Часть 3. Закрепление (Persistence)
Часть 4. Повышение привилегий (Privilege Escalation)
Часть 5. Обход защиты (Defense Evasion)
Часть 6. Получение учетных данных (Credential Access)
Часть 7. Обнаружение (Discovery)
Часть 8. Боковое перемещение (Lateral Movement)
Часть 9. Сбор данных (Collection)
Часть 10 Эксфильтрация или утечка данных (Exfiltration)
Часть 11. Командование и управление (Command and Control)

Фаза «Выполнение (Execution)», описывает применение злоумышленниками средств и методов удаленного и локального выполнения в атакуемой системе различных команд, сценариев и исполняемых файлов, которые были доставлены в неё на предыдущем этапе.
Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Views 7.8K
Comments 0

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Enterprise Tactics. Часть 3

Information Security *

Закрепление (Persistence)


Ссылки на все части:
Часть 1. Получение первоначального доступа (Initial Access)
Часть 2. Выполнение (Execution)
Часть 3. Закрепление (Persistence)
Часть 4. Повышение привилегий (Privilege Escalation)
Часть 5. Обход защиты (Defense Evasion)
Часть 6. Получение учетных данных (Credential Access)
Часть 7. Обнаружение (Discovery)
Часть 8. Боковое перемещение (Lateral Movement)

Основная задача закрепления доступа состоит в обеспечении постоянства присутствия в атакуемой системе, ведь доступ может быть утрачен в связи с перезапуском атакуемой системы, утерей учетных данных или блокированием инструментов удаленного доступа вследствие обнаружения атаки.
Читать дальше →
Total votes 9: ↑8 and ↓1 +7
Views 5.3K
Comments 0

Monitoring System for Windows servers on pure SQL, and how I had secretly dragged it into the Production

IT Infrastructure *Microsoft SQL Server *
A long time ago in a galaxy far, far away there was a company grown from a startup to something much bigger, but for a while the IT department was still compact and very efficient. That company hosted on prem hundreds of virtual Windows servers, and of course these servers were monitored. Even before I joined the company, NetIQ had been chosen as a monitoring solution.

One of my new tasks was to support NetIQ. The person, who worked with NetIQ before, said a lot about his experience with NetIQ, unfortunately, if I try to put it here it would be just a long line of ‘****’ characters. Soon I realized why. Steve Jobs is probably spinning in his grave looking at the interface like this:

image
Read more →
Total votes 22: ↑21 and ↓1 +20
Views 1K
Comments 0

«Неуловимый» список установленных обновлений Windows

.NET *XML *C# *Reverse engineering *Development for Windows *
Вы когда-нибудь задумывались, с помощью чего формируется список установленных обновлений Windows? А через какое API его достать? Ответы на эти и другие возникающие вопросы я постараюсь дать в своём небольшом исследовании.


Подробности - под катом
Total votes 28: ↑28 and ↓0 +28
Views 37K
Comments 15

Как линейное время превращается в Windows в O(n²)

Client optimization *Reverse engineering *Development for Windows *
Translation
image

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

Для меня очень важно подбирать хорошие заголовки для своих постов, но я сразу же вспомнил, что подходящее название «48 ядер заблокированы девятью инструкциями» уже занято [перевод на Хабре] постом, написанным меньше месяца назад. Количество заблокированных процессоров отличается, а цикл немного длиннее, но на самом деле всё это заставляет испытывать дежавю. Поэтому пока я объясняю новую найденную проблему, мне был хотелось поразмыслить над тем, почему это случается постоянно.

Почему это происходит?


Грубо говоря, такие проблемы возникают вследствие наблюдения, которое я назову Первым законом Доусона о вычислениях: O(n2) — это магнит для алгоритмов, которые плохо масштабируются: они достаточно быстры, чтобы попасть в продакшен, но достаточно медленны, чтобы всё портить, когда туда попадут.


O(n2) в действии — данные взяты из моего случая
Читать дальше →
Total votes 88: ↑87 and ↓1 +86
Views 35K
Comments 54
1