Agent skill

Detecting Entra Offensive Tools In Graph Logs

by mukul975 in mukul975/Anthropic-Cybersecurity-Skills

Hunt AADGraphActivityLogs and MicrosoftGraphActivityLogs in Microsoft Sentinel/Log Analytics using KQL to fingerprint offensive Entra ID enumeration tools such as ROADtools, AADInternals, and…

Apache-2.0Auto-check passedSecurity

Install Detecting Entra Offensive Tools In Graph Logs

skills CLI
$ npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-entra-offensive-tools-in-graph-logs -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mukul975/Anthropic-Cybersecurity-Skills detecting-entra-offensive-tools-in-graph-logs --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mukul975/Anthropic-Cybersecurity-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/detecting-entra-offensive-tools-in-graph-logs .claude/skills/detecting-entra-offensive-tools-in-graph-logs && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
detecting-entra-offensive-tools-in-graph-logs
GitHub stars
34k
Token cost
~2.8k tokens
SKILL.md length
864 words
Files
5 (incl. scripts, references)
Skills in repo
644
Repo updated
First seen
Licence
Apache-2.0

At a glance

Hunt AADGraphActivityLogs and MicrosoftGraphActivityLogs in Microsoft Sentinel/Log Analytics using KQL to fingerprint offensive Entra ID enumeration tools such as ROADtools, AADInternals, and…

  • Works in 7 steps: Confirm both tables are ingesting → Hunt User-Agent fingerprints (ROADtools… → Hunt AADInternals and AzureHound agents → …
  • Investigating suspicious Microsoft Graph API activity
  • SKILL.md covers Overview, When to Use, Prerequisites and Objectives, plus 5 more sections
  • Runs Python scripts from its folder; calls az

What it does

Detecting Entra Offensive Tools In Graph Logs is an agent skill from mukul975/Anthropic-Cybersecurity-Skills. Hunt AADGraphActivityLogs and MicrosoftGraphActivityLogs in Microsoft Sentinel/Log Analytics using KQL to fingerprint offensive Entra ID enumeration tools such as ROADtools, AADInternals, and AzureHound, including User-Agent signatures, roadrecon endpoint sweeps, and sign-in correlation. Use when investigating suspicious Microsoft Graph API activity, Entra ID reconnaissance, or building Sentinel analytics rules to detect these tools.

Its SKILL.md is about 2.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts and reference files (for example `references/api-reference.md`, `references/standards.md` and `scripts/agent.py`).

It sits in Security. It works with Microsoft Sentinel, Microsoft Entra ID and Microsoft 365. The repository describes itself as: 817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF & MITRE F3 (Fight Fraud) · agentskills.io…. The licence is Apache-2.0.

When your agent uses it

  • Investigating suspicious Microsoft Graph API activity
  • Entra ID reconnaissance
  • Building Sentinel analytics rules to detect these tools

Example prompts

  • “/detecting-entra-offensive-tools-in-graph-logs”

Requirements

  • Python 3

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Confirm both tables are ingesting
  2. Hunt User-Agent fingerprints (ROADtools / aiohttp)
  3. Hunt AADInternals and AzureHound agents
  4. Behavioral hunt — the roadrecon endpoint sweep (spoof-resistant)
  5. High-volume enumeration outliers
  6. Correlate Graph activity to the originating sign-in
  7. Operationalize as analytics rules

What it can do on your machine

Read from SKILL.md and the folder at commit 54a7988. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • az

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • learn.microsoft.com
    • invictus-ir.com
    • cloudbrothers.info
    • github.com
    • attack.mitre.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Detecting Entra Offensive Tools In Graph Logs loads about 2.8k tokens when it runs, and up to ~3.8k if it reads all its reference files. Until then it costs about 121 tokens; SKILL.md has 864 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~121
When it runs · the whole SKILL.md, loaded when a task matches
~2.8k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from mukul975/Anthropic-Cybersecurity-Skills at commit 54a7988, republished under its Apache-2.0 licence (© mukul975). 864 words, ~2,781 tokens.

Download SKILL.mdSave it as .claude/skills/detecting-entra-offensive-tools-in-graph-logs/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
detecting-entra-offensive-tools-in-graph-logs
description
Hunt AADGraphActivityLogs and MicrosoftGraphActivityLogs in Microsoft Sentinel/Log Analytics using KQL to fingerprint offensive Entra ID enumeration tools such as ROADtools, AADInternals, and AzureHound, including User-Agent signatures, roadrecon endpoint sweeps, and sign-in correlation. Use when investigating suspicious Microsoft Graph API activity, Entra ID reconnaissance, or building Sentinel analytics rules to detect these tools.
domain
cybersecurity
subdomain
soc-operations
tags
threat-hunting, entra-id, microsoft-graph, kql, sentinel, roadtools, aadinternals, detection-engineering
version
1.0
author
mahipal
license
Apache-2.0
nist_csf
DE.CM-09
mitre_attack
T1078.004

Detecting Entra Offensive Tools in Graph Logs

Overview

For nearly a decade the legacy Azure AD Graph API (graph.windows.net) was a defender blind spot: requests to it produced no first-class activity log, so tools like ROADtools (roadrecon) and AADInternals — which lean heavily on AAD Graph — could enumerate an entire tenant with little trace. That changed when Microsoft shipped AADGraphActivityLogs (general availability in 2026), the counterpart to the already-available MicrosoftGraphActivityLogs (graph.microsoft.com). Together these two tables give SOCs request-level visibility into directory API traffic: the caller identity, app, source IP, HTTP method, request URI, and crucially the User-Agent.

This skill is the defensive complement to offensive Entra tooling. It hunts the two Graph activity tables for the behavioral and string fingerprints those tools leave behind. Many operators forget to spoof the User-Agent, so ROADtools (built on Python's aiohttp) emits a User-Agent like Python/3.12 aiohttp/3.10.4, and AADInternals frequently leaves AADInternals or library strings in the agent. Even when the agent is spoofed, the tools betray themselves through a characteristic endpoint-sweep pattern: roadrecon gather pulls users, groups, applications, serviceprincipals, devices, directoryroles, roledefinitions, oauth2permissiongrants, and more within a tight time window — a signature that survives header spoofing.

The activity being detected maps to MITRE ATT&CK T1078.004 – Valid Accounts: Cloud Accounts: an adversary using legitimate (often phished or token-stolen) cloud credentials to enumerate and operate against the tenant via the Graph APIs. These detections both surface live intrusions and validate that the offensive techniques in the companion red-team skills are observable.

When to Use

  • Building or tuning detections for Microsoft Sentinel / Log Analytics covering Entra ID
  • Threat hunting after suspected credential theft, device-code phishing, or OAuth consent abuse
  • Purple-team exercises validating that ROADtools/AADInternals/AzureHound activity is detectable
  • Investigating an alert and needing to correlate Graph API calls back to a sign-in/session
  • Closing the legacy Azure AD Graph visibility gap after enabling AADGraphActivityLogs

Prerequisites

  • A Microsoft Sentinel workspace (or Log Analytics) ingesting:
    • MicrosoftGraphActivityLogs (diagnostic setting on Microsoft Entra ID -> graph.microsoft.com)
    • AADGraphActivityLogs (diagnostic setting on Microsoft Entra ID -> legacy Azure AD Graph)
  • SigninLogs and AADNonInteractiveUserSignInLogs for correlation
  • Microsoft Sentinel Reader/Responder (or Log Analytics Reader) RBAC to run KQL
  • Familiarity with Kusto Query Language (KQL)
  • Enable the diagnostic settings (Azure Portal -> Microsoft Entra ID -> Diagnostic settings -> send MicrosoftGraphActivityLogs and AADGraphActivityLogs to your workspace), or via CLI:
    bash
    az monitor diagnostic-settings create \
      --name "entra-graph-logs" \
      --resource "/providers/microsoft.aadiam/diagnosticSettings" \
      --logs '[{"category":"MicrosoftGraphActivityLogs","enabled":true},{"category":"AADGraphActivityLogs","enabled":true}]' \
      --workspace "<log-analytics-workspace-id>"

Objectives

  • Confirm both Graph activity tables are flowing into the workspace
  • Detect User-Agent string fingerprints of ROADtools, AADInternals, and AzureHound
  • Detect the endpoint-sweep behavioral fingerprint that survives User-Agent spoofing
  • Correlate suspicious Graph activity back to a sign-in/session and source identity
  • Operationalize the best queries as scheduled analytics rules

MITRE ATT&CK Mapping

IDTechniqueApplication in this skill
T1078.004Valid Accounts: Cloud AccountsDetecting adversaries using valid cloud credentials/tokens to enumerate the tenant via the Microsoft Graph and legacy Azure AD Graph APIs

Related techniques surfaced by these hunts: T1087.004 Account Discovery: Cloud Account, T1069.003 Permission Groups Discovery: Cloud Groups, T1526 Cloud Service Discovery.

Workflow

Step 1: Confirm both tables are ingesting

Before hunting, verify the data exists and inspect the schema fields you will pivot on.

kusto
union withsource=Tbl MicrosoftGraphActivityLogs, AADGraphActivityLogs
| where TimeGenerated > ago(1d)
| summarize Records=count(), LastSeen=max(TimeGenerated) by Tbl
Step 2: Hunt User-Agent fingerprints (ROADtools / aiohttp)

ROADtools uses aiohttp; an un-spoofed run shows python + aiohttp in the User-Agent.

kusto
AADGraphActivityLogs
| where TimeGenerated > ago(7d)
| where RequestMethod == "GET"
| where UserAgent contains "python" and UserAgent contains "aiohttp"
| summarize RequestCount = count() by CallerIpAddress, AppId, UserAgent, UserId
| sort by RequestCount desc
Show full SKILL.md (343 more words)Show less
Step 3: Hunt AADInternals and AzureHound agents

AADInternals leaves toolkit/library strings; AzureHound's Go HTTP client and BloodHound tooling have distinctive agents.

kusto
union MicrosoftGraphActivityLogs, AADGraphActivityLogs
| where TimeGenerated > ago(7d)
| where UserAgent has_any ("AADInternals", "aad-internals", "azurehound",
                           "BloodHound", "python-requests", "Go-http-client")
| project TimeGenerated, UserAgent, CallerIpAddress, AppId, UserId, RequestUri
| sort by TimeGenerated desc
Step 4: Behavioral hunt — the roadrecon endpoint sweep (spoof-resistant)

Even with a spoofed agent, roadrecon gather touches a recognizable set of directory resources in a short window. Bucket by user and 5 minutes; alert when one identity hits the full sweep.

kusto
AADGraphActivityLogs
| where TimeGenerated > ago(1d)
| where RequestMethod == "GET"
| extend TopLevelResource = tolower(tostring(split(split(RequestUri, "?")[0], "/")[3]))
| summarize
    TopLevelResources = make_set(TopLevelResource),
    AppIds = make_set(AppId),
    CallerIPs = make_set(CallerIpAddress),
    UserAgents = make_set(UserAgent),
    StartTime = min(TimeGenerated),
    EndTime = max(TimeGenerated)
    by UserId, bin(TimeGenerated, 5m)
| where TopLevelResources has_all ("users", "tenantdetails", "groups", "applications",
    "serviceprincipals", "devices", "directoryroles", "roledefinitions", "contacts",
    "oauth2permissiongrants", "authorizationpolicy")
| project StartTime, EndTime, UserId, AppIds, CallerIPs, UserAgents
Step 5: High-volume enumeration outliers

Catch tooling that simply makes far more directory reads than a human in a short window.

kusto
MicrosoftGraphActivityLogs
| where TimeGenerated > ago(1d)
| where RequestMethod == "GET"
| where RequestUri has_any ("/users", "/groups", "/servicePrincipals", "/applications",
                            "/directoryRoles", "/roleManagement")
| summarize Reads=count(), Resources=dcount(RequestUri) by UserId, AppId, CallerIpAddress, bin(TimeGenerated, 10m)
| where Reads > 200
| sort by Reads desc
Step 6: Correlate Graph activity to the originating sign-in

Pivot a suspicious Graph caller back to the sign-in to recover device, location, MFA, and conditional-access result. Note the SignInActivityId in AADGraphActivityLogs may carry == padding versus SigninLogs.UniqueTokenIdentifier.

kusto
AADGraphActivityLogs
| where TimeGenerated > ago(1d)
| where UserAgent contains "aiohttp"
| extend TokenId = trim_end("=", tostring(SignInActivityId))
| join kind=leftouter (
    SigninLogs
    | extend TokenId = tostring(UniqueTokenIdentifier)
    | project TokenId, UserPrincipalName, IPAddress, AppDisplayName, ConditionalAccessStatus, DeviceDetail
) on TokenId
| project TimeGenerated, UserId, UserPrincipalName, CallerIpAddress, IPAddress,
          AppDisplayName, ConditionalAccessStatus, UserAgent
Step 7: Operationalize as analytics rules

Promote the highest-fidelity queries (Steps 2-4) to scheduled analytics rules. Set a query period/frequency (e.g., run every 1h over 1d), map the rule to T1078.004, and configure entity mappings (Account = UserId, IP = CallerIpAddress, Host/App = AppId) so incidents enrich automatically. Tune out known automation/service-principal App IDs and approved scanner IPs via a watchlist before enabling.

Tools and Resources

ResourcePurposeSource
AADGraphActivityLogs referenceSchema and field meaninghttps://learn.microsoft.com/entra/identity/monitoring-health/concept-aad-graph-activity-logs
MicrosoftGraphActivityLogsGraph API activity schemahttps://learn.microsoft.com/graph/microsoft-graph-activity-logs-overview
Invictus-IR writeupAADGraphActivityLogs hunting querieshttps://www.invictus-ir.com/news/the-missing-link-aadgraphactivitylogs-finally-arrives
Cloudbrothers analysisBehavioral fingerprinting of ROADtoolshttps://cloudbrothers.info/en/aadgraphactivitylogs/
ROADtoolsThe offensive tool being detectedhttps://github.com/dirkjanm/ROADtools
MITRE T1078.004Valid Accounts: Cloud Accountshttps://attack.mitre.org/techniques/T1078/004/

Detection Fingerprint Reference

ToolPrimary fingerprintTable
ROADtools (roadrecon)python + aiohttp UA; full directory endpoint sweep in 5 minAADGraphActivityLogs
AADInternalsAADInternals / toolkit strings in UA; AAD Graph readsAADGraphActivityLogs
AzureHoundGo HTTP client UA; broad MS Graph enumerationMicrosoftGraphActivityLogs
Generic reconHigh GET volume across users/groups/apps/SPs in short windowboth

Validation Criteria

  • Both MicrosoftGraphActivityLogs and AADGraphActivityLogs confirmed ingesting
  • User-Agent fingerprint hunt for ROADtools/aiohttp executed
  • AADInternals/AzureHound agent hunt executed
  • Behavioral endpoint-sweep hunt executed and tuned for false positives
  • High-volume enumeration outlier query executed
  • At least one finding correlated back to a sign-in/session and source identity
  • Best queries promoted to scheduled analytics rules with T1078.004 mapping and entity mappings
  • Known-good service principals/IPs excluded via watchlist to control false positives

© mukul975, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (scripts, references) in skills/detecting-entra-offensive-tools-in-graph-logs of mukul975/Anthropic-Cybersecurity-Skills.

  • SKILL.md
  • LICENSE
  • references/api-reference.md
  • references/standards.md
  • scripts/agent.py

Open the folder on GitHubat commit 54a7988

Compare with similar skills

Detecting Entra Offensive Tools In Graph Logs next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Detecting Entra Offensive Tools In Graph Logs compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Detecting Entra Offensive Tools In Graph Logs this skillmukul975/Anthropic-Cybersecurity-Skills34k—~2.8kAutomated safety check: PassApache-2.0
Defender Xdrvinayaklatthe/microsoft-security-skills175—~2.1kAutomated safety check: PassMIT
App Registration PostureSCStelz/security-investigator249—~21kAutomated safety check: PassMIT
Sentinelvinayaklatthe/microsoft-security-skills175—~2.2kAutomated safety check: PassMIT
CLI Microsoft365pnp/cli-microsoft365-mcp-server132—~3.5kAutomated safety check: PassMIT
CLI Microsoft365 Scriptpnp/cli-microsoft365-mcp-server132—~3.3kAutomated safety check: PassMIT

Similar skills

  • Defender Xdr

    vinayaklatthe/microsoft-security-skills

    Guidance for Microsoft Defender XDR — the unified extended detection and response suite that correlates signals across endpoints, identities, email, and cloud apps into prioritised incidents with…

    175 GitHub stars~2.1k tokensUpdated 3 mo ago
    Backend & APIsAuto-check passed
  • App Registration Posture

    SCStelz/security-investigator

    Audit Entra ID app registration and service principal security posture.

    249 GitHub stars~21k tokensUpdated 2 days ago
    SecurityAuto-check passed
  • Sentinel

    vinayaklatthe/microsoft-security-skills

    Guidance for designing and operating Microsoft Sentinel, the cloud-native SIEM and SOAR delivered through the Defender portal.

    175 GitHub stars~2.2k tokensUpdated 3 mo ago
    SecurityAuto-check passed
  • CLI Microsoft365

    pnp/cli-microsoft365-mcp-server

    Use CLI for Microsoft 365 to manage Microsoft 365 tenants from the terminal.

    132 GitHub stars~3.5k tokensUpdated 5 days ago
    Documents & OfficeAuto-check passed
  • CLI Microsoft365 Script

    pnp/cli-microsoft365-mcp-server

    Write PowerShell scripts using CLI for Microsoft 365 commands to automate Microsoft 365 management tasks.

    132 GitHub stars~3.3k tokensUpdated 5 days ago
    Documents & OfficeAuto-check passed
  • Entra Agent Id

    microsoft/GitHub-Copilot-for-Azure

    Official

    Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant)…

    255 GitHub starsUsed in 2 repos~4k tokens
    Backend & APIsAuto-check passed

More from mukul975/Anthropic-Cybersecurity-Skills

All 644 skills in this repo
  • Campaign Attribution Evidence Analysis

    mukul975/Anthropic-Cybersecurity-Skills

    Weighs infrastructure, TTP, malware code and timing evidence with the Diamond Model and competing hypotheses to reach a confidence-rated attribution.

    34k GitHub stars~2.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Go Malware Analysis in Ghidra

    mukul975/Anthropic-Cybersecurity-Skills

    Walks through reverse engineering Go-compiled malware in Ghidra: parsing buildinfo and pclntab, recovering stripped function names and extracting dependencies.

    34k GitHub stars~2.8k tokensUpdated 1 mo ago
    Auto-check passed
  • LNK and Jump List Forensics

    mukul975/Anthropic-Cybersecurity-Skills

    Guides forensic analysis of Windows LNK shortcut files and Jump Lists with LECmd, JLECmd and manual parsing to show file access and program execution.

    34k GitHub stars~2.8k tokensUpdated 1 mo ago
    Auto-check passed
  • Malware Persistence Analysis with Autoruns

    mukul975/Anthropic-Cybersecurity-Skills

    Hunts Windows malware persistence with Sysinternals Autoruns, covering run keys, services, scheduled tasks and drivers, with baseline comparison.

    34k GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • NTFS MFT Deleted File Recovery

    mukul975/Anthropic-Cybersecurity-Skills

    Guides a Windows forensic examination of the NTFS Master File Table to recover deleted-file evidence, build timelines and spot timestomping.

    34k GitHub stars~2.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Network Covert Channel Analysis

    mukul975/Anthropic-Cybersecurity-Skills

    Detects DNS tunneling, ICMP exfiltration and HTTP-based covert channels in packet captures and DNS logs when hunting for hidden command-and-control traffic.

    34k GitHub stars~2k tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Detecting Entra Offensive Tools In Graph Logs

What does Detecting Entra Offensive Tools In Graph Logs do?

Hunt AADGraphActivityLogs and MicrosoftGraphActivityLogs in Microsoft Sentinel/Log Analytics using KQL to fingerprint offensive Entra ID enumeration tools such as ROADtools, AADInternals, and…. Detecting Entra Offensive Tools In Graph Logs is an agent skill from mukul975/Anthropic-Cybersecurity-Skills. Hunt AADGraphActivityLogs and MicrosoftGraphActivityLogs in Microsoft Sentinel/Log Analytics using KQL to fingerprint offensive Entra ID enumeration tools such as ROADtools, AADInternals, and AzureHound, including User-Agent signatures, roadrecon endpoint sweeps, and sign-in correlation.

When should I use Detecting Entra Offensive Tools In Graph Logs?

Detecting Entra Offensive Tools In Graph Logs fits situations like: investigating suspicious Microsoft Graph API activity; entra ID reconnaissance; building Sentinel analytics rules to detect these tools.

How do I install Detecting Entra Offensive Tools In Graph Logs in Claude Code?

Run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-entra-offensive-tools-in-graph-logs -a claude-code`. Or copy the skill folder (skills/detecting-entra-offensive-tools-in-graph-logs in mukul975/Anthropic-Cybersecurity-Skills) into .claude/skills/detecting-entra-offensive-tools-in-graph-logs in your project. Claude Code loads it when a task matches its description.

How do I install Detecting Entra Offensive Tools In Graph Logs in Codex?

Run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-entra-offensive-tools-in-graph-logs -a codex`. Or copy the skill folder (skills/detecting-entra-offensive-tools-in-graph-logs in mukul975/Anthropic-Cybersecurity-Skills) into .agents/skills/detecting-entra-offensive-tools-in-graph-logs in your project. Codex loads it when a task matches its description.

Can I use Detecting Entra Offensive Tools In Graph Logs in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-entra-offensive-tools-in-graph-logs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/detecting-entra-offensive-tools-in-graph-logs, .gemini/skills/detecting-entra-offensive-tools-in-graph-logs, .github/skills/detecting-entra-offensive-tools-in-graph-logs and .opencode/skills/detecting-entra-offensive-tools-in-graph-logs in your project.

What does Detecting Entra Offensive Tools In Graph Logs need to run?

Going by SKILL.md and its folder, Detecting Entra Offensive Tools In Graph Logs needs Python for the scripts in its folder and the command-line tools its instructions call (az). Our summary lists: Python 3.

Does Detecting Entra Offensive Tools In Graph Logs access the network?

SKILL.md names 5 domains. As links in the text: learn.microsoft.com, invictus-ir.com, cloudbrothers.info, github.com and attack.mitre.org. This is read from the text; nothing was executed.

Is Detecting Entra Offensive Tools In Graph Logs safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Detecting Entra Offensive Tools In Graph Logs use?

Detecting Entra Offensive Tools In Graph Logs is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Detecting Entra Offensive Tools In Graph Logs use?

About 2.8k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 970 tokens, read only when the agent opens those files.

What are the alternatives to Detecting Entra Offensive Tools In Graph Logs?

Skills that share tags, products or a category with Detecting Entra Offensive Tools In Graph Logs: Defender Xdr (vinayaklatthe/microsoft-security-skills, 175 stars), App Registration Posture (SCStelz/security-investigator, 249 stars), Sentinel (vinayaklatthe/microsoft-security-skills, 175 stars) and CLI Microsoft365 (pnp/cli-microsoft365-mcp-server, 132 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Detecting Entra Offensive Tools In Graph Logs?

mukul975 (a GitHub user) maintains it in mukul975/Anthropic-Cybersecurity-Skills, which has 34,116 GitHub stars. The repository holds 644 skills in this directory. The repository was last updated on August 31, 2026.

Source: mukul975/Anthropic-Cybersecurity-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.