Repository navigation
Releases: sandeepannandi/Cipher
Releases · sandeepannandi/Cipher
Release list
v1.0.2
The Linux binaries are now built on Ubuntu 22.04, so they no longer need glibc 2.39 (v1.0.1 did not start on systems older than Ubuntu 24.04). Windows and macOS binaries and SHA256SUMS.txt are included as before; install.sh and install.ps1 verify the checksum before installing.
What's Changed
- README: point at v1.0.1, note the glibc requirement by @sandeepannandi in #181
- Release 1.0.2: build Linux binaries on Ubuntu 22.04 by @sandeepannandi in #182
Full Changelog: v1.0.1...v1.0.2
v1.0.1
First release since 1.0.0. Binaries for Linux, macOS and Windows, plus SHA256SUMS.txt, which install.sh and install.ps1 verify before installing. 1.0.0 has no checksum file, so the installers refuse it.
Includes the Windows PowerShell installer and the scanner changes listed in CHANGELOG.md under 1.0.1.
What's Changed
- Add reproducible build and accuracy benchmark by @sandeepannandi in #1
- Keep benchmark fixtures out of PR security summary by @sandeepannandi in #2
- Baseline Rust formatting by @sandeepannandi in #4
- Baseline strict Clippy fixes by @sandeepannandi in #5
- Add standard CI quality gate by @sandeepannandi in #3
- Add realistic corpus benchmark baseline and workflow validation by @sandeepannandi in #6
- feat: add stable finding schema and SARIF output by @sandeepannandi in #7
- Add doctor diagnostics and config checks by @sandeepannandi in #8
- Verify fix-loop remediation gates by @sandeepannandi in #9
- Harden live-pentest target scope and network safety by @sandeepannandi in #10
- fix(ci): bound Chrome launch retries and fail fast on early exit by @sandeepannandi in #11
- feat: guided
cipher-ai setupand secret-handling hardening by @sandeepannandi in #12 - feat: checksum-verified installer and release SHA256SUMS by @sandeepannandi in #13
- Fix JWT secret classification precision by @sandeepannandi in #14
- Fix command injection precision and Java coverage by @sandeepannandi in #15
- Detect Java MessageDigest MD5 weak hash by @sandeepannandi in #16
- ci: publish Cipher SARIF to GitHub Code Scanning by @sandeepannandi in #17
- feat: add repository policy controls by @sandeepannandi in #18
- ci: export policy baseline migration artifact by @sandeepannandi in #19
- ci: enforce repository security policy by @sandeepannandi in #20
- Trace local JavaScript path traversal data flow by @sandeepannandi in #21
- benchmark: support project-level accuracy cases by @sandeepannandi in #22
- benchmark: add pinned MIT real-project corpus by @sandeepannandi in #23
- benchmark: add deterministic real-project mutations by @sandeepannandi in #24
- benchmark: report separate accuracy gates by @sandeepannandi in #25
- fix: detect Python MD5 callable aliases by @sandeepannandi in #26
- feat: add narrow Python path data-flow detection by @sandeepannandi in #27
- feat: add narrow Java path data-flow detection by @sandeepannandi in #28
- feat: add narrow Go path data-flow detection by @sandeepannandi in #29
- Make policy fingerprints position-independent by @sandeepannandi in #30
- Add GitHub Actions workflow security checks by @sandeepannandi in #31
- Pin third-party workflow actions to commit SHAs by @sandeepannandi in #32
- Add Dependabot config for GitHub Actions by @sandeepannandi in #33
- ci: bump the github-actions group with 5 updates by @dependabot[bot] in #34
- Add same-file SQL injection data flow (JS/TS, Python, Java, Go) by @sandeepannandi in #35
- Add same-file command injection data flow (JS/TS, Python, Java, Go) by @sandeepannandi in #36
- Add SSRF rule and same-file data flow (JS/TS, Python, Java, Go) by @sandeepannandi in #37
- Follow same-file function calls in request data flow (JS/TS, Python, Java, Go) by @sandeepannandi in #38
- Cross-file data flow for JS/TS and Python (phase 2) by @sandeepannandi in #39
- Cross-file data flow for Java and Go by @sandeepannandi in #40
- Cross-file import resolution for Java and Go by @sandeepannandi in #41
- Add same-file and cross-file data flow for Rust by @sandeepannandi in #42
- Add Spring MVC and Gin/Echo framework sources to data flow by @sandeepannandi in #43
- Parse multi-line Java signatures; seed only annotated Spring params by @sandeepannandi in #44
- Resolve grouped Rust use imports in cross-file data flow by @sandeepannandi in #45
- Resolve JS/TS default exports in cross-file data flow by @sandeepannandi in #46
- Cross-file data flow: resolve JS/TS re-exports through one barrel hop by @sandeepannandi in #47
- Cross-file data flow: resolve Rust pub use re-exports through one hop by @sandeepannandi in #48
- Cross-file data flow: resolve nested Rust module path calls by @sandeepannandi in #49
- Ignore Python benchmark artifacts by @sandeepannandi in #50
- Cross-file data flow: resolve chained re-exports through a bounded fixpoint by @sandeepannandi in #51
- Cross-file data flow: track call chains across two import hops by @sandeepannandi in #52
- Cross-file data flow: converge the import-hop fixpoint by @sandeepannandi in #53
- Cross-file data flow: converge the re-export and summary fixpoints by @sandeepannandi in #54
- Cross-file data flow: resolve nested Rust module paths of any depth by @sandeepannandi in #55
- Cross-file data flow: resolve nested Rust use groups by @sandeepannandi in #56
- Cross-file data flow: resolve JS calls through instance variables by @sandeepannandi in #57
- Cross-file data flow: resolve Python calls through instance variables by @sandeepannandi in #58
- Cross-file data flow: resolve multi-line Rust use trees by @sandeepannandi in #59
- Resolve JS instance-variable calls through ESM class imports by @sandeepannandi in #60
- Resolve multi-line JS import, require, and re-export declarations by @sandeepannandi in #61
- Resolve parenthesized Python from-imports by @sandeepannandi in #62
- Add cross-file resolution cases to the accuracy corpus by @sandeepannandi in #63
- Resolve JS namespace re-exports (export * as ns from './x') by @sandeepannandi in #64
- Fix review panic on Java imports resolving outside the project by @sandeepannandi in #65
- Resolve Python star imports (from .x import *) by @sandeepannandi in #66
- Resolve Go dot imports (import . "pkg") by @sandeepannandi in #67
- Resolve Rust super::super use paths by @sandeepannandi in #68
- Widen taint sources: request headers/cookies/json/data (py, js) and getQueryString (java) by @sandeepannandi in #69
- Recognize more sanitizers: Double/Float.parse, annotated Rust parse, pathlib .name by @sandeepannandi in #70
- See request reads wrapped in calls as taint sources (str/String/valueOf) by @sandeepannandi in #71
- Catch request reads embedded in f-strings, templates, and concatenation by @sandeepannandi in #72
- Seed Flask route captures and Django view kwargs as taint sources by @sandeepannandi in #73
- Catch request reads embedded in Go/Rust format strings and concatenation by @sandeepannandi in #74
- Add release-profile CI tests, portable policy fingerprints, and a local policy-gate precheck by @sandeepannandi in #75
- Resolve node_modules package imports and Go test files in cross-file data flow by @sandeepannandi in https://github.com/san...
v1.0.0
Full Changelog: https://github.com/sandeepannandi/Cipher/commits/v1.0.0