Six Degrees of Domain Admin
This report summarizes scanner evidence for SpecterOps/BloodHound, a Go project with 3,483 GitHub stars. SynthScan examined 551,306 lines of code across 3556 source files, recording 3493 pattern matches distributed across 11 syntactic categories. The legacy adjusted pattern signal is 6.5 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 3462 finding(s).
Are imports declared and package/API names verified? 31 finding(s).
Are wrappers, guards, and repeated structures necessary? 31 finding(s).
Which changes need focused human review? 3493 finding(s).
Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 3493 distinct pattern matches across 11 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | parca.yaml | 1 | # Copyright 2024 Specter Ops, Inc. | COMMENT |
| LOW | parca.yaml | 21 | directory: "./data" | COMMENT |
| LOW | parca.yaml | 41 | # pprof_config: | COMMENT |
| LOW | .mockery.yml | 1 | # Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | .yarnrc.yml | 1 | # Copyright 2025 Specter Ops, Inc. | COMMENT |
| LOW | pyproject.toml | 1 | # Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | .grype.yaml | 1 | # Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | docker-compose.dev.yml | 1 | # Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | docker-compose.watch.yml | 1 | # Copyright 2024 Specter Ops, Inc. | COMMENT |
| LOW | .custom-gcl.yml | 1 | # Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | .air.toml | 1 | # Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | .air.debug.toml | 1 | # Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | .dora.yaml | 1 | # Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | .coderabbit.yaml | 1 | # Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | docker-compose.testing.yml | 1 | # Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/playwright.a11y.config.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/playwright.a11y.config.ts | 81 | ...devices['Desktop Chrome'], | COMMENT |
| LOW | cmd/ui/tailwind.config.js | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/vite.config.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/postcss.config.js | 1 | // Copyright 2025 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/global.setup.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/login.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/api-explore.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/download-collectors.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/PrivilegeZones/history.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/PrivilegeZones/labels.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/PrivilegeZones/zones.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Shared/date-range.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …s/a11y/Shared/simple-environment-selector.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Shared/quick-upload.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Shared/no-data-dialog.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Shared/nav.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Explore/cypher.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Explore/search.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Explore/pathfinding.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …tests/a11y/Explore/explore-graph-controls.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …d/ui/tests/a11y/Explore/entity-info-panel.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/tests/a11y/Profile/profile.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …/ui/tests/a11y/Administration/file-ingest.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …ui/tests/a11y/Administration/data-quality.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …sts/a11y/Administration/sso-configuration.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …s/a11y/Administration/database-management.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …y/Administration/bloodhound-configuration.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …ui/tests/a11y/Administration/manage-users.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | …a11y/Administration/early-access-features.a11y.spec.ts | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/public/mockServiceWorker.js | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/App.tsx | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/store.test.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/main.tsx | 1 | // Copyright 2026 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/utils.test.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/App.test.tsx | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/test-utils.tsx | 1 | // Copyright 2024 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/setupTests.tsx | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/utils.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/rootSaga.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/vite-env.d.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/queryClient.ts | 1 | // Copyright 2025 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/modules.d.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/store.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| LOW | cmd/ui/src/ducks/index.ts | 1 | // Copyright 2023 Specter Ops, Inc. | COMMENT |
| 3333 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | packages/go/analysis/agt_test.go | 55 | seedObjectId, _ = testContext.Harness.GPOEnforcement.OrganizationalUnitC.Properties.Get(common.ObjectID.String()).Stri | CODE |
| CRITICAL | packages/go/analysis/agt_test.go | 117 | seedObjectId, _ = testContext.Harness.MembershipHarness.GroupB.Properties.Get(common.ObjectID.String()).String() | CODE |
| CRITICAL | packages/go/analysis/agt_test.go | 137 | seedObjectId, _ = testContext.Harness.AZGroupMembership.Group.Properties.Get(common.ObjectID.String()).String() | CODE |
| CRITICAL | packages/go/analysis/agt_test.go | 157 | seedObjectId, _ = testContext.Harness.OUHarness.OUA.Properties.Get(common.ObjectID.String()).String() | CODE |
| CRITICAL | packages/go/analysis/agt_test.go | 177 | seedObjectId, _ = testContext.Harness.OUHarness.OUA.Properties.Get(common.ObjectID.String()).String() | CODE |
| CRITICAL | packages/go/analysis/agt_test.go | 205 | userCObjectId, _ = testContext.Harness.GPOEnforcement.UserC.Properties.Get(common.ObjectID.String()).String() | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 33 | def create_creation_statement(self): | CODE |
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 38 | def create_creation_statement(self): | CODE |
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 43 | def create_creation_statement(self): | CODE |
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 52 | def create_creation_statement(self): | CODE |
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 61 | def create_creation_statement(self): | CODE |
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 66 | def create_creation_statement(self): | CODE |
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 71 | def create_creation_statement(self): | CODE |
| LOW⚡ | cmd/api/src/test/integration/harnesses/harnessgen.py | 76 | def create_creation_statement(self): | CODE |
| LOW | cmd/api/src/test/integration/harnesses/harnessgen.py | 127 | def create_creation_statement(self): | CODE |
| LOW | cmd/api/src/test/integration/harnesses/harnessgen.py | 138 | def create_creation_statement(self): | CODE |
| LOW | cmd/api/src/test/integration/harnesses/harnessgen.py | 143 | def create_creation_statement(self): | CODE |
| LOW | packages/javascript/bh-playwright-testing/src/axe.ts | 315 | export async function expectNoAccessibilityViolations( | CODE |
| LOW | packages/javascript/bh-playwright-testing/src/axe.ts | 361 | async function attachViolationScreenshots( | CODE |
| LOW | …t/doodle-ui/src/components/Stepper/Stepper.stories.tsx | 282 | function DisabledNavigationStepper({ steps, onValueChange, ...props }: ComponentProps<typeof BasicStepper>) { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 37 | export function ActiveDirectoryNodeKindToDisplay(value: ActiveDirectoryNodeKind): string | undefined { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 172 | export function ActiveDirectoryRelationshipKindToDisplay(value: ActiveDirectoryRelationshipKind): string | undefined { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 523 | export function ActiveDirectoryKindPropertiesToDisplay(value: ActiveDirectoryKindProperties): string | undefined { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 819 | export function ActiveDirectoryPathfindingEdges(): ActiveDirectoryRelationshipKind[] { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 888 | export function ActiveDirectoryPathfindingEdgesMatchFrontend(): ActiveDirectoryRelationshipKind[] { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 1077 | export function AzureRelationshipKindToDisplay(value: AzureRelationshipKind): string | undefined { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 1230 | export function AzureKindPropertiesToDisplay(value: AzureKindProperties): string | undefined { | CODE |
| LOW | packages/javascript/bh-shared-ui/src/graphSchema.ts | 1403 | export function CommonKindPropertiesToDisplay(value: CommonKindProperties): string | undefined { | CODE |
| LOW | …vascript/bh-shared-ui/src/utils/formValidationRules.ts | 27 | function rejectSurroundingWhitespace(label: string) { | CODE |
| LOW | …ages/javascript/bh-shared-ui/src/utils/environments.ts | 87 | export function filterAndSearchEnvironments( | CODE |
| LOW | …ages/javascript/bh-shared-ui/src/utils/environments.ts | 163 | export function getOpenGraphEnvironmentInfo( | CODE |
| LOW | …ages/javascript/bh-shared-ui/src/utils/environments.ts | 190 | export function getOpenGraphEnvironmentInfoMap(environments: Environment[] = []) { | CODE |
| LOW | …/bh-shared-ui/src/utils/adaptClickHandlerToKeyDown.tsx | 25 | export function adaptClickHandlerToKeyDown(handler?: KeyboardEventHandler<HTMLElement>) { | CODE |
| LOW | …script/bh-shared-ui/src/components/MarkdownContent.tsx | 151 | export default function ErrorBoundaryWrappedMarkdown({ | CODE |
| LOW | …s/javascript/bh-shared-ui/src/hooks/useLocalStorage.ts | 32 | function getLocalStorageServerSnapshot(): never { | CODE |
| LOW | …ctInfoPanelProvider/ObjectInfoPanelContextProvider.tsx | 22 | export function ObjectInfoPanelContextProvider({ children }: ObjectInfoPanelContextProviderProps) { | CODE |
| LOW | …ders/ObjectInfoPanelProvider/ObjectInfoPanelContext.ts | 27 | export function useObjectInfoPanelContext() { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/docs/design/audit/migration-procedure.md | 75 | ### Step 1: Rename Existing Table | COMMENT |
| LOW | server/docs/design/audit/migration-procedure.md | 81 | ### Step 2: Create Partitioned Table | COMMENT |
| LOW | server/docs/design/audit/migration-procedure.md | 107 | ### Step 3: Re-point Sequence | COMMENT |
| LOW | server/docs/design/audit/migration-procedure.md | 115 | ### Step 4: Declare Indexes on Parent | COMMENT |
| LOW | server/docs/design/audit/migration-procedure.md | 126 | ### Step 5: Pre-create Partitions | COMMENT |
| LOW | server/docs/design/audit/migration-procedure.md | 169 | ### Step 6: Backfill Data | COMMENT |
| LOW | server/docs/design/audit/migration-procedure.md | 194 | ### Step 7: Verify Backfill | COMMENT |
| LOW | server/docs/design/audit/migration-procedure.md | 202 | ### Step 8: Drop Legacy Table | COMMENT |
| LOW | packages/go/analysis/azure/post.go | 977 | // Step 0: Identify each AZTenant labeled node in the database. | COMMENT |
| LOW⚡ | packages/go/analysis/azure/role_approver.go | 72 | // Step 1: Kind = AZRole and tenantId matches the current tenant's objectid | COMMENT |
| LOW⚡ | packages/go/analysis/azure/role_approver.go | 75 | // Step 2: isApprovalRequired == true (role requires approval for assignment) | COMMENT |
| LOW⚡ | packages/go/analysis/azure/role_approver.go | 80 | // Step 2: primaryApprovers (user or group) is not null - at least one approver type configured | COMMENT |
| LOW | packages/go/analysis/azure/role_approver.go | 97 | // Step 3: Process each qualifying AZRole to create appropriate AZRoleApprover edges | COMMENT |
| LOW | packages/go/stbernard/dora/collector.go | 196 | // Step 1: Fetch all tags (paginated) | COMMENT |
| LOW⚡ | packages/go/stbernard/dora/collector.go | 226 | // Step 2: Build map of SHA -> tag names (many tags can point to same commit) | COMMENT |
| LOW⚡ | packages/go/stbernard/dora/collector.go | 233 | // Step 3: Fetch commit timestamps concurrently with errgroup | COMMENT |
| LOW | packages/go/stbernard/dora/collector.go | 276 | // Step 4: Build final result | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/api/src/database/assetgrouphistory_test.go | 37 | EmailAddress: null.StringFrom("user@example.com"), | CODE |
| LOW | cmd/api/src/database/assetgrouphistory_test.go | 77 | EmailAddress: null.StringFrom("user@example.com"), | CODE |
| LOW | cmd/api/src/bootstrap/server_test.go | 65 | EmailAddress: "test@test.com", | CODE |
| LOW | cmd/api/src/config/default.go | 34 | EmailAddress: "admin@example.com", | CODE |
| LOW | cmd/api/src/api/v2/edge_test.go | 505 | body: `{"errors":[{"context":"","message":"Invalid value for endID: lorem ipsum"}],"http_status":400,"request_id": | CODE |
| LOW | …/src/services/graphify/endpoint/fetch_internal_test.go | 93 | {Key: "email", Operator: ein.OperatorEqualsIgnoreCase, Value: "user@example.com"}, | CODE |
| LOW | examples/docker-compose/bloodhound.config.json | 19 | "email_address": "admin@example.com" | CODE |
| LOW | examples/helm/templates/cmbh.yaml | 43 | "email_address": "admin@example.com" | CODE |
| LOW | …ipt/doodle-ui/src/components/Pagination/Pagination.tsx | 91 | placeholder?: SelectValueProps['placeholder']; | CODE |
| LOW | …t/doodle-ui/src/components/Tooltip/Tooltip.stories.tsx | 68 | tooltip: `Lorem ipsum dolor sit amet consectetur adipisicing elit. Repudiandae voluptate assumenda eius ipsum ab | CODE |
| LOW | …t/doodle-ui/src/components/Tooltip/Tooltip.stories.tsx | 68 | tooltip: `Lorem ipsum dolor sit amet consectetur adipisicing elit. Repudiandae voluptate assumenda eius ipsum ab | CODE |
| LOW⚡ | …odle-ui/src/components/Accordion/Accordion.stories.tsx | 39 | <p className='mb-2'>Lorem ipsum dolor sit amet.</p> | CODE |
| LOW⚡ | …odle-ui/src/components/Accordion/Accordion.stories.tsx | 39 | <p className='mb-2'>Lorem ipsum dolor sit amet.</p> | CODE |
| LOW⚡ | …odle-ui/src/components/Accordion/Accordion.stories.tsx | 49 | <p className='mb-2'>Lorem ipsum dolor sit amet.</p> | CODE |
| LOW⚡ | …odle-ui/src/components/Accordion/Accordion.stories.tsx | 49 | <p className='mb-2'>Lorem ipsum dolor sit amet.</p> | CODE |
| LOW⚡ | …odle-ui/src/components/Accordion/Accordion.stories.tsx | 59 | <p className='mb-2'>Lorem ipsum dolor sit amet.</p> | CODE |
| LOW⚡ | …odle-ui/src/components/Accordion/Accordion.stories.tsx | 59 | <p className='mb-2'>Lorem ipsum dolor sit amet.</p> | CODE |
| LOW | …le-ui/src/components/ScrollArea/ScrollArea.stories.tsx | 21 | `v1.2.0-beta.${a.length - i} Lorem ipsum, dolor sit amet consectetur adipisicing elit. Libero quo voluptas quia | CODE |
| LOW | …le-ui/src/components/ScrollArea/ScrollArea.stories.tsx | 21 | `v1.2.0-beta.${a.length - i} Lorem ipsum, dolor sit amet consectetur adipisicing elit. Libero quo voluptas quia | CODE |
| LOW | …ipt/doodle-ui/src/components/Dialog/Dialog.stories.tsx | 157 | 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna | CODE |
| LOW | …ipt/doodle-ui/src/components/Dialog/Dialog.stories.tsx | 157 | 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna | CODE |
| LOW | …-shared-ui/src/components/LoginForm/LoginForm.test.tsx | 39 | const testEmailAddress = 'user@example.com'; | CODE |
| LOW | …ared-ui/src/views/PrivilegeZones/History/utils.test.ts | 52 | const filters = { ...baseFilters, madeBy: 'user@example.com' }; | CODE |
| LOW | …eSearch/SavedQueries/ConfirmUpdateQueryDialog.test.tsx | 21 | const testDialogContent = 'lorem ipsum'; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | cmd/api/src/api/middleware/auth.go | 56 | // the scheme of the Authorization header is interpreted next to identify which authorization method to utilize. | COMMENT |
| MEDIUM | packages/go/analysis/post/post_integration_test.go | 54 | // will utilize the test context to put the data directly into the graph. | COMMENT |
| MEDIUM | packages/go/stbernard/dora/types.go | 82 | MedianRCsPerRelease float64 `db:"median_rcs_per_release"` // Median RCs (more robust) | CODE |
| MEDIUM | packages/go/stbernard/dora/calculator.go | 396 | // Median RCs per release (more robust to outliers) | COMMENT |
| MEDIUM | packages/go/stbernard/dora/calculator.go | 415 | // Median stabilization commits (more robust to outliers) | COMMENT |
| MEDIUM | …es/javascript/doodle-ui/src/components/Badge/Badge.tsx | 150 | // badge-icon does not have actual properties, if you want to leverage it, you would have to target | COMMENT |
| MEDIUM | packages/javascript/bh-shared-ui/src/constants.ts | 445 | // Defaults all MUI components that leverage the Modal construct to portal to a child of the applicationContainer el | COMMENT |
| MEDIUM | …components/EntityInfo/EntityInfoCollapsibleSection.tsx | 24 | //TODO: Once azure backend changes for counts param are in, utilize response error details | COMMENT |
| MEDIUM | …rc/components/HelpTexts/SpoofSIDHistory/References.tsx | 33 | href='https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc755321(v= | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packages/go/analysis/azure/post.go | 977 | // Step 0: Identify each AZTenant labeled node in the database. | COMMENT |
| LOW⚡ | packages/go/analysis/azure/role_approver.go | 72 | // Step 1: Kind = AZRole and tenantId matches the current tenant's objectid | COMMENT |
| LOW⚡ | packages/go/analysis/azure/role_approver.go | 75 | // Step 2: isApprovalRequired == true (role requires approval for assignment) | COMMENT |
| LOW⚡ | packages/go/analysis/azure/role_approver.go | 80 | // Step 2: primaryApprovers (user or group) is not null - at least one approver type configured | COMMENT |
| LOW | packages/go/analysis/azure/role_approver.go | 97 | // Step 3: Process each qualifying AZRole to create appropriate AZRoleApprover edges | COMMENT |
| LOW | packages/go/stbernard/dora/collector.go | 196 | // Step 1: Fetch all tags (paginated) | COMMENT |
| LOW⚡ | packages/go/stbernard/dora/collector.go | 226 | // Step 2: Build map of SHA -> tag names (many tags can point to same commit) | COMMENT |
| LOW⚡ | packages/go/stbernard/dora/collector.go | 233 | // Step 3: Fetch commit timestamps concurrently with errgroup | COMMENT |
| LOW | packages/go/stbernard/dora/collector.go | 276 | // Step 4: Build final result | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ui/src/components/HelpTexts/DumpSMSAPassword/Abuse.tsx | 52 | print(nt_hash)`} | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packages/go/openapi/doc/openapi.json | 15 | "description": "This is the API that drives BloodHound Enterprise and Community Edition.\nEndpoint availability is d | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/ui/public/mockServiceWorker.js | 155 | async function handleRequest(event, requestId) { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/api/src/test/integration/harnesses/harnessgen.py | 100 | CODE |