Ketshash

Configurare noua (How To)

Situatie

Un mic instrument pentru detectarea conexiunilor suspecte NTLM privilegiate, în special atac Pass-The-Hash, pe baza jurnalelor de vizualizare a evenimentelor.

Cerinţe

Contul cu următoarele privilegii:

  • Acces la jurnalele de evenimente de securitate ale mașinilor la distanță
  • Permisii de citire ActiveDirectory (cont de domeniu standard)
  • Calculatoare sincronizate cu același timp, altfel poate afecta rezultatele
  • Minimum PowerShell 2.0
Prezentare generală

Ketshash este un instrument pentru detectarea conexiunilor NTLM privilegiate, bazate pe următoarele informații:

  • Jurnalele de evenimente de securitate pe mașinile monitorizate (evenimente de conectare)
  • Evenimente de autentificare din Active Directory

Solutie

Pasi de urmat

Utilizare de bază

  • Deschideți PowerShell și rulați:
    • Import-Module .\Ketshash.ps1 sau copiați și lipiți conținutul Ketshash.ps1 în sesiunea PowerShell
    • Invoke-DetectPTH <arguments>
Ketshash Runner
  • Asigurați-vă că Ketshash.ps1 se află în același director din KetshashRunner.exe
  • Faceți dublu clic pe KetshashRunner.exe, schimbați setările dacă aveți nevoie și apăsați Run.

Invocați-DetectPTH

Parametri:

  • TargetComputers – computere țintă pentru a detecta conexiunile NTLM.
  • TargetComputersFile – Calea către fișier cu lista de calculatoare țintă pentru a detecta conexiunile NTLM.
  • StartTime – perioadă în care începe detectarea. Valoarea implicită este ora curentă.
  • UseKerberosCheck – Verificări pentru logare TGT \ TGS pe DC-urile din organizație. Implicit este să căutați logon legitim pe mașina sursă. În orice caz, cu sau fără acest comutator, există încă o întrebare pentru ID-ul evenimentului 4648 pe aparatul sursă.
  • UseNewCredentialsCheck – Verifică evenimentele de conectare cu tipul de logare 9 (cum ar fi Mimikatz). Acest lucru este opțional, algoritmul prestabilit îl acoperă deja. Există doar pentru a arăta o altă opțiune pentru a detecta conexiuni NTLM suspecte. Pe versiunile Windows 10 și Server 2016, “Microsoft-Windows-LSA / Operational” ar trebui să fie activată în vizualizatorul de evenimente. Pe Windows 10 și Server 2016, activarea “auditului obiectului kernel” va oferi informații mai precise, cum ar fi scrierea în LSASS.
  • LogFile – Calea fișierului log pentru a salva rezultatele.
Exemplu (recomandat):
Invoke-DetectPTH  - TargetComputers " MARS-7 "  - LogFile " C: \ tmp \ log.txt "

alt text

Exemplu:
Invoke-DetectPTH  - TargetComputers " ComputerName "  - StartTime ([ datetime ] " 2017-12-14 12:50:00 PM " ) - LogFile " C: \ tmp \ log.txt "  - UseKerberosCheck - UseNewCredentialsCheck

alt text

Debugging

Deoarece utilizează thread-uri, nu este posibilă debugarea blocului de scripturi al funcției principale. O soluție poate fi folosită Invoke-Commandînainte de Detect-PTHMultithreaded:

Invoke-Command  - ScriptBlock $ detectPTHScriptBlock  - ArgumentList $ TargetComputere ,  $ startTime ,  $ LogFile ,  $ UseKerberosCheck ,  $ UseNewCredentialsCheck ,  $ MaxHoursOfLegitLogonPriorToNTLMEvent `

Detectați numai un singur computer țintă:

Invoke-DetectPTH  - TargetComputers " <computer_name> " ...

Modificați $TargetComputersă fie în [string]loc [array]. În acest fel, este posibil să se utilizeze puncte de blocare în interiorul blocului de script al funcției principale.

Tip solutie

Permanent

Voteaza

(10 din 27 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?