Netwrix 1Secureは、データとアイデンティティ全体にわたる統合された可視性を提供します。14日間の無料トライアルでフルアクセス可能です。無料トライアルを開始

リソースセンターハウツーガイド

Windows Serverで誰がスケジュールタスクを作成したかを検出する方法

Windows Serverで誰がスケジュールタスクを作成したかを検出する方法

ネイティブ監査

  • eventvwr.msc を実行 → Windows Logs → 「Security」ログを右クリック → プロパティ:
    • 「Enable logging(ログの有効化)」のチェックボックスが選択されていることを確認してください
    • ログのサイズを少なくとも 1GB 以上に増やしてください。
  • 保持(リテンション)方法を「必要に応じてイベントを上書き(Overwrite events as needed)」に設定してください。
  • イベント ビューアーを開き、セキュリティ(Security)ログで 4698 のイベント ID を検索して、最新に作成されたスケジュール タスクを見つけてください。
  • すべてのスケジュール タスクの作成後に即時アラートを生成するには、次の PowerShell スクリプトをパラメーターを設定して編集し、たとえば detectst.ps1 として保存してください(コメントに従ってください):
      $Subject = "New Scheduled Task Has Been Created" # Message Subject
$Server = "smtp.server" # SMTP Server
$From = "From@domain.com" # From whom we are sending an e-mail(add anonymous logon permission if needed)
$To = "To@domain.com" # To whom we are sending
$Pwd = ConvertTo-SecureString "enterpassword" -AsPlainText –Force #Sender account password
#(Warning! Use a very restricted account for the sender, because the password stored in the script will be not encrypted)
$Cred = New-Object System.Management.Automation.PSCredential("From@domain.com" , $Pwd) #Sender account credentials
$encoding = [System.Text.Encoding]::UTF8 #Setting encoding to UTF8 for message correct display
#Powershell command for filtering the security log about created scheduled task event
$Body=Get-WinEvent -FilterHashtable @{LogName="Security";ID=4698;} | Select TimeCreated, machinename, @{n="Task Creator";e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq "SubjectUserName"} |%{$_.’#text’}}},@{n="Scheduled Task Name";e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq "TaskName"}| %{$_.’#text’}}} | select-object -first 1
#Sending an e-mail.
Send-MailMessage -From $From -To $To -SmtpServer $Server -Body "$Body" -Subject $Subject -Credential $Cred -Encoding $encoding,/p>
      
  • 「タスク スケジューラ」を実行 → 新しいスケジュール タスクを作成 → 名前を入力 → [トリガー] タブ → [新しいトリガー] → 次のオプションを設定します:
    • イベントでタスクを開始する
    • ログ – セキュリティ
    • ソース – 空白
    • イベント ID – 4698。
  • 「Actions」タブへ移動 → 次のパラメータで新しいアクションを作成:
    • アクション – プログラムを開始
    • プログラム スクリプト:powershell
    • 引数の追加(任意):-File "スクリプトへのファイルパス"
    • 「OK」をクリックします。
  • これで、Windows サーバー上で作成されたすべてのスケジュール タスクについて、電子メールで通知されます。メールには、スケジュール タスクの作成時刻、名前、このタスクが作成されたコンピューター名、および作成者名が含まれます。
Image

Netwrix Auditor for Windows Server

  • Netwrix Auditor を実行 → 「Reports」→「Windows Server」→「Windows Server Changes」へ移動 → 「Scheduled Task Changes」レポートを選択 → 「View」をクリックします。

レポートを電子メールで定期的に受け取るには、「Subscribe」ボタンをクリックし、ご希望のスケジュールを選択します。

Image

スケジュール タスクの作成時に即時アラートを作成するには:

  • Netwrix Auditor のホームページから「Alerts」へ移動します →「Add」をクリックします → アラートの名前を指定します。
  • 「Recipients」へ移動 →「Add Recipient」をクリック → アラートのメールアドレスを指定します。
  • 「Filters」へ移動 → 次のフィルターを調整します:
    • フィルター = “What”
      演算子 = “Contains”
      値 = “Scheduled Tasks”
    • フィルター = “Action”
      演算子 = “Equals”
      値 = “Added”
  • 「追加」をクリックしてアラートを保存します。

    誰かがスケジュールされたタスクを作成すると、同様のアラートが表示されます:
Image

共有する