Skip to content

[spark-compete] fix: add timeout to icacls subprocess in _ensure_windows_file_permissions#912

Open
Esc1200 wants to merge 1 commit into
vibeforge1111:masterfrom
Esc1200:fix/icacls-timeout
Open

[spark-compete] fix: add timeout to icacls subprocess in _ensure_windows_file_permissions#912
Esc1200 wants to merge 1 commit into
vibeforge1111:masterfrom
Esc1200:fix/icacls-timeout

Conversation

@Esc1200
Copy link
Copy Markdown

@Esc1200 Esc1200 commented Jun 4, 2026

Security Vulnerability Report

Team name: Bug Hunters
Team member(s): Esc1200
Severity Level: LOW

Vulnerability Description

The icacls subprocess.run() call in _ensure_windows_file_permissions() (cli.py:1092) lacked a timeout parameter. On Windows, a hanging icacls process would block the function indefinitely, preventing the caller from proceeding.

Fix Description

Added timeout=30 to the subprocess.run() call. 30 seconds is generous for a local permission-setting command.

Affected Files

  • src/spark_cli/cli.py

Trust Boundary Impact

Input trust boundary: N/A — this is an internal permission-setting utility.

Output trust boundary: N/A — the function already catches OSError.

Security Design Statement

All subprocess calls should have bounded execution time. This fix ensures the icacls call cannot hang indefinitely.


{
  "schema_version": "2.0",
  "pr": {
    "url": "https://github.com/vibeforge1111/spark-cli/pull/901",
    "body_must_include": ["Bug Hunters", "Esc1200"]
  }
}

The icacls subprocess.run() call in _ensure_windows_file_permissions()
lacked a timeout parameter. A hanging icacls process would block
indefinitely. Added timeout=30.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant