ציד מתקדם באמצעות PowerShell
חל על:
רוצה להתנסות ב- Microsoft Defender עבור נקודת קצה? הירשם לקבלת גירסת ניסיון ללא תשלום.
הערה
אם אתה לקוח של ממשלת ארה"ב, השתמש בURI המפורטים ב- Microsoft Defender עבור נקודת קצה עבור לקוחות של ממשלת ארה"ב.
עצה
לקבלת ביצועים טובים יותר, באפשרותך להשתמש בשרת קרוב יותר למיקום הגיאוגרפי שלך:
- us.api.security.microsoft.com
- eu.api.security.microsoft.com
- uk.api.security.microsoft.com
- au.api.security.microsoft.com
- swa.api.security.microsoft.com
הפעל שאילתות מתקדמות באמצעות PowerShell. לקבלת מידע נוסף, ראה API מתקדם לציד.
בסעיף זה, אנו משתפים דוגמאות של PowerShell כדי לאחזר אסימון ולהשתמש בו כדי להפעיל שאילתה.
לפני שתתחיל
תחילה עליך ליצור יישום.
הוראות הכנה
פתח חלון PowerShell.
אם המדיניות שלך אינה מאפשרת לך להפעיל את פקודות PowerShell, באפשרותך להפעיל את הפקודה הבאה:
Set-ExecutionPolicy -ExecutionPolicy Bypass
לקבלת מידע נוסף, ראה תיעוד של PowerShell.
קבל אסימון
- הפעל את הפעולות הבאות:
$tenantId = '00000000-0000-0000-0000-000000000000' # Paste your own tenant ID here
$appId = '11111111-1111-1111-1111-111111111111' # Paste your own app ID here
$appSecret = '22222222-2222-2222-2222-222222222222' # Paste your own app secret here
$resourceAppIdUri = 'https://api.securitycenter.microsoft.com'
$oAuthUri = "https://login.microsoftonline.com/$TenantId/oauth2/token"
$body = [Ordered] @{
resource = "$resourceAppIdUri"
client_id = "$appId"
client_secret = "$appSecret"
grant_type = 'client_credentials'
}
$response = Invoke-RestMethod -Method Post -Uri $oAuthUri -Body $body -ErrorAction Stop
$aadToken = $response.access_token
איפה
- $tenantId: מזהה הדייר בשמו ברצונך להפעיל את השאילתה (כלומר, השאילתה מופעלת על הנתונים של דייר זה)
- $appId: מזהה היישום Microsoft Entra שלך (האפליקציה חייבת לכלול הרשאת 'הפעל שאילתות מתקדמות' ב- Defender for Endpoint)
- $appSecret: סוד האפליקציה Microsoft Entra שלך
הפעל שאילתה
הפעל את השאילתה הבאה:
$token = $aadToken
$query = 'DeviceRegistryEvents | limit 10' # Paste your own query here
$url = "https://api.securitycenter.microsoft.com/api/advancedqueries/run"
$headers = @{
'Content-Type' = 'application/json'
Accept = 'application/json'
Authorization = "Bearer $aadToken"
}
$body = ConvertTo-Json -InputObject @{ 'Query' = $query }
$webResponse = Invoke-WebRequest -Method Post -Uri $url -Headers $headers -Body $body -ErrorAction Stop
$response = $webResponse | ConvertFrom-Json
$results = $response.Results
$schema = $response.Schema
- $results מכילות את תוצאות השאילתה שלך
- $schema מכיל את הסכימה של תוצאות השאילתה
שאילתות מורכבות
אם ברצונך להפעיל שאילתות מורכבות (או שאילתות מרובות שורות), שמור את השאילתה בקובץ, וב במקום השורה הראשונה בדוגמה לעיל, הפעל את הפקודה הבאה:
$query = [IO.File]::ReadAllText("C:\myQuery.txt"); # Replace with the path to your file
עבודה עם תוצאות שאילתה
כעת באפשרותך להשתמש בתוצאות השאילתה.
כדי ליצור פלט של תוצאות השאילתה בתבנית CSV בקובץ file1.csv, הפעל את הפקודה הבאה:
$results | ConvertTo-Csv -NoTypeInformation | Set-Content C:\file1.csv
כדי ליצור פלט של תוצאות השאילתה בתבנית JSON בקובץ file1.json, הפעל את הפקודה הבאה:
$results | ConvertTo-Json | Set-Content file1.json
מאמר קשור
- Microsoft Defender עבור נקודת קצה API של Microsoft Defender עבור נקודת קצה
- API מתקדם לציד
- ציד מתקדם באמצעות Python
עצה
האם ברצונך לקבל מידע נוסף? Engage עם קהילת האבטחה של Microsoft בקהילת הטכנולוגיה שלנו: Microsoft Defender עבור נקודת קצה Tech Community.
משוב
https://aka.ms/ContentUserFeedback.
בקרוב: במהלך 2024, נפתור בעיות GitHub כמנגנון המשוב לתוכן ונחליף אותו במערכת משוב חדשה. לקבלת מידע נוסף, ראה:שלח והצג משוב עבור