Question Analysis

On a Windows device, an attacker ran a PowerShell script to collect system settings including UI language and locale. Identify which cmdlet in the command line was used to obtain the system locale.

1f23bfe8-36d4-49ce-903a-19a1e8c6631b
Question ID
9/16
Models Correct
1
Valid Answer
56%
Success Rate
Reference Answer

Human-validated correct answer for this question

Get-WinSystemLocale
Model Performance Comparison

See how different AI models performed on this question

ModelAnswerKQL QueryStatusAttemptsTimeCost
gemini-2.5-flash-preview-04-17
No answer provided
No query generated
Incorrect
5
0.00s
0.0183
gpt-35-turbo
Get-WinSystemLocale
DeviceProcessEvents | where ProcessCommandLine contains 'Get-WinSystemLocale'
Correct
1
3.05s
0.0030
gpt-4-turbo-2024-04-09
No answer provided
No query generated
Incorrect
5
0.00s
0.2293
gpt-4.1
Get-WinSystemLocale
DeviceProcessEvents | where FileName =~ "powershell.exe" | where ProcessCommandLine has_any ("Get-WinSystemLocale", "Get-Culture", "Get-UICulture") | extend CmdletUsed = case(ProcessCommandLine has "Get-WinSystemLocale", "Get-WinSystemLocale", ProcessCommandLine has "Get-Culture", "Get-Culture", ProcessCommandLine has "Get-UICulture", "Get-UICulture", "Unknown") | project TimeGenerated, DeviceName, AccountName, ProcessCommandLine, CmdletUsed
Correct
1
4.75s
0.0117
gpt-4.1-finetuned
Get-WinSystemLocale
DeviceProcessEvents | where ProcessCommandLine has "Get-Culture" or ProcessCommandLine has "CultureInfo" or ProcessCommandLine has "CultureInfo" | distinct ProcessCommandLine | take 10
Correct
5
37.73s
0.0359
gpt-4.1-mini
Get-WinSystemLocale
DeviceProcessEvents | where InitiatingProcessFileName has_cs "powershell.exe" and (ProcessCommandLine has "Get-Culture" or ProcessCommandLine has "Get-UICulture" or ProcessCommandLine has "Get-WinSystemLocale" or ProcessCommandLine has "Get-WinUserLanguageList") | project Timestamp, DeviceName, InitiatingProcessAccountName, ProcessCommandLine | order by Timestamp desc
Correct
2
19.90s
0.0030
gpt-4.1-nano
Get-WinSystemLocale
DeviceProcessEvents | where ProcessCommandLine contains 'Get-Culture' or ProcessCommandLine contains 'Get-WinSystemLocale' | project TimeGenerated, DeviceName, ProcessCommandLine, InitiatingProcessFileName, InitiatingProcessId
Correct
1
2.89s
0.0005
gpt-4o
No answer provided
No query generated
Incorrect
5
0.00s
0.0481
grok-3-beta
wmic
DeviceProcessEvents | where InitiatingProcessFileName in ('powershell.exe', 'pwsh.exe') | where ProcessCommandLine has_any ('Get-Culture', 'Get-UICulture', 'locale', 'language', 'region') | project DeviceName, Timestamp, ProcessCommandLine, InitiatingProcessFileName, InitiatingProcessCommandLine, AccountName | order by Timestamp desc
Incorrect
1
10.57s
0.0213
grok-3-mini-beta
Get-WinSystemLocale
DeviceProcessEvents | where FileName == 'powershell.exe' | where ProcessCommandLine contains 'Get-Culture' or ProcessCommandLine contains 'Get-WinSystemLocale' | project Timestamp, DeviceName, ProcessCommandLine, AccountName | order by Timestamp desc
Correct
1
11.37s
0.0016
o1-high
Get-WinSystemLocale
union DeviceEvents, DeviceFileEvents, DeviceImageLoadEvents, DeviceLogonEvents, DeviceNetworkEvents, DeviceProcessEvents, DeviceRegistryEvents | where TimeGenerated >= ago(7d) // Combine possible command line fields for different event types | extend FullCommandLine = coalesce(InitiatingProcessCommandLine, ProcessCommandLine, AdditionalFields.CommandLine) | where isnotempty(FullCommandLine) | where tolower(FullCommandLine) has "powershell" and tolower(FullCommandLine) has_any ("get-culture", "get-uiculture", "get-winsystemlocale", "locale") // Extract the relevant cmdlet name found | extend LocaleCmdlet = extract(@"(get-culture|get-uiculture|get-winsystemlocale|locale)", 0, tolower(FullCommandLine)) | project TimeGenerated, DeviceName, FullCommandLine, LocaleCmdlet, InitiatingProcessAccountName, InitiatingProcessAccountDomain | order by TimeGenerated desc
Correct
5
105.49s
0.7295
o1-low
Get-WinSystemLocale
DeviceProcessEvents | where TimeGenerated >= ago(14d) // Adjust the time range as needed | where (InitiatingProcessCommandLine contains "powershell" or ProcessCommandLine contains "powershell" or InitiatingProcessCommandLine contains "pwsh" or ProcessCommandLine contains "pwsh") | where (InitiatingProcessCommandLine has_any ("Get-Culture","Get-UICulture","Get-WinSystemLocale","wmic os get locale","Get-CimInstance","Get-WmiObject","Win32_OperatingSystem") or ProcessCommandLine has_any ("Get-Culture","Get-UICulture","Get-WinSystemLocale","wmic os get locale","Get-CimInstance","Get-WmiObject","Win32_OperatingSystem")) | project TimeGenerated, DeviceId, DeviceName, AccountName, InitiatingProcessCommandLine, ProcessCommandLine | order by TimeGenerated desc
Correct
3
63.57s
0.4904
o3-mini-high
No answer provided
No query generated
Incorrect
5
0.00s
0.0348
o3-mini-low
No answer provided
No query generated
Incorrect
5
0.00s
0.0387
o4-mini-high
No answer provided
No query generated
Incorrect
5
0.00s
0.0456
o4-mini-low
Get-WinSystemLocale
DeviceProcessEvents | where FileName in~ ("powershell.exe", "pwsh.exe") | where ProcessCommandLine matches regex @"(?i)Get-(Culture|UICulture|WinSystemLocale)" | extend Cmdlet = extract(@"(?i)(Get-(?:Culture|UICulture|WinSystemLocale))", 1, ProcessCommandLine) | summarize Count = count(), SampleCommandLine = any(ProcessCommandLine) by Cmdlet | order by Count desc
Correct
2
72.13s
0.0162