Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Shells Virtual Desktop
BMail.ag - Secure Email Service
Server.net
CPLicense.net
VPS Server
Buy VPN
Vultr
VMs for AI
HostDare
ReliableSite White-Label Dedicated Hosting for Resellers
InterServer VPS
BMail.ag - Secure Email Service
Best VPN
High-Performance Bare Metal Server Solutions
Karvl.com
Server Mania Cloud Hosting
DataWagon Hosting
AlphaVPS Hosting
Evoxt.com
Clouvider
VPS Hosting with NVMe
Residential IPs in the US & 4G Mobile Proxies in EU & US with Unlimited Bandwidth
ReliableSite White-Label Dedicated Hosting for Resellers
Rabisu - Hosting Solutions
Shells Virtual Desktop
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Marix open source desktop SSH client for developers and sysadmins

12345679»

Comments

  • @forest said:

    @doghouch said:

    @marix said:

    @NotFoundException said:
    This conversation really was going in circles.

    Looking at it from a developer perspective, I instantly found a vector to do a XSS-Attack. Also why are there exposed Google OAuth credentials? ^^

    If you’ve identified a concrete XSS vector, please provide the exact file, code path, and a reproducible payload so it can be reviewed properly.

    Regarding Google OAuth: the repository contains a public OAuth Client ID, not a client secret. Client IDs are intentionally public by design and do not grant access to user data on their own. No OAuth client secrets are exposed.

    If you believe otherwise, please point to the specific credential and explain the impact.

    DM'ed.

    You probably shouldn't be reporting bugs to him. He seems to think that his application is secure unless someone has pointed out a specific bug. I've already found almost half a dozen severe security issues, but if I were to report them, then he'd think his application is secure again and would never learn.

    Meh. I'd like to be a good netizen. I also found a number of issues, but haven't had time to send them over.

    On another note:

    https://github.com/marixdev/marix/commit/162706aec409c3c5fa524fba1e43662f29d2b2e7

    https://github.com/marixdev/marix/blob/68754becb375004dcb0b105d90b1580109a977ee/dist/main/services/google-credentials.json

    ?????

  • @Levi said:
    You LMM still replying...

    Corrected.
    Reguards

    Thanked by 1Levi
  • marixmarix Member

    @doghouch said:

    @forest said:

    @doghouch said:

    @marix said:

    @NotFoundException said:
    This conversation really was going in circles.

    Looking at it from a developer perspective, I instantly found a vector to do a XSS-Attack. Also why are there exposed Google OAuth credentials? ^^

    If you’ve identified a concrete XSS vector, please provide the exact file, code path, and a reproducible payload so it can be reviewed properly.

    Regarding Google OAuth: the repository contains a public OAuth Client ID, not a client secret. Client IDs are intentionally public by design and do not grant access to user data on their own. No OAuth client secrets are exposed.

    If you believe otherwise, please point to the specific credential and explain the impact.

    DM'ed.

    You probably shouldn't be reporting bugs to him. He seems to think that his application is secure unless someone has pointed out a specific bug. I've already found almost half a dozen severe security issues, but if I were to report them, then he'd think his application is secure again and would never learn.

    Meh. I'd like to be a good netizen. I also found a number of issues, but haven't had time to send them over.

    On another note:

    https://github.com/marixdev/marix/commit/162706aec409c3c5fa524fba1e43662f29d2b2e7

    https://github.com/marixdev/marix/blob/68754becb375004dcb0b105d90b1580109a977ee/dist/main/services/google-credentials.json

    ?????

    To clarify:
    This was present in older commits / artifacts.
    Starting from v1.0.16, credentials are no longer committed or bundled.
    All provider credentials are now injected at build time via GitHub Actions secrets, not stored in the repo or dist output.
    The exposed credentials have been fully rotated and revoked.
    The current release pipeline does not ship any embedded OAuth secrets.
    Thanks for pointing this out — fixes like this are exactly the kind of concrete feedback that helps improve the project.

  • doghouchdoghouch Member
    edited January 26

    @marix said:

    @doghouch said:

    @forest said:

    @doghouch said:

    @marix said:

    @NotFoundException said:
    This conversation really was going in circles.

    Looking at it from a developer perspective, I instantly found a vector to do a XSS-Attack. Also why are there exposed Google OAuth credentials? ^^

    If you’ve identified a concrete XSS vector, please provide the exact file, code path, and a reproducible payload so it can be reviewed properly.

    Regarding Google OAuth: the repository contains a public OAuth Client ID, not a client secret. Client IDs are intentionally public by design and do not grant access to user data on their own. No OAuth client secrets are exposed.

    If you believe otherwise, please point to the specific credential and explain the impact.

    DM'ed.

    You probably shouldn't be reporting bugs to him. He seems to think that his application is secure unless someone has pointed out a specific bug. I've already found almost half a dozen severe security issues, but if I were to report them, then he'd think his application is secure again and would never learn.

    Meh. I'd like to be a good netizen. I also found a number of issues, but haven't had time to send them over.

    On another note:

    https://github.com/marixdev/marix/commit/162706aec409c3c5fa524fba1e43662f29d2b2e7

    https://github.com/marixdev/marix/blob/68754becb375004dcb0b105d90b1580109a977ee/dist/main/services/google-credentials.json

    ?????

    To clarify:
    This was present in older commits / artifacts.
    Starting from v1.0.16, credentials are no longer committed or bundled.
    All provider credentials are now injected at build time via GitHub Actions secrets, not stored in the repo or dist output.
    The exposed credentials have been fully rotated and revoked.
    The current release pipeline does not ship any embedded OAuth secrets.
    Thanks for pointing this out — fixes like this are exactly the kind of concrete feedback that helps improve the project.

    Question: why are you pushing dist/ every release w/ JS? It seems unnecessary considering they're all auto-generated by the TS transpiler, and no contributions there will make it back to the TS source.

    Edit #2: I can't force you, but if "open source" is so important to you/the project, why aren't branches and smaller (scoped) changes being used?

  • marixmarix Member

    @doghouch said:

    @marix said:

    @doghouch said:

    @forest said:

    @doghouch said:

    @marix said:

    @NotFoundException said:
    This conversation really was going in circles.

    Looking at it from a developer perspective, I instantly found a vector to do a XSS-Attack. Also why are there exposed Google OAuth credentials? ^^

    If you’ve identified a concrete XSS vector, please provide the exact file, code path, and a reproducible payload so it can be reviewed properly.

    Regarding Google OAuth: the repository contains a public OAuth Client ID, not a client secret. Client IDs are intentionally public by design and do not grant access to user data on their own. No OAuth client secrets are exposed.

    If you believe otherwise, please point to the specific credential and explain the impact.

    DM'ed.

    You probably shouldn't be reporting bugs to him. He seems to think that his application is secure unless someone has pointed out a specific bug. I've already found almost half a dozen severe security issues, but if I were to report them, then he'd think his application is secure again and would never learn.

    Meh. I'd like to be a good netizen. I also found a number of issues, but haven't had time to send them over.

    On another note:

    https://github.com/marixdev/marix/commit/162706aec409c3c5fa524fba1e43662f29d2b2e7

    https://github.com/marixdev/marix/blob/68754becb375004dcb0b105d90b1580109a977ee/dist/main/services/google-credentials.json

    ?????

    To clarify:
    This was present in older commits / artifacts.
    Starting from v1.0.16, credentials are no longer committed or bundled.
    All provider credentials are now injected at build time via GitHub Actions secrets, not stored in the repo or dist output.
    The exposed credentials have been fully rotated and revoked.
    The current release pipeline does not ship any embedded OAuth secrets.
    Thanks for pointing this out — fixes like this are exactly the kind of concrete feedback that helps improve the project.

    Question: why are you pushing dist/ every release w/ JS? It seems unnecessary considering they're all auto-generated by the TS transpiler, and no contributions there will make it back to the TS source.

    Edit #2: I can't force you, but if "open source" is so important to you/the project, why aren't branches and smaller (scoped) changes being used?

    Good question.

    This is mostly historical. Early versions were built locally and dist/ was committed as part of the release process before CI/CD was in place.

    Starting from recent versions, builds are handled via GitHub Actions and dist/ is treated as a build artifact only. Going forward, dist/ will be excluded from commits and only source files will be tracked.

    Regarding branches: this has been a solo project so far, which is why changes landed directly on main. As the project stabilizes, I’m moving toward smaller, scoped changes and feature branches.

    Appreciate the concrete feedback.

  • doghouchdoghouch Member
    edited January 26

    @forest

    May God have mercy on our souls.

    console.warn('[NativeSSH] SSH not found in common paths, trying ssh.exe');
    

    ........well, there goes your SSH password.


    Edit: I have disrespected our Lord. Capitalised to "God."

    Thanked by 1forest
  • marixmarix Member

    @doghouch said:
    @forest

    May god have mercy on our souls.

    console.warn('[NativeSSH] SSH not found in common paths, trying ssh.exe');
    

    ........well, there goes your SSH password.

    This log line only indicates a fallback to an existing system OpenSSH binary (ssh.exe) when ssh is not found in common paths.

    No SSH credentials are intercepted, logged, or handled by the application.
    Password input is handled directly by the OpenSSH process itself, exactly the same as when you run ssh.exe from a terminal.

    If you believe credentials are exposed, please point to:

    • a stdin interception,
    • a credential logging code path,
    • or a network exfiltration mechanism.

    Absent that, this claim is technically incorrect.

  • forestforest Member
    edited January 26

    @ralf said: I bet you don't.

    I think I realize what's happening. He's not even reading the thread, even with translations. He probably doesn't even know we're bashing his project. He just sees a lot of replies and thinks he's really popular, so he keeps pasting them into the LLM blindly and posting its responses, equally ignorant of them.

    The poor LLM keeps saying it doesn't want to keep talking but marix keeps forcing it to reply.

    Thanked by 1doghouch
  • marixmarix Member

    To close this thread on my side:

    Marix is an open-source desktop SSH client, not a formally audited security product.
    It does not claim to provide threat models, formal security proofs, or third-party audits.

    Concrete issues that are actionable for me are:

    • a specific vulnerability,
    • a reproducible exploit,
    • or a clearly identified unsafe code path.

    General distrust, architectural disagreement, or hypothetical threat models without concrete findings are noted, but not something I can meaningfully act on.

    If anyone has concrete security findings, responsible disclosure channels remain available.
    Otherwise, I’m stepping back from further discussion here and focusing on development.

  • LeviLevi Member

    @marix said:
    To close this thread on my side:

    Marix is an open-source desktop SSH client, not a formally audited security product.
    It does not claim to provide threat models, formal security proofs, or third-party audits.

    Concrete issues that are actionable for me are:

    • a specific vulnerability,
    • a reproducible exploit,
    • or a clearly identified unsafe code path.

    General distrust, architectural disagreement, or hypothetical threat models without concrete findings are noted, but not something I can meaningfully act on.

    If anyone has concrete security findings, responsible disclosure channels remain available.
    Otherwise, I’m stepping back from further discussion here and focusing on development.

    No probs mate, just keep prompting.

  • doghouchdoghouch Member
    edited January 26

    @marix said:

    @doghouch said:
    @forest

    May god have mercy on our souls.

    console.warn('[NativeSSH] SSH not found in common paths, trying ssh.exe');
    

    ........well, there goes your SSH password.

    This log line only indicates a fallback to an existing system OpenSSH binary (ssh.exe) when ssh is not found in common paths.

    No SSH credentials are intercepted, logged, or handled by the application.
    Password input is handled directly by the OpenSSH process itself, exactly the same as when you run ssh.exe from a terminal.

    If you believe credentials are exposed, please point to:

    • a stdin interception,
    • a credential logging code path,
    • or a network exfiltration mechanism.

    Absent that, this claim is technically incorrect.

    Okay, I normally wouldn't do this, but:

    If another program wishes to listen to all of your SSH sessions, all it needs to do is add a fake ssh binary (no root needed). Even worse, if that binary (as is my case) proxies stdin/stdout to OpenSSH proper, then the user will never notice.

    Like, even if it's a fallback, you shouldn't ever resort to doing this.

    Thanked by 1forest
  • zedzed Member

    Whats your favorite flavor milkshake?

  • doghouchdoghouch Member
    edited January 26

    @zed said:
    Whats your favorite flavor milkshake?

    Strawberry! Sometimes I spice it up with banana as well.

    wbu?

    Thanked by 1forest
  • ralfralf Member

    @marix said:
    To close this thread on my side:

    Marix is an open-source desktop SSH client, not a formally audited security product.
    It does not claim to provide threat models, formal security proofs, or third-party audits.

    Concrete issues that are actionable for me are:

    • a specific vulnerability,
    • a reproducible exploit,
    • or a clearly identified unsafe code path.

    General distrust, architectural disagreement, or hypothetical threat models without concrete findings are noted, but not something I can meaningfully act on.

    If anyone has concrete security findings, responsible disclosure channels remain available.
    Otherwise, I’m stepping back from further discussion here and focusing on development.

    There is a serious problem with feline leakage in line 42.

  • marixmarix Member
    edited January 26

    I have spent an entire week listening and waiting for a concrete Technical Bug Report from this community.
    ​Here is the result:
    ​Two minor issues found: (Legacy credentials in old JSON & dist folder bloat) -> ✅ FIXED immediately.
    ​Noise: A flood of personal attacks, accusations of 'LLM-generated code', and nitpicking on the website UI (which is just a marketing wrapper).
    ​Critical Security Flaws: ZERO. Not a single critical vulnerability has been pointed out in the Core App source code.
    ​Conclusion:
    The fact that some of you have shifted from technical auditing to personal attacks and labeling proves one thing: The current version (v1.0.16) is technically solid enough that you have run out of valid things to criticize.
    ​My Stance on AI/LLM:
    I am a Pragmatic Developer. Whether this code was typed 100% by hand or assisted by tools like Copilot/AI, the only things that matter are:
    ​It Works.
    ​It is Secure (Argon2id + AES-256-GCM implemented correctly).
    ​It is Open Source (Fully auditable).
    ​And I take full ownership of every single line.
    ​I am ending this debate here to focus on shipping features for Real Users.
    ​If you find a bug: Open a GitHub Issue with a stack trace. I will fix it.
    ​If you only have insults or conspiracy theories: You will be ignored.
    ​Happy coding.

  • tfgp99tfgp99 Member
    edited January 26

    @marix said: I am a Pragmatic Developer. Whether this code was typed 100% by hand or assisted by tools like Copilot/AI, the only things that matter are:
    ​It Works.

    Bad, but "It Works."

    Reguards

  • marixmarix Member

    @ralf said:

    @marix said:
    To close this thread on my side:

    Marix is an open-source desktop SSH client, not a formally audited security product.
    It does not claim to provide threat models, formal security proofs, or third-party audits.

    Concrete issues that are actionable for me are:

    • a specific vulnerability,
    • a reproducible exploit,
    • or a clearly identified unsafe code path.

    General distrust, architectural disagreement, or hypothetical threat models without concrete findings are noted, but not something I can meaningfully act on.

    If anyone has concrete security findings, responsible disclosure channels remain available.
    Otherwise, I’m stepping back from further discussion here and focusing on development.

    There is a serious problem with feline leakage in line 42.

    Thanks for the report! I have fed the cat and cleaned up line 42. No more leakage. 🐱

  • @marix said: ​Critical Security Flaws: ZERO. Not a single critical vulnerability has been pointed out in the Core App source code.

    Haha, good one.

    @marix said: ​It is Secure (Argon2id + AES-256-GCM implemented correctly).

  • ralfralf Member

    @marix said:
    I have spent an entire week listening and waiting for a concrete Technical Bug Report from this community.
    ​Here is the result:
    ​Two minor issues found: (Legacy credentials in old JSON & dist folder bloat) -> ✅ FIXED immediately.
    ​Noise: A flood of personal attacks, accusations of 'LLM-generated code', and nitpicking on the website UI (which is just a marketing wrapper).
    ​Critical Security Flaws: ZERO. Not a single critical vulnerability has been pointed out in the Core App source code.
    ​Conclusion:
    The fact that some of you have shifted from technical auditing to personal attacks and labeling proves one thing: The current version (v1.0.16) is technically solid enough that you have run out of valid things to criticize.
    ​My Stance on AI/LLM:
    I am a Pragmatic Developer. Whether this code was typed 100% by hand or assisted by tools like Copilot/AI, the only things that matter are:
    ​It Works.
    ​It is Secure (Argon2id + AES-256-GCM implemented correctly).
    ​It is Open Source (Fully auditable).
    ​And I take full ownership of every single line.
    ​I am ending this debate here to focus on shipping features for Real Users.
    ​If you find a bug: Open a GitHub Issue with a stack trace. I will fix it.
    ​If you only have insults or conspiracy theories: You will be ignored.
    ​Happy coding.

    Take a piece of advice.

    If somebody tells you "this whole approach to X is insecure because REASON", you might learn something if you try to understand why REASON means X is bad.

    We don't need to look at your code to find every instance to point out all the places where you have done X. The fact you say it does X is sufficient to know it's bad.

    Thanked by 3forest doghouch tfgp99
  • forestforest Member
    edited January 26

    @marix said: The fact that some of you have shifted from technical auditing to personal attacks and labeling proves one thing: The current version (v1.0.16) is technically solid enough that you have run out of valid things to criticize.

    Actually, our tone has been the same since the very beginning. You are being mocked not for creating an insecure app with trivial XSS and MITM vulnerabilities (and worse), but for your risible insistence that it is secure and your constant repetition of the same falsehoods and LLM vomit non-sequiturs.

    Now go away like you've said you were going to do what, 15 times?

    Thanked by 1doghouch
  • forestforest Member
    edited January 26

    And no, your AES-GCM is not implemented "securely". No, I won't tell you how because it's painfully obvious to anyone who has any understanding of security.

  • @forest said:
    And no, your AES-GCM is not implemented "securely". No, I won't tell you how because it's painfully obvious to anyone who has any understanding of security.

    could be worse, at least it doesn't plaster "WE USE AES-ECB SECURE ENCRYPTION" everywhere! /s

    Thanked by 1forest
  • forestforest Member
    edited January 26

    @doghouch said:

    @forest said:
    And no, your AES-GCM is not implemented "securely". No, I won't tell you how because it's painfully obvious to anyone who has any understanding of security.

    could be worse, at least it doesn't plaster "WE USE AES-ECB SECURE ENCRYPTION" everywhere! /s

    "I appreciate your concern, but AES is a FIPS-validated algorithm and blah blah AI slop. Unless you have actionable information blah-de-blah I don't understand cryptography blah so I am stepping back from engaging to focus on 'my' code"

    @marix said: ​If you find a bug: Open a GitHub Issue with a stack trace. I will fix it.

    Oh my god, he actually thinks security bugs will spit out stack traces. Well that explains it. His mindset is "if it works, it's secure". I hate to break it to you, marix, but security bugs don't present themselves until it's too late.

    Thanked by 1doghouch
  • @forest said:

    @doghouch said:

    @forest said:
    And no, your AES-GCM is not implemented "securely". No, I won't tell you how because it's painfully obvious to anyone who has any understanding of security.

    could be worse, at least it doesn't plaster "WE USE AES-ECB SECURE ENCRYPTION" everywhere! /s

    "I appreciate your concern, but AES is a FIPS-validated algorithm and blah blah AI slop. Unless you have actionable information blah-de-blah-de-blah I don't understand cryptography blah so I am stepping back from engaging to focus on 'my' code"

    maybe we can sell him on our new advanced hashing algorithm that doesn't have preimage resistance, very vast, very secure!

    @marix said: ​If you find a bug: Open a GitHub Issue with a stack trace. I will fix it.

    Oh my god, he actually thinks security bugs will spit out stack traces. Well that explains it. His mindset is "if it works, it's secure". I hate to break it to you, marix, but security bugs don't present themselves until it's too late.

    ...............yeah, I'm calling it a night. Cheers lol

    Thanked by 2ralf forest
Sign In or Register to comment.