Conversation
…el to comply with react hook rules
|
I don't understand the need to add the Trivvy security action, especially since its a very unknown security workflow that I dont trust. Dependabot is already in use, as you im sure have seen, as you added the action. Also, why did you change the pr check action to use ubuntu-latest instead of the blacksmith runner? As far as I'm concerned, this can be closed as it being unneccessairy. |
|
Given that the project doesn't use any kind of security checks I wanted to contribute and make this more transparent. The dependencies in the codebase had multiple vulnerabilities which Trivy can help make visible and I have used this feedback to update the affected dependencies.
|
|
What do you mean this project does not use any security checks? https://github.com/Termix-SSH/Termix/blob/main/.github/dependabot.yml
As I mentioned before, Dependabot is in use and is by far the more popular and well-trusted source. |
|
Sorry, then I might have overlooked that. It might be good to have a second opinion though, as I'm not sure which databases Dependabot uses to claim vulnerabilities. Anyway, if you don't want to merge the sec-check, at least take a look at the pr-check fix. |
|
The changes to the PR linter look good to me. it may be best if the linter stays on node 20 since that's what the rest of Termix is compiled to, but it does not really matter. If you update or re-submit this PR without the security linter added, I will merge it. |
|
If you're ready to accept this branch merge, I can audit and clean it up once. Let me know anytime if you need it. @LukeGus |
Hi @LukeGus, @muchasxmaracas, I'm a homelab user who recently deployed Termix in a test environment to evaluate it as an SSH management platform. I came across this PR and the discussion here, and I wanted to share my perspective as someone in the target audience for this project. First — Termix is an impressive project with a lot of potential, and I appreciate the work that's gone into it. However, after reviewing this PR conversation alongside the two published security advisories (CVE-2025-59951 and the stored XSS/LFI), I've decided to uninstall Termix from my environment. My concern isn't with any single issue — it's with the overall approach to security contributions. A few observations:
For a tool that stores SSH credentials and provides terminal access to infrastructure, defence in depth isn't optional — it's expected. I'd respectfully recommend:
I hope this feedback is useful. I'd genuinely like to see Termix succeed — it fills a real gap in the self-hosted space. But I can't deploy a credentials management tool where security contributions are treated as unnecessary. Thanks for your time. |
|
I think @jnctech is right as it benefit in long term as it grows trust and community adoption. |
|
@jnctech Thank you for your perspective and verbalizing what I couldn't. I have only installed Termix locally but I could already tell that's it's a really cool project and I want it to succeed as well, hence my PR. Given my years of professional experience in the DevOps area, creating opinionated CI/CD templates and more for hundreds of engineers in my company which relies on security checks due to regulations I felt like this project could benefit a lot from my contributions. I don't have much experience contributing to open-source projects but after receiving such an adversarial reaction to a well-meant contribution, my desire to contribute more has honestly vanished. If you or anybody else has recommendations to other projects which appreciate security and CI/CD PRs, I'll gladly look into it. |
|
Following up on my earlier comment about defence in depth — I want to address this with more nuance, because the security landscape has shifted since this PR was opened. The Trivy supply chain compromise (March 19-20, 2026) is directly relevant here. An attacker compromised Trivy's release pipeline and distributed credential-stealing malware through This doesn't invalidate the case for vulnerability scanning — it strengthens it. The incident is a textbook example of why defence in depth matters. Any single tool can be compromised. What matters is layering controls so that a breach in one layer doesn't cascade. Dependabot alone is one layer. A vulnerability scanner is another. But both need to be consumed safely. I've been hardening our own CI/CD pipelines in response to this incident, and I'd offer these concrete recommendations for Termix — whether Trivy or another scanner is adopted: 1. SHA-pin all action references (CRITICAL)Every workflow in this repo uses mutable tags ( Current (vulnerable to tag rewriting): - uses: actions/checkout@v5Hardened (immutable, auditable): - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.2.2This applies to 2. Restrict workflow permissions (HIGH)None of the four workflows declare a permissions: {}
jobs:
build:
permissions:
contents: readThe 3. Disable credential persistence on checkout (HIGH)
- uses: actions/checkout@<sha>
with:
persist-credentials: false4. On the scanner itselfI still support including vulnerability scanning in the pipeline — that position hasn't changed. Whether it's Trivy (pinned to For a project that stores SSH credentials, the attack surface justifies more than one layer of automated scanning. The Trivy incident doesn't argue against scanning — it argues for consuming all CI dependencies (scanners included) with proper integrity controls. 5. Quick wins for this repo
I've built a reusable CI/CD supply chain review template based on the Trivy incident that covers all of the above with severity-rated checklists, remediation examples, and an incident response playbook — happy to share it. |
|
Sorry, been extremely busy the past few weeks, but now I'm able to discuss this issue. However, I'm still not sold on Trivvy, especially considering the previously mentioned supply chain attack. However, that does not mean I'm not open to adding a form of repository-wide scanning or PR-checks. I just need to do some research into it to figure out the right path to go down. |
|
oh, this sure has aged well |
What I'd like to seeI genuinely want Termix to succeed — it fills a real gap. But I think the project needs:
|
|
A few of these have already been answered. SAST: I use GitHub's new Code Quality feature, which auto-scans using AI and CodeQL |
|
I'll get to this PR later and make sure it better meets our current needs. |
|
In fact, we were almost ready to approve this PR, but the Trivy poisoning incident had such a significant impact that we need to spend more time evaluating it. |

Overview
[ ✅ ] Added:
Trivy dependency vulnerability scan ->
.github/workflows/sec-check.yml[ ✅] Updated:
eslint.config.jsto align local linting with linting in CI jobUpdated all npm dependencies and pinned two transient dependencies with HIGH + MEDIUM vulnerabilities
[ ✅] Fixed:
PR Check job
Changes Made
Related Issues
Screenshots / Demos
Checklist