الصيد المتقدم باستخدام PowerShell
ينطبق على:
هل تريد تجربة 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. لمزيد من المعلومات، راجع واجهة برمجة تطبيقات التتبع المتقدمة.
في هذا القسم، نشارك عينات 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 لنقطة النهاية)
- $appSecret: سر تطبيقك Microsoft Entra
تشغيل الاستعلام
قم بتشغيل الاستعلام التالي:
$token = $aadToken
$query = 'DeviceRegistryEvents | limit 10' # Paste your own query here
$url = "https://api.securitycenter.microsoft.com/api/advancedhunting/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 لنقطة النهاية
- واجهة برمجة تطبيقات التتبع المتقدمة
- "الصيد المتقدم" باستخدام Python
تلميح
هل تريد معرفة المزيد؟ Engage مع مجتمع أمان Microsoft في مجتمعنا التقني: Microsoft Defender لنقطة النهاية Tech Community.
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ