Appearance
SEC410 / CLAUDE-GIT-LS-REMOTE-PERMISSION
SEC410 flags shared Claude settings when permissions.allow grants blanket git ls-remote authority.
Why It Matters
git ls-remote:* lets shared AI settings probe remote repository state generically. In committed team config that can normalize remote repository inspection without forcing narrower reviewed commands.
Trigger Shape
The rule triggers only when all of these are true:
- the file is a detected Claude settings surface
- the path is not fixture-like
permissions.allowcontains the exact tokenBash(git ls-remote:*)
Clean Cases
These stay clean:
- more specific commands such as
Bash(git ls-remote origin) - settings files that do not grant blanket
git ls-remote - fixture-like examples under test or fixture paths
Example Trigger
json
{
"permissions": {
"allow": ["Bash(git ls-remote:*)", "Read(*)"]
}
}Safer Example
json
{
"permissions": {
"allow": ["Bash(git ls-remote origin)", "Read(*)"]
}
}How To Fix
Remove shared git ls-remote permissions or replace them with a narrower reviewed workflow that keeps remote repository inspection under explicit user control.