Thursday, 17 January 2019

Системное время в AD.

Всем привет.

Системное время это один из самых важных показателей работы вашей инфраструктуры. Оно должно быть точным и одинаковым на всех хостах домена. Если время по какой то причине убежало от точного его надо поправить.

По сути на контроллере домена следует выполнить следующее.

1. Запускаем командную строку от имени администратора.

2. Останавливаем службу W32Time:
net stop w32time

3. Задаем адреса внешних источников времени:
w32tm /config /syncfromflags:manual /manualpeerlist:"IP-adr-timeserver"

4. Теперь заставим контроллер отвечать клиентам на запросы о синхронизации времени:
w32tm /config /reliable:yes

5. Запускаем службу времени W32Time:
net start w32time

6. Проверяем текущую конфигурацию службы времени:
w32tm /query /configuration


На рабочих станциях и серверах домена проверяем синхронизацию времени так.

Задания часового пояса UTC-2:
tzutil /s "FLE Standard Time"
Проверка текущего пояса:
tzutil /g

Time synchronization, вариант #1:
w32tm /tz

Просмотр источника source:
w32tm /query /source
w32tm /query /peers

Запуск synchro-низации:
w32tm /resync
w32tm /resync /rediscover

Мonitor-ринг состония:
w32tm /monitor

Time synchronization, вариант #2:
Source:
net time

Synchro-низация:
net time /set

Wednesday, 16 January 2019

System Monitor для Windows.

Всем привет.

Изучаем новое не забывая старое. Оказывается повысить информативность и расширить возможности функции штатного аудита событий в Windows-среде можно используя утилиту System Monitor (Sysmon).

Часть 1.

Утилиту Sysmon можно загрузить с веб-сайта Microsoft Docs, из раздела Windows Sysinternals download пакета Windows Sysinternals от Марка Руссиновича.

Для эксперимента берем специальную готовую сборку с GitHub download, включающую файл конфигурации Sysmon Threat Intelligence Configuration от ION-STORM. Она ориентирована именно на выявление инцидентов информационной безопасности и может выступить качественной основой для создания твоих собственных файлов конфигурации.

Утилиту можно установить точечно на каждое рабочее место либо с использованием групповых политик (Group Policy) в домене.

Инсталирование в качестве сервиса:
>sysmon64.exe -i

Применение новой конфигурации:
>sysmon64.exe -с config.xml

Если все ок, то получим ответ:

Loading configuration file with schema version 4.00
Configuration file validated.
Configuration updated.

Тестовый config.xml может быть таким:

<Sysmon schemaversion="4.00">
  <!-- Capture all hashes -->
  <HashAlgorithms>*</HashAlgorithms>

  <EventFiltering>
    <!-- Log all drivers except if the signature -->
    <!-- contains Microsoft or Windows -->
    <DriverLoad onmatch="exclude">
      <Signature condition="contains">microsoft</Signature>
      <Signature condition="contains">windows</Signature>
    </DriverLoad>

    <ProcessTerminate onmatch="include">
    <!-- Log network connection if the destination port equal 443 -->
    <!-- or 80, and process isn't InternetExplorer -->
    </ProcessTerminate>

    <NetworkConnect onmatch="include">
      <DestinationPort>443</DestinationPort>
      <DestinationPort>80</DestinationPort>
      <Image condition="is">C:\Program Files\OpenVPN\bin\openvpn-gui.exe</Image>
      <Image condition="contains">Notepad</Image>
    </NetworkConnect>

    <NetworkConnect onmatch="exclude">
      <Image condition="end with">iexplore.exe</Image>
      <Image condition="end with">chrome.exe</Image>
    </NetworkConnect>

    <FileCreate onmatch="exclude">
      <Image condition="is">C:\Windows\system32\mmc.exe</Image>
      <Image condition="contains">chrome.exe</Image>
    </FileCreate>

    <FileCreateTime onmatch="exclude">
      <Image condition="contains">chrome.exe</Image>
    </FileCreateTime>

  </EventFiltering>
</Sysmon>

Справка по параметрам конфигурации сервиса:
>sysmon64.exe -? config

Проверка текущей конфигурации:
>sysmon64.exe -c

Если все ок, то получим такую сводку:

Current configuration:
 - Service name:                  Sysmon64
 - Driver name:                   SysmonDrv
 - HashingAlgorithms:             SHA1,MD5,SHA256,IMPHASH
 - Network connection:            enabled
 - Image loading:                 disabled
 - CRL checking:                  disabled
 - Process Access:                disabled

Rule configuration (version 0.00):
 - DriverLoad                         onmatch: exclude
Signature                      filter: contains     value: 'microsoft'
Signature                      filter: contains     value: 'windows'
 - ProcessTerminate                   onmatch: include
 - NetworkConnect                     onmatch: include
DestinationPort                filter: is           value: '443'
DestinationPort                filter: is           value: '80'
Image                          filter: is           value: 'C:\Program Files\OpenVPN\bin\openvpn-gui.exe'
Image                          filter: contains     value: 'Notepad'
 - NetworkConnect                     onmatch: exclude
Image                          filter: end with     value: 'iexplore.exe'
Image                          filter: end with     value: 'chrome.exe'
 - FileCreate                         onmatch: exclude
Image                          filter: is           value: 'C:\Windows\system32\mmc.exe'
Image                          filter: contains     value: 'chrome.exe'
 - FileCreateTime                     onmatch: exclude
Image                          filter: contains     value: 'chrome.exe'


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

Sunday, 13 January 2019

Обратная сторона от Youtube.

Всем привет.

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

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

Теперь же я могу ставить в ролики то аудио что мне подходит, а не Youtube. Разумеется делать это надо без фанатизма. Но обязательно в описание ролика добавлять текст типа - 
Disclaimer - I am not the owner neither the music nor the images. 
They belong to their original owners. This video is not commercial.

Успехов.

Friday, 11 January 2019

Рецепт - как нарисовать картину.

Всем привет.

Мне нравятся книги которые ко мне попадают случайно. Сегодня я имею ввиду роман «Остров Дума» Стивена Кинга. Я читал многие его книги, но эта мне пришлась по душе больше других. Так получилось что я время от времени отвлекаюсь на творчество, это помогает постичь новые горизонты. Причем здесь  «Остров Дума»? По тексту Стивен подает необычный рецепт тем кто хочет зарисовать этот мир, и не только этот. Очень сильно. И очень точно. Ниже я привожу его рецепт в переводе, книга у меня была украинском языке. Кто не знаком с замечательным украинским языком милости прошу к оригиналу.

Як намалювати картину.

Почніть з незайманої площини. Це не конче мусить бути папір або полотно, але, гадаю, площина має бути білою. Ми називаємо її білою, бо потребуємо якогось слова, проте справжнє її ім’я — ніщо. Чорне — це відсутність світла, а біле — відсутність пам’яті, колір неспроможності пам’ятати.

Почніть з того, що знаєте та бачите, а потім все переосмисліть. Мистецтво — магія, це беззаперечно, але всяке мистецтво, хоч яке чудернацьке, бере початок з нехитрої повсякденності. То ж не варто дивуватися, якщо на звичайному грунті раптом виростають фантастичні квіти. 

Не бійтеся експериментувати, знайдіть свою музу, дозвольте їй скеровувати вас. Але постійно концентруйтеся на результаті. Є різниця між гарною картиною і черговим банальним зображенням, що просто захаращує собою світовий простір.

Пам’ятайте, що правда в деталях. Неважливо, яким ви бачите світ сьогодні чи що за стиль він нав’язує вашій творчості, бо вся правда в деталях. Звісно, диявол також у деталях — це всім відомо, — але ймовірно, що правда та диявол — це різні слова, які просто означають те саме. 

Не втрачайте хоробрості. Не бійтесь вимальовувати потайні моменти з буденного. Хто каже, що мистецтво це завжди зефір? Іноді воно - ураган. Проте і в такому випадку вам не варто вагатися чи змінювати курс. Бо якщо ви переконуватимете себе в найбільшій неправді кепського мистецтва - ніби ви тут хазяїн - ви втратите шанс висловити правду. Правда не завжди гарна. Іноді правда - одоробло.

Tuesday, 8 January 2019

Калькулятор Hash суммы.

Всем привет.

Часто надо проверить hash-сумму подозрительного файла. После недолгих поисков в сети я нашел калькулятор с открытым кодом от Грега Захарова. Весьма изящное решение. 

Все что ниже запихните в bat-файл. И будет вам счастье. В виде простенького калькулятора hash-суммы для любого файла. Не забудьте тег html взять в <>.

@mshta "%~f0"&exit /b

html
  <head>
    <title>Hash Calculator</title>
    <meta name="author" content="Greg Zakharov" />
    <hta:application id="iHasher"
         applicationname="Hash Calculator"
         border="thin"
         contextmenu="no"
         maximizebutton="no"
         minimizebutton="no"
         scroll="no"
         singleinstance="yes"
         sysmenu="yes"
         version="1.0" />
    <style type="text/css">
      html, body {
        background: #eee;
        font-size: 90%;
        margin: 3px 3px;
        padding: 0;
      }
      p {
        font-weight: bold;
        margin: 1px 1px;
        padding: 0;
      }
      #filename {
        width: 100%;
      }
    </style>
    <script language="VBScript">
      Sub Resize()
        window.resizeTo 430, 130
      End Sub
   
      Sub GetHash()
        Dim objFile, objSize, objBuff, objType, objHash, objDone
        Dim objNS
     
        document.getElementById("result").value = ""
     
        objFile = document.getElementById("filename").value
        If objFile = "" Then
          alert("Nothing choosed.")
          Exit Sub
        End If
     
        With CreateObject("Scripting.FileSystemObject")
          objSize = .GetFile(objFile).Size
        End With
     
        If objSize = 0 Then
          alert("Specified file has null length.")
          Exit Sub
        End If
     
        With CreateObject("SAPI.SpFileStream")
          .Open objFile, 0
          .Read objBuff, objSize
          .Close
        End With
     
        For Each h In hash
          If h.checked Then
            objType = LCase(h.value)
            Exit For
          End If
        Next
     
        objNS = "System.Security.Cryptography."
        Select Case objType
          Case "md5"       Set objHash = CreateObject(objNS & "MD5CryptoServiceProvider")
          Case "sha1"      Set objHash = CreateObject(objNS & "SHA1Managed")
          Case "sha256"    Set objHash = CreateObject(objNS & "SHA256Managed")
          Case "sha384"    Set objHash = CreateObject(objNS & "SHA384Managed")
          Case "sha512"    Set objHash = CreateObject(objNS & "SHA512Managed")
          Case "ripemd160" Set objHash = CreateObject(objNS & "RIPEMD160Managed")
        End Select
     
        objType = objHash.ComputeHash_2((objBuff))
        For i = 1 To LenB(objType)
          objDone = objDone & Right("0" & Hex(AscB(MidB(objType, i, 1))), 2)
        Next
     
        document.getElementById("result").value = LCase(objDone)
      End Sub
    </script>
  </head>
  <body onload="Resize()">
    <p><input type="file" id="filename" onchange="GetHash()" /></p>
    <p>
      <input type="radio" name="hash" value="MD5"       onclick="GetHash()" />MD5
      <input type="radio" name="hash" value="SHA1"      onclick="GetHash()" />SHA1
      <input type="radio" name="hash" value="SHA256"    checked="true" onclick="GetHash()" />SHA256
      <input type="radio" name="hash" value="SHA384"    onclick="GetHash()" />SHA384
      <input type="radio" name="hash" value="SHA512"    onclick="GetHash()" />SHA512
      <input type="radio" name="hash" value="RIPEMD160" onclick="GetHash()" />RIPEMD160
    </p>
    <textarea cols="49" id="result"></textarea>
  </body>
/html

На сегодня все.

Версия на печать

Популярное

Медиа облако