this post was submitted on 12 Apr 2025
101 points (96.3% liked)

Linux

53618 readers
57 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

On a server I have a public key auth only for root account. Is there any point of logging in with a different account?

you are viewing a single comment's thread
view the rest of the comments
[–] Lemmchen@feddit.org 12 points 10 months ago (1 children)

And who is going to edit your .bashrc?

[–] ShortN0te@lemmy.ml 2 points 10 months ago (2 children)

The attacker that is currently with user privileges on the server?

[–] Lemmchen@feddit.org 9 points 10 months ago* (last edited 10 months ago) (1 children)

How did the attacker gain your user's privileges? Malware-infected user installation? A vulnerability in genuine software running as your user? In most scenarios these things only become worse when running as root instead.

[–] ShortN0te@lemmy.ml 7 points 10 months ago (2 children)

The scenario OC stated is that if the attacker has access to the user on the server then the attacker would still need the sudo password in order to get root privileges, contrary to direct root login where the attack has direct access to root privileges.

So, now i am looking into this scenario where the attack is on the server with the user privileges: the attacker now modifies for example the bashrc to alias sudo to extract the password once the user runs sudo.

So the sudo password does not have any meaningful protection, other then maybe adding a time variable which is when the user accesses the server and runs sudo

[–] miss_demeanour@lemmy.dbzer0.com 1 points 10 months ago (2 children)

Simple solution is to not use sudo.
Sorta like Slackware's default.

[–] JasonDJ@lemmy.zip 0 points 10 months ago (1 children)

Nah just set up PAM to use TOTP or a third party MFA service to send a push to your phone for sudo privs.

[–] miss_demeanour@lemmy.dbzer0.com 2 points 10 months ago (2 children)

...and if you don't have your phone attached to your hand...?

[–] JasonDJ@lemmy.zip 0 points 10 months ago* (last edited 10 months ago)

I...I don't understand the question.

Also, yubikey or any other token. Plenty of MFA options compatible with sudo.

[–] 4am@lemm.ee -2 points 10 months ago (2 children)

Then you can’t gain root privileges on your server. Are you really arguing for less security because it’s inconvenient?

This is end-user behavior and it’s honestly embarrassing. You should realize your security posture is much more important than “I left my phone on the other room”

[–] slothrop@lemmy.ca 4 points 10 months ago

This thread is embarrassing,
The person you're responding to could wipe your ass with a cli.

[–] miss_demeanour@lemmy.dbzer0.com 2 points 10 months ago (1 children)

ffs...am I dealing with children here?
You've accessed your server as a user, and then you su - to root.
You don't need a phone or a yubi or a dreamcatcher, or a unicorn.
Please stop with your pretension.
You're so far out of your league that it's embarrassing to me that I've bothered to answer.

[–] JasonDJ@lemmy.zip 1 points 10 months ago* (last edited 10 months ago)

There must at least be MFA somewhere on the path then.

Even just keys, I wouldn't trust, unless they are stored on smartcards or some other physical "something I have", require a PIN/passphrase. and centrally managed so they can be revoked and rotated. Too many people use unprotected SSH keys.

[–] ShortN0te@lemmy.ml 0 points 10 months ago (1 children)

And what do you suggest to use otherwise to maintain a server? I am not aware of a solution that would help here? As an attacker you could easily alias any command or even start a modified shell that logs ever keystroke and simulates the default bash/zsh or whatever.

[–] miss_demeanour@lemmy.dbzer0.com 2 points 10 months ago (1 children)
[–] ShortN0te@lemmy.ml -2 points 10 months ago (1 children)

And how would you not be able to hijack the password when you have control over the user session?

[–] slothrop@lemmy.ca 3 points 10 months ago (1 children)

You would have to know the root password.

[–] ShortN0te@lemmy.ml -1 points 10 months ago (1 children)

With aliases in the bashrc you can hijack any command and execute instead of the command any arbitrary commands. So the command can be extracted, as already stated above, this is not a weakness of sudo but a general one.

[–] slothrop@lemmy.ca 2 points 10 months ago (1 children)

You would have to KNOW the root password.

[–] ShortN0te@lemmy.ml 0 points 10 months ago (2 children)

No you can alias that command and hijack the password promt via bashrc and then you have the root password as soon as the user enters it.

[–] miss_demeanour@lemmy.dbzer0.com 3 points 10 months ago* (last edited 10 months ago) (1 children)

As root:

  # chattr +i /home/ShortN0te/.bashrc

Anything else?

[–] ShortN0te@lemmy.ml 0 points 10 months ago (2 children)

There are many ways to harden against it, but "just disable root auth" is not really it, since it in itself does not add much.

[–] 2ndSkin@sh.itjust.works 3 points 10 months ago

So, you learned about .bashrc today, and you're now an expert?
Perhaps stand down and let the experts have their say.

[–] miss_demeanour@lemmy.dbzer0.com 3 points 10 months ago

??

Seriously - if you're "advising" on linux best practices, get lots of liability insurance.

[–] 2ndSkin@sh.itjust.works 2 points 10 months ago

No, that's not how it works.
You really should stop talking shit about things you know nothing about.
Truly sad.

[–] grrgyle@slrpnk.net 1 points 10 months ago

Oh that's dastardly

[–] WheelcharArtist@lemmy.world 3 points 10 months ago (1 children)

that's why root owns my .bash* stuff

[–] savvywolf@pawb.social 0 points 10 months ago (2 children)

I don't think that actually works; the attacker could just remove .bashrc and create a new file with the same name.

[–] 2ndSkin@sh.itjust.works 4 points 10 months ago (1 children)

If the .bashrc is immutable, the attacker can't remove it.
That's how it works.

[–] savvywolf@pawb.social 0 points 10 months ago (1 children)

The home directory would need to be immutable, not bashrc.

[–] 2ndSkin@sh.itjust.works 4 points 10 months ago* (last edited 10 months ago) (1 children)

?

It's .bashrc, not bashrc, and .bashrc is in the home directory.
If .bashrc is immutable, it can't be removed from home.

[–] savvywolf@pawb.social 1 points 10 months ago

It's the directory that needs to be writable to delete files, not the file itself.

Although the immutable bit (if that's what you're talking about - I thought you meant unsetting the write bit) might change that, I'm not sure.

[–] WheelcharArtist@lemmy.world 1 points 10 months ago (1 children)

you're right. that's something i wanted to look into. guess setfacl would do the trick?

[–] DarkMetatron@feddit.org 2 points 10 months ago (1 children)

"chattr +i" is what I use to make things immutable