mirror of
https://github.com/DeusData/codebase-memory-mcp.git
synced 2026-10-25 06:33:13 +08:00
TDD: 31 security tests covering shell injection prevention, SQLite authorizer (ATTACH/DETACH blocked), SQL injection via Cypher, path containment, and shell-free subprocess execution. - Add cbm_exec_no_shell() in compat_fs: fork+execvp (POSIX), _spawnvp (Windows) — executes commands without shell interpretation - Replace system() with cbm_exec_no_shell() for unzip extraction and version verification in update command — eliminates CodeQL command-line-injection alerts - CodeQL: switch to build-mode manual for 100% source file coverage - CodeQL gate: fix race condition between scan completion and alert API propagation (60s settle + double-check polling) - Dismiss TOCTOU in pass_envscan.c (benign read-only directory walk)
33 lines
794 B
YAML
33 lines
794 B
YAML
name: CodeQL SAST
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
|
|
permissions:
|
|
security-events: write
|
|
contents: read
|
|
|
|
jobs:
|
|
analyze:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
|
|
- name: Install build dependencies
|
|
run: sudo apt-get update && sudo apt-get install -y zlib1g-dev
|
|
|
|
- name: Initialize CodeQL
|
|
uses: github/codeql-action/init@38697555549f1db7851b81482ff19f1fa5c4fedc # v4
|
|
with:
|
|
languages: c-cpp
|
|
build-mode: manual
|
|
|
|
- name: Build for CodeQL analysis
|
|
run: scripts/build.sh
|
|
|
|
- name: Perform CodeQL Analysis
|
|
uses: github/codeql-action/analyze@38697555549f1db7851b81482ff19f1fa5c4fedc # v4
|
|
with:
|
|
category: "/language:c-cpp"
|