passbolt, to opensource
@passbolt@mastodon.social avatar

🎉 Announcing Passbolt v4.8.0 "Angel - Massive Attack" 🎶! This release of our password collaboration manager introduces the first version of our Manifest V3 Chrome extension, new tools to purge audit logs and check failed email queues from the command line for better SMTP debugging. Significant performance improvements are included, with more to come in v4.9. 🛠️

Learn more in our release notes and upgrade now: https://hubs.li/Q02kDVy00

gergely, to ArtificialIntelligence

Git login and commit signing with security

Doing software engineering (well-ish) is pretty hard to imagine without working in version control, which most of the time means git. In a practical setup of git there’s the question of how do I get access to the code it stores — how do I “check things out”? — and optionally how can others verify that it was indeed me who did the changes — how do I “sign” my commits? Recently I’ve changed my mind about what’s a good combination for these two aspects, and what tools am I using to do them.

Access Options

In broad terms git repositories can be checked out either though the HTTP protocol, or through the SSH protocol. Both have pros and cons.

Having two-factor authentication (2FA) made the HTTP access more secure but also more setup (no more direct username/password usage, rather needing to create extra access keys used in place of passwords). Credentials were still in plain text (as far as I know) on the machine in some git config files.

The SSH setup was in some sense more practical one (creating keys on your own machine, and just passing in the public key portion), though there were still secrets in plain text on my machine (as I don’t think the majority of people used password-protected SSH keys, due to their user experience). This is what I’ve used for years: add a new SSH key for a new machine that I’m working on, check code out through ssh+git, and work away.

When I’ve recently came across the git-credential-manager tool that supposed to make HTTP access nicer (for various git servers and services), and get rid of plain text secrets. Of course this is not the first or only one of the tools that does git credentials, but being made by GitHub, it had some more clout. This made me re-evaulate what options do I have for SSH as well for similar security improvements.

Thus I’ve found that both 1Password and KeePassXC (the two main password managers I use) have ssh-agent integration, and thus can store SSH keys + give access to them as needed. No more plain text (or password protected) private keys on disk with these either!

Now it seems there are two good, new options to evaulate, and for the full picture I looked at how the code signing options work in this context as well.

Code Signing Options

When signing my commits to authenticate authorship, it’s possible to use PGP/GPG (the “classic way”), or now also SSH keys (as detailed, for example here or here).

The GPG setup is well established, and also links my commits to my identities used elsewhere (e.g. signed emails sent to mailing lists that care about it, with the key linked from this site’s frontpage). This of course is not always needed or desired, but it decouples the identity from the code hosting platform. There’s some serious downsides as well, though: GPG signing keys are not supposed to be numerous (just a single one), and thus if I use multiple machines to work on, I will have to take my private keys with me between machines, for example making copies of them. Or if not making copies, then have them on hardware keys (that have other problems with backups and all that, if I got it right the last time I tried to understand the process).

The SSH key commit signing is much newer (need git version at least 2.34), but it’s also simpler: add a key to my git hosting service, sign commits with that key, and thus the service can match things up and show that match. I can add as many keys as machines I’m working on if needed, no need to transfer or copy keys between machines, and I can also choose use some keys for login only or code signing only.

A third party trying to verify these signatures, though, would need to get the keys from the hosting service (I’d find it surprising if people would distribute their commit signing keys out of band the same way as they do with GPG public keys, since there are likely more of them). Hence it git hosting services will need to make the user’s keys available (as they do at the relevant username.keys URLs, e.g. mine on GitHub and GitLab).

Also can’t forget to add the relevant keys to the list of allowed signing keys locally, and all the other relevant setup (see e.g. the GitHub and GitLab docs). There are a bit too many places to update, but it’s mostly set-it-and-forget-it. After that, once started to sign commits, adding the --show-signatures flag to the commands that support it (git log, git show for example), should show the signatures.

My Winning Combo

Looking at the opions above, there’s a matrix of options that we can use, and here’s what I think about them:

GPG signature SSH key signature
Git Credential Helper Extra setup Simpler
SSH clone The usual Most convenience 👍

Convenience matrix of Git access (rows) and commit signing (columns) optionsReally, where I want to be is just SSH keys for everything, even if they are imperfect, but they have the most number of puzzle pieces to fit.

SSH Key Security

While previously SSH keys were really just held as files in your ~/.ssh folder, most likely, recently I’ve found (tada!) that the password managers I use can also store & serve SSH keys: see in particular 1Password’s SSH documentation and KeePassXC docs (scroll to SSH Agent Integration on that page), though I’m sure other password managers can do this too.

1Password

The two password managers listed above handle things quite similarly. 1Password is a bit less hands-on, though, the default settings work pretty well.

https://gergely.imreh.net/blog/wp-content/uploads/2024/04/Screenshot-2024-04-27-at-11.55.43.pngOne important bit is that 1Password runs its own SSH agent, so that has to be configured in the relevant places, but it’s easy enough. The approvals are also useful, so it’s more transparent when something accesses the key.

1Password pop-up for SSH key usage1Password pop-up for SSH key usage

With this things generally work, and relatively easy to reason about things. When things are less clear, it might be just a debug check-away away from seeing the keys added to this alternate agent:

$ export SSH_AUTH_SOCK=~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock<br></br>$ ssh-add -l<br></br>256 SHA256:XfRsbxRMm+CN[...snip...]

KeePassXC

KeePassXC, being open source, is my preferred solution of the two, though unsurprisingly it’s the more awkward one to set up. The main differences from 1Password include:

  • needing to generate the keys externally to the password manager (rather than having built-in ssh keygen) – this is a con on usability but a strong pro on basing security on the established tool, rather than potentially questionably reimplement it
  • uses the main SSH agent, so no extra setup is necessary in most of the tools – this is a potential pro on usability for configurations, but a potential con that the worflow and config of loading keys into the agent needs a bit more understanding to be both ergonomic and safe to one’s level of paranoia
  • the key use confirmation defaults to “ok” on pressing Enter on the pop-up (rather than Cancel) – this is a pro on usability, but con on “failing open” rather than closed

SSH key usage confirmation with KeePassXCSSH key usage confirmation with KeePassXC

It’s still a pretty simple workflow, and it’s quite interesting to see how many things KeePassXC learned to do as well.

Experience

Thinking about the various threat models to my SSH crendentials, this setup adds one more layer to the defence in depth, and it does feel more relaxed already (relaxed from a point of stress I didn’t quite know I had before).

Picking the SSH key based login and signing feels like using the most appropriate tech for the moment, and there are still knobs for people to adapt it to their security levels (different SSH keys for login and signing, passwords on the keys themselves, etc…)

This setup works very well when I want to be notified whenever a tool’s using the SSH key so it would be more obvious if a stray process is trying, say exiltrate the keys. On the other hand this breaks down when git itself is running background processes, such as git-maintenance, so that’s not something that I could use here. So far out of (literally) thousands of codebases & repos I’ve used that maintenance setup exactly once, for convenience. For me it is not a major loss, then.

The one bit that feels a step backwards is that having the SSH keys in the password manager and carrying it around counteracts the “separate key for each system” arrangement. This might just be part of getting used to new processes, and not an actual downside.

Further Thoughts

In cybersecurity yesterday’s best practices might be inadecvate today and “last week’s” practices might be outright dangerous… Gonna keep revisiting this setup more broadly and in terms of details, as I learn more.

It’s a good question why even do code signing (besides having a “verified” check mark, which alone doesn’t mean much if not part of a verification process), though this needs some more space to unpack. For the time being I’ll assume that signing is better than not signing, if nothing else than as a forward looking prep for better audit processes down the line.

There’s really a question around having too many things in a single password manager: nowadays it can be the complete “royal flush” of password, TOTP, SSH key, recovery codes, passkey… and likely more bits that I might not be using yet? This does make me uneasy, and likely a scale on which usability and security will adjust over time (such as. bundling and unbundling various cybersecurity aspects).

I might also actually misunderstand various things above, if so, I’d be very keen to hear, just drop me a line!

#git #passwordManager #ssh #Computers

Original post: https://gergely.imreh.net/blog/2024/05/git-login-and-commit-signing-with-security/

image/png
1Password pop-up for SSH key usage

xahteiwi, to random
@xahteiwi@mastodon.social avatar

Any of you aware of a that works with GNOME, Mozilla, and Thunderbird that actually gets out of the way?

What I'd like to see is my password store being automatically unlocked by my normal login password, locked when the lock screen comes on, and re-encrypted when I change my login password.

I know I can do some of this with Seahorse and pam_gnome_keyring, but this doesn't help with the Firefox/Thunderbird password manager.

Boosts and comments most welcome. Thanks!

blueghost, to security
@blueghost@mastodon.online avatar

Hive Systems has published their 2024 password table.

The table illustrates the maximum time required to brute force a password based on various lengths and complexities.

Brute force: https://en.wikipedia.org/wiki/Brute-force_attack

Website: https://www.hivesystems.com/password-table
Blog: https://www.hivesystems.com/blog/are-your-passwords-in-the-green

#HiveSystems #Password #BruteForce #PasswordTable #Security #InfoSec #Data #DataProtection #CyberSecurity #PasswordManager #Cracking #Privacy

travisfw, to random
@travisfw@fosstodon.org avatar

you have to choose between "don't put all your eggs in one basket" and "put all your eggs in one basket AND WATCH THAT BASKET"

orbitalmartian, to random
@orbitalmartian@alpha.polymaths.social avatar

I need to get a handle on this, what password manager do you recommend?

My requirements are:

  • Free
  • As private as possible
  • Sync between devices
  • Maybe a website one (if local app, needs iOS, Windows and Linux, or an extension).

Any recommendations welcome.

passbolt, to opensource
@passbolt@mastodon.social avatar

🚀 New in v4.7!

🛠️ Custom SSL certificates for SMTP & LDAP/AD
🛠️ Username fallback for AD
🌐 Manifest V3 in nightly builds
🚨 Bug fixes & more!

🔗 Upgrade now: https://hubs.li/Q02kDVy00

gtbarry, to security
@gtbarry@mastodon.social avatar

LastPass users targeted in phishing attacks good enough to trick even the savvy

Password-manager LastPass users were recently targeted by a convincing phishing campaign that used a combination of email, SMS, and voice calls to trick targets into divulging their master passwords

https://arstechnica.com/security/2024/04/lastpass-users-targeted-in-phishing-attacks-good-enough-to-trick-even-the-savvy/

passbolt, to opensource
@passbolt@mastodon.social avatar

🔐 Discover how ZIT RLP, a regional center for university IT in Germany, has enhanced their machine credentials collaboration and security by integrating 's open-source password manager. Watch the video to learn more about their journey: https://hubs.li/Q02tXlkb0 🌐

Ihazchaos, to random German
@Ihazchaos@chaos.social avatar

Frau Yaki, zum millionsten Mal lege ich ihr ans Herzchen sie soll doch bitte einen benutzen und sie siht mich an und sagt: Du bist mein Passwordmanager. Tja, kannste nix machen.

ChristosArgyrop, to random
@ChristosArgyrop@mstdn.science avatar

2FA is driving me nuts. I think I may be going back to Subversion or even CVS.

mjgardner,
@mjgardner@social.sdf.org avatar

@ChristosArgyrop Only 20? Amateur. 🙄

% bw list items | jq '. | map(select(.login.totp)) | length'  
111  

(bw is the CLI: https://bitwarden.com/help/cli)

passbolt, to opensource
@passbolt@mastodon.social avatar

🚀 Introducing the first stable release of Windows Desktop App! 🚀

Secure password sharing is now available as a production-ready desktop application for Windows.
It successfully passed a security audit by . Discover more about the technical foundation, password collaboration features and security details of this release in our latest blog post: https://hubs.li/Q02sGt0V0

passbolt, to opensource
@passbolt@mastodon.social avatar

Upgrade to Passbolt 4.6! This release enhances password collaboration through features like the automated Health Check of a Passbolt setup for admins, SSO support for Microsoft AD FS enabling easier access, and essential performance improvements. 🌟 Ready to take a closer look? Watch our latest video https://hubs.li/Q02pLfq10 and check out the detailed release notes https://hubs.li/Q02kDVy00.

maki, to apple German
@maki@social.tchncs.de avatar

An die 🍎-Kinder. Die Passwortmanagerapp kann ich nur empfehlen. Nutze diese schon seit Jahren und die ist jetzt im Angebot für heute 🫶

https://www.mydealz.de/deals/strongbox-pro-lifetime-fur-ios-ipados-und-macos-2332696

stf, to random
@stf@chaos.social avatar

wow, threshold-sphinx is a thing! just managed to get a password for which the oprf key has been created by a dkg. not that we knew this is possible, sure. but now i have working code doing so! still a lot of work until this can be deployed, but it is very promising start!

BryceWrayTX, to infosec
@BryceWrayTX@fosstodon.org avatar

New advantages for the KeePass way • If you like having more control over your passwords, things are getting better for you.

https://www.brycewray.com/posts/2024/03/new-advantages-keepass-way/

kohelet, to bitwarden
@kohelet@mstdn.social avatar

Bitwarden: has all necessary features for free, is open source and self hostable.

Proton Pass: if you pay us, you can save your passwords locally!

love proton, but this is just a stupid product.
Everything already exist, better and for free. what's the point?

@protonmail

prealpinux, to informatica Italian
@prealpinux@mastodon.uno avatar

Proton abbasserà il prezzo del proprio password manager

@informatica

https://proton.me/blog/proton-pass-price-change

adelgado, to Bulgaria
@adelgado@eu.mastodon.green avatar

Talking about EU sovereignty at work I came across this https://european-alternatives.eu/
#Alternatives #EuropeanUnion #EU #SaaS #Mail #Calendar #PasswordManager #VPS #Hosting #DNS #ProjectManagement #VPN and a lot more categories

NeadReport, to random
@NeadReport@vivaldi.net avatar

Sweet. Proton community members are now beta testing the Proton Pass Windows desktop app. That means me, too.

helplessduck, to infosec
@helplessduck@mastodon.online avatar

I've been test driving 1Password all morning because my family has finally decided to come aboard the password manager train, 🙄 so we're going to do a family/team plan. I've been using BitWarden for years, but they like to travel out of the country and mentioned the so-called Travel Mode that 1Pass has.

Anyone have any thoughts or preferences to offer on the topic of password managers" (Other than "USE ONE, YA DOLT!" 😂)

bitwarden, to passkeys
@bitwarden@fosstodon.org avatar

Bitwarden strengthens its development toolkit to help accelerate modern workforce authentication. Get started today: https://bitwarden.com/blog/enabling-enterprises-to-build-modern-passkey-authentication/

protonmail, to random
@protonmail@mastodon.social avatar

Proton Pass for business is here!

Over 50,000 businesses already trust Proton Mail to keep their emails private, and starting today, your team can use a that’s open source, GDPR compliant, and protected by strict Swiss privacy laws.

Sign up for now for a 50% limited-time discount. Pricing starts at $1.99 per user per month. https://proton.me/blog/business-password-manager

kuketzblog, to security German
@kuketzblog@social.tchncs.de avatar

Es ist wieder soweit und wie jedes Jahr am 1. Februar wird von vielen Seiten dazu aufgerufen, die Passwörter zu ändern. Ich sage: Lasst es. Dieses ständige Passwortändern bringt keinen messbaren Sicherheitsgewinn. Das Problem liegt ganz woanders. 👇

https://www.kuketz-blog.de/passwort-wechseltag-lasst-es-einfach/

NeadReport, to bitwarden
@NeadReport@vivaldi.net avatar

So the reason I am moving away from my beloved password manager is because of Proton Pass. Which happens to work well with Proton Mail, Proton Calendar and Proton Drive. You see, it's a suite of non-Google apps that is focused on privacy and encryption (you can use Proton Pass separately and for FREE)
And yes, it's a tedious process of moving to a better product. One that is focused on protecting vs. exploiting. I'm being patient and moving forward.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • GTA5RPClips
  • thenastyranch
  • ethstaker
  • everett
  • Durango
  • rosin
  • InstantRegret
  • DreamBathrooms
  • magazineikmin
  • Youngstown
  • mdbf
  • slotface
  • tacticalgear
  • anitta
  • kavyap
  • tester
  • cubers
  • cisconetworking
  • ngwrru68w68
  • khanakhh
  • normalnudes
  • provamag3
  • Leos
  • modclub
  • osvaldo12
  • megavids
  • lostlight
  • All magazines