Linux: sta inviando notifiche di prompt sugli accessi ssh a una misura di sicurezza?

2

Scenario

Uno dei miei clienti ha alcune caselle basate su Debian direttamente accessibili su Internet senza firewall sulla porta ssh. Queste caselle sono configurate per una notifica di posta "istantanea" quando un utente ssh remoto accede correttamente:

me @ server: ~ $ sudo cat / etc / ssh / sshrc

ip='echo $SSH_CONNECTION | cut -d " " -f 1'
logger -t ssh-wrapper $USER login from $ip
echo "User $USER just logged in to $(hostname) from $ip" | mail -s "SSH Login" -- [email protected] &

Mi chiedevo se questo può effettivamente essere considerato una (buona) notifica di sicurezza, poiché l'utente che effettua l'accesso sta eseguendo questo comando e quindi un utente malintenzionato potrebbe avere il controllo su tale evento. Ovviamente dopo il login accade millisecondi, quindi dovrebbe essere molto difficile per un attacker prenderlo, ma non sono ancora sicuro che un utente remoto non possa aggirare questo sshrc globale lato server.

Per esempio, ho lavorato per loro per mesi e non me ne sono nemmeno accorto, ma hanno ricevuto una notifica ogni volta che ho effettuato l'accesso. Hanno indicato la mia attenzione, perché hanno detto che hanno cambiato qualcosa in uno dei loro script, che ora sta generando molte più connessioni rispetto a prima, e quindi mi hanno chiesto di impedire a questo utente di generare la notifica al fine di evitare che la cassetta postale fosse inondata.

Dato che sono un tipo istintivo, ho prontamente aggiunto un if per abbinare l'utente che non dovrebbe generare la notifica, e questo ha fatto il trucco, ma penso che questo renda questa misura anche più debole di quello che sembrava già .

Non so se sia possibile, ho provato molte ricerche diverse che non hanno restituito nulla di rilevante, ma se un utente sul lato client può essere in grado di specificare un percorso diverso per sshrc, ad esempio, questa misura fallirebbe miseramente. Se l'MTA ha una coda piena e l'utente è in grado di elevarlo, potrebbe facilmente deselezionare / ritardare la posta, ecco perché dovrei scambiare la posta con un servizio SMS almeno.

Questo è solo uno dei miei dubbi, ed è per questo che ho intenzione di parlare con il CIO del cliente di questa debolezza e vorrei avere la tua opinione al riguardo. Naturalmente, mi chiederà "quale pensi che sarebbe una soluzione più sicura e ancora libera?" Il denaro è sempre The King.

Onestamente non ho ancora una risposta per tale domanda, ma penso che se vogliono mantenere questa "logica", almeno, root dovrebbe guardare il log e notificare quando ogni utente accede Non tutti i crontab minuto vogliono che tali notifiche siano istantanee. Quindi penso che potrei scrivere qualcosa con "fileschanged" e "tail", e usare l'SMS o mantenere la posta come il cliente preferisce. Questo sarebbe eseguito da root e quindi non sarà sotto il controllo dell'utente.

Domande

-È possibile che un utente remoto non privilegiato disabiliti il lato client sshrc del server?

-Il cliente vuole mantenere questo tipo di notifica, così buono o cattivo, consideri questo modo per ottenerlo in modo positivo?

-Qualsiasi altro modo gratuito di essere tempestivamente informato su un accesso ssh, in modo non circoscritto?

-Non pensi che sarebbe più sicuro passare da email a SMS?

    
posta Marco 04.09.2017 - 11:57
fonte

1 risposta

3

A proposito di insicurezza, imho, stai pensando nella direzione sbagliata.
Quali cose cattive pensi che questo sistema stia impedendo? Assolutamente nulla, ed è per questo che non riesce a impedirlo. Al contrario, ha aggiunto sicurezza; perché se qualcuno ottiene l'accesso non autorizzato, c'è almeno una possibilità che non sappia (o non possa impedire) la posta.

L'unica cosa da ricordare del cliente è che fare affidamento troppo sulla posta non è buono. Come allerta, bene, come unica fonte di verità ("non siamo hackerati perché non c'è posta"), no. Ci sono troppi modi in cui le e-mail possono fallire e troppi modi per essere violati senza un login SSH adeguato.

Informazioni sul firewall, se qualcuno blocca le connessioni SSH in entrata, nessuno può più accedere. Probabilmente non è utile.

A proposito di un metodo che non si basa sull'utente e sulla shell, PAM può farlo anche tu. Vedi link
C'è anche un'opzione per negare il login se il comando non è riuscito, ma in questo caso non è molto utile (nessun login perché il server di posta è inattivo o altro, e inviarlo con successo al server non significa che sia arrivato al destinatario ).

Informazioni su SMS, no, non sono più sicuri delle e-mail.

    
risposta data 04.09.2017 - 13:54
fonte

Leggi altre domande sui tag