Question 1,122 of 1,639
Perform threat huntingeasyMultiple ChoiceObjective-mapped

Quick Answer

The answer is the KQL query that uses `SigninLogs | where ResultType !in ('0', '50125') | summarize FailedAttempts = count(), DistinctUsers = dcount(UserPrincipalName) by IPAddress | where FailedAttempts > 10 and DistinctUsers > 5 | order by FailedAttempts desc`. This query is correct because it isolates failed sign-ins by excluding successful results (ResultType '0') and the benign error '50125', then summarizes the data by IP address to count both total failed attempts and the number of distinct user accounts targeted. For a brute-force across users attack, an IP must hit multiple accounts, so the `DistinctUsers > 5` filter is essential—without it, you could catch a single user being hammered, which is a different threat. On the SC-200 exam, this tests your ability to distinguish between a password spray (many users, few attempts each) and a traditional brute-force (few users, many attempts). A common trap is using `count()` alone, which misses the multi-user requirement. Memory tip: think "many IPs, many users, many fails" and remember to always exclude success codes when hunting for failures.

SC-200 Perform threat hunting Practice Question

This SC-200 practice question tests your understanding of perform threat hunting. Match the stated requirement to the specific cloud service, access model, or configuration option — many options are valid in isolation but not for this scenario. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

You are a security analyst at Wingtip Toys, a small business with 500 users. You have Microsoft 365 Business Premium licenses and Microsoft Sentinel deployed. You are conducting a threat hunt for signs of brute-force attacks against your Azure AD tenant. You want to identify IP addresses that have attempted multiple failed sign-ins across different user accounts within a short time window. You have access to the SigninLogs table in Microsoft Sentinel. Which KQL query should you use?

Question 1easymultiple choice
Full question →

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

SigninLogs | where ResultType !in ('0', '50125') | summarize FailedAttempts = count(), DistinctUsers = dcount(UserPrincipalName) by IPAddress | where FailedAttempts > 10 and DistinctUsers > 5 | order by FailedAttempts desc

Option A is correct because it summarizes failed sign-ins by IP and counts distinct users, filtering for IPs with many attempts across many users. Option B is wrong because it counts total attempts without requiring multiple users. Option C is wrong because it only returns the top IP. Option D is wrong because it counts success, not failures.

Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • SigninLogs | where ResultType != 0 | summarize FailedAttempts = count() by IPAddress | where FailedAttempts > 10

    Why it's wrong here

    This does not ensure attempts are against multiple users; could be a single user.

  • SigninLogs | where ResultType !in ('0', '50125') | summarize FailedAttempts = count(), DistinctUsers = dcount(UserPrincipalName) by IPAddress | where FailedAttempts > 10 and DistinctUsers > 5 | order by FailedAttempts desc

    Why this is correct

    This identifies IPs with many failed attempts across multiple users, indicative of brute-force.

    Related concept

    Read the scenario before looking for a memorised answer.

  • SigninLogs | where ResultType != 0 | top 10 by IPAddress

    Why it's wrong here

    Top 10 by IP does not consider failed attempts count.

  • SigninLogs | where ResultType == 0 | summarize SuccessAttempts = count() by IPAddress | order by SuccessAttempts desc

    Why it's wrong here

    This focuses on successful logins, not brute-force attempts.

Common exam traps

Common exam trap: answer the scenario, not the keyword

Many certification questions include familiar terms but test a specific constraint. Read the exact wording before choosing an answer that is generally true but wrong for this case.

Detailed technical explanation

How to think about this question

This question should be treated as a scenario, not a definition check. Identify the problem, the constraint and the best action. Then compare each option against those facts.

KKey Concepts to Remember

  • Read the scenario before looking for a memorised answer.
  • Find the constraint that changes the correct option.
  • Eliminate answers that are true in general but not in this case.
  • Use explanations to understand the rule behind the answer.

TExam Day Tips

  • Underline the problem statement mentally.
  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Key takeaway

Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Real-world example

How this comes up in practice

A company's IT admin needs to give a contractor read-only access to production logs without sharing account credentials. Using role-based access control (RBAC) and temporary scoped permissions — not a permanent shared password — is the correct pattern. Questions like this test whether you can apply least-privilege access across cloud identity services.

What to study next

Got this wrong? Here's your next step.

Identify which SC-200 exam domain this question belongs to, then review the specific concept being tested. Practise related questions in that domain and focus on understanding why each wrong answer is tempting — not just why the correct answer is right.

Related practice questions

Related SC-200 practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Practice this exam

Start a free SC-200 practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this SC-200 question test?

Perform threat hunting — This question tests Perform threat hunting — Read the scenario before looking for a memorised answer..

What is the correct answer to this question?

The correct answer is: SigninLogs | where ResultType !in ('0', '50125') | summarize FailedAttempts = count(), DistinctUsers = dcount(UserPrincipalName) by IPAddress | where FailedAttempts > 10 and DistinctUsers > 5 | order by FailedAttempts desc — Option A is correct because it summarizes failed sign-ins by IP and counts distinct users, filtering for IPs with many attempts across many users. Option B is wrong because it counts total attempts without requiring multiple users. Option C is wrong because it only returns the top IP. Option D is wrong because it counts success, not failures.

What should I do if I get this SC-200 question wrong?

Identify which SC-200 exam domain this question belongs to, then review the specific concept being tested. Practise related questions in that domain and focus on understanding why each wrong answer is tempting — not just why the correct answer is right.

What is the key concept behind this question?

Read the scenario before looking for a memorised answer.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more ways this is tested on SC-200

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. You are investigating a potential brute-force attack against Microsoft 365. Which KQL query in Microsoft Sentinel would best identify failed logon attempts from a single IP address across multiple users?

medium
  • A.SigninLogs | summarize dcount(IPAddress) by UserId | where dcount_ > 10
  • B.SigninLogs | summarize count() by UserId | where count_ > 10
  • C.SigninLogs | summarize count() by IPAddress | where count_ > 10
  • D.SigninLogs | summarize dcount(UserId) by IPAddress | where dcount_ > 10

Why D: Option A is correct because it counts distinct UserId per IP and filters for high counts. Option B is wrong because it counts total attempts, not distinct users. Option C is wrong because it groups by UserId, not IP. Option D is wrong because it counts distinct IPs per user, the opposite of what is needed.

Last reviewed: Jun 21, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This SC-200 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SC-200 exam.