Durcissement

Durcissement SSH 2026 : Algorithmes, Certificats et Bastion Hosts

Por Equipe Basilisk ·

Configuration moderne de SSH avec CA interne, algorithmes resistants et bastion hosts auditables pour reduire la surface d attaque en entreprise.

Chaque fois qu on ouvre shodan.io en filtrant sur port:22, on trouve des centaines de milliers de serveurs acceptant encore ssh-rsa avec SHA-1, l authentification par mot de passe exposee sur internet et des MACs comme hmac-sha1. En 2026, ce n est plus une vieille config oubliee : c est une dette technique qui paie ses interets sous forme d incidents. Le durcissement SSH n est plus une checklist de six lignes dans sshd_config, c est devenu un petit sous-systeme avec CA interne, bastion auditable, rotation de cles et telemetrie centralisee. Ce billet montre comment l equipe Basilisk monte cette pile en laboratoire avant la production, avec des chiffres concrets et des outils a tester des aujourd hui.

Commencez par les bases, mais faites-les bien. Dans un /etc/ssh/sshd_config moderne, forcez PasswordAuthentication no, KbdInteractiveAuthentication no, PermitRootLogin no et UsePAM yes. Pour les algorithmes, limitez KexAlgorithms a sntrup761x25519-sha512@openssh.com,curve25519-sha256, Ciphers a chacha20-poly1305@openssh.com,aes256-gcm@openssh.com et MACs a hmac-sha2-512-etm@openssh.com. sntrup761 apporte une resistance hybride post-quantique depuis OpenSSH 9.0, et en 2026 il n y a plus de raison de ne pas l activer. Lancez ssh-audit avant et apres : l ecart entre un C+ et un A se joue surtout en coupant diffie-hellman-group14-sha1 et compagnie. Considerez ca comme un prerequis. Hardening de Serveur Linux: CIS Benchmark Applique Sans Casser la Prod

Le vrai saut de maturite arrive quand vous remplacez les authorized_keys eparpillees par une CA SSH interne. Vous generez une paire de cles CA (ed25519, sans passphrase uniquement si elle vit dans un HSM ou un hote offline), vous signez des certificats utilisateur avec un TTL court (4 a 12 heures) et vous deployez seulement la cle publique de la CA via TrustedUserCAKeys sur les serveurs. L utilisateur s authentifie avec un certificat emis par step-ca, Vault SSH ou Teleport, lie au SSO de l entreprise. Resultat : revoquer l acces d un ex-salarie cesse d etre une chasse aux authorized_keys sur 400 hotes et devient simplement la non-reemission du certificat. En pentest interne, ce seul changement coupe la moitie des chemins de mouvement lateral bases sur des cles orphelines. Pentest Active Directory : Kerberoasting Pas a Pas dans un Lab GOAD Mouvement Lateral en Lab: SMB, WMI et WinRM avec Focus Detection

Le bastion host n est pas un Linux quelconque avec SSH ouvert. Voyez-le comme un proxy d identite : il recoit la connexion utilisateur, valide le certificat contre la CA, enregistre toute la session (entree et sortie) et ouvre un second SSH vers la cible via ProxyJump. Teleport, Boundary et la combinaison step-ca + auditd + tlog couvrent ce cas. Sur une configuration typique testee pour un client fintech, le bastion vivait dans un VPC isole avec un Security Group n autorisant que le port 22 depuis le VPN interne, et les serveurs refusaient tout SSH ne venant pas du CIDR du bastion. Cela ramene la surface d attaque de centaines d IPs a un seul point de passage surveille. Pivoting avec Chisel et Ligolo-ng : Reseaux Segmentes en Lab de Pentest

La journalisation centralisee ferme la boucle. Activez LogLevel VERBOSE sur sshd, envoyez /var/log/auth.log via journald-remote ou Fluent Bit vers Elastic ou Loki, puis ecrivez des regles Sigma pour reperer des motifs comme echecs repetes suivis d un succes, login avec certificat expirant dans moins d une heure, ou commandes suspectes via session recording. Lors d une simulation red team, il nous a fallu 11 minutes pour etre detectes en reutilisant une cle volee, parce que le principal du certificat ne correspondait pas a l utilisateur SSO. Sans cette correlation, on aurait tenu des jours. SSH reste l une des sources les plus riches et les plus sous-exploitees pour la detection. Threat Hunting avec Sigma et Elastic: De l'Indicateur a la Regle de Detection Hunting des Living-off-the-Land Binaries sous Windows avec KQL

N oubliez pas le cote client. Forcez ~/.ssh/config avec HashKnownHosts yes, VerifyHostKeyDNS yes quand c est applicable, et utilisez ssh-agent avec confirmation tactile sur une YubiKey (sk-ed25519). Pour les cles de service dans les pipelines, pas de cles statiques en CI : emettez des certificats courts via OIDC GitHub Actions ou GitLab contre votre Vault. Cela elimine toute une classe d incidents ou une cle fuitee dans un log reste valide pendant des annees. En parallele, auditez les options : AllowAgentForwarding et StreamLocalBindUnlink peuvent presque toujours etre desactivees. Supply Chain Security: Signature Sigstore et SBOM Reels en CI/CD Mots de Passe et MFA: Migrer vers les Passkeys sans Casser Votre Recuperation

Take-away pratique : montez un labo avec trois VMs (CA + bastion + cible) en step-ca, fixez un TTL de 8 heures, forcez les algorithmes modernes, lancez ssh-audit jusqu a atteindre A, puis essayez de vous connecter avec une vieille cle. Si ca passe, votre config n est pas encore durcie. Refaites l exercice chaque trimestre, faites tourner la cle de la CA chaque annee, et gardez un runbook d urgence pour revoquer et reemettre l ensemble en moins d une heure. SSH reste la porte d entree preferee des attaquants en 2026 precisement parce qu on le traite en infrastructure invisible. Arretez de le traiter ainsi.

Nenhum comentário ainda

Seja o primeiro a comentar.

Deixe seu comentário

Entre com sua conta Canverly para comentar. Você pode usar a mesma conta em qualquer site da rede.

Entrar com Canverly