azure-monitor-opentelemetry-exporter-py
Verdict safe, but 2 findings (2 medium), mainly data exfiltration. Most recent scan 2026-02-05.
This skill is a documentation wrapper for the official Azure Monitor OpenTelemetry Exporter Python package. The primary security concerns are MEDIUM severity and relate to data exfiltration risks inherent to telemetry export functionality: (1) code examples that could encourage hardcoding sensitive connection strings, and (2) transmission of potentially sensitive application data to external Azure endpoints. The skill itself contains no executable scripts and serves as an instructional guide. The missing optional metadata fields and unpinned package version are LOW severity informational issues. The referenced Python files are external package modules, which is expected. Overall, this skill presents moderate security considerations primarily around credential management and data sensitivity awareness, but does not contain malicious code or direct security vulnerabilities. Users should be aware they are installing and trusting an external PyPI package and transmitting telemetry data to Microsoft Azure infrastructure.
Scanner's overall assessment (LLM analyzer)
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
Azure Monitor OpenTelemetry Exporter for Python. Use for low-level OpenTelemetry export to Application Insights. Triggers: "azure-monitor-opentelemetry-exporter", "AzureMonitorTraceExporter", "AzureMonitorMetricExporter", "AzureMonitorLogExporter".
- Package
- 2 files, 14 KB
- SKILL.md
- 516 words, 12+ sections
- Code
- None. Instructions only.
SKILL.md covers: Azure Monitor OpenTelemetry Exporter for Python · Installation · Environment Variables · When to Use · Trace Exporter · Create exporter · Configure tracer provider · Use tracer · Metric Exporter · Create exporter · Configure meter provider · Use meter
Findings
MEDIUM Hardcoded Connection String with Instrumentation Key in Examples Data Exfiltrationllm
The skill documentation contains multiple code examples with placeholder connection strings that include 'InstrumentationKey=xxx'. While these are examples, they demonstrate a pattern of hardcoding sensitive credentials directly in code rather than exclusively using environment variables. This could encourage users to hardcode actual connection strings containing sensitive instrumentation keys, leading to credential exposure if code is committed to version control or shared.
connection_string="InstrumentationKey=xxx;..." appears in multiple code examples throughout the documentationMEDIUM Network Data Transmission to External Azure Endpoints Data Exfiltrationllm
The skill facilitates transmission of telemetry data (traces, metrics, logs) to external Azure Application Insights endpoints (IngestionEndpoint=https://xxx.in.applicationinsights.azure.com/). While this is the intended functionality, the skill collects and transmits potentially sensitive application data including logs, traces, and metrics to external Microsoft-controlled infrastructure. Users may inadvertently export sensitive information, credentials, or proprietary data through logging statements or trace attributes without proper data sanitization.
APPLICATIONINSIGHTS_CONNECTION_STRING=InstrumentationKey=xxx;IngestionEndpoint=https://xxx.in.applicationinsights.azure.com/ - All exporters send data to external Azure endpointsWhat is in the package
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 6.2 KB |
references/acceptance-criteria.md | doc | 7.4 KB |
External hosts referenced
github.com xxx.in.applicationinsights.azure.com xxx.in.applicationinsights.azure.us
Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.
Package contents recorded 2026-10-22 at commit cfbcbbdc679c. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Llm analyzer. A language model reads the skill and reports intent-level issues the rules cannot express.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
- Meta analyzer. A second model pass that validates, deduplicates and re-scores the other analyzers' findings.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Sources
- Repository: https://github.com/microsoft/agent-skills
- Raw scan result: github-skills-azure-monitor-opentelemetry-exporter-py-scan.json
- Badge for your README:
 - Request a re-scan