Mja dat is een beetje stating the obvious: natuurlijk ga je anders om met beveiliging...
... Maar niet dusdanig anders dat je dus niet vatbaar bent voor dit probleem; tenzij je of alle diensten uitschakelt (en wat moeten die users dan uberhaupt op je systeem??) of je disabled gewoon de log toegang volledig: met de kantekening dat cron dus ook helemaal niets meer naar de logs kan schrijven. Dat kan ook weer problemen opleveren.
Het enige probleem is dus dat je verschillende usecases hebt waarbij password authentication gewoon mogelijk moet zijn; of daar het handigste is. Security vs usability.
En dat is ook prima mogelijk, mits je maar de juiste maatregelen neemt: en dus software gebruikt die niet vatbaar is voor spoofing.
Maar dat alles terzijde...
Een paar behoorlijk belangrijke aspecten die je denk ik over 't hoofd hebt gezien:
1.) Je hoeft niet per definitie in te loggen naar SSH om dit probleem te misbruiken.
2.) Het gaat helemaal niet uitsluitend om SSH, dus je kan wel leuk kijken naar enkel keyauth gebruiken, en dat kan je ook doen uiteraard; en ook SSH nog eens op een andere poort: helemaal prima... Maar dan zit je alsnog met het feit dat Fail2Ban niet uitsluitend SSH monitored en dus ook via diverse andere services een enorme flood aan bans kan veroorzaken als iemand die one-liner uitvoert. Of je nou alleen op de server zit of met meerdere, of je SSH nu op keys zet of niet: brute-force beveiliging is ook wel zo fijn op andere diensten dan uitsluitend SSH.

... En ook die zijn vatbaar voor dit probleem.

Dus stel jij schakelt in Fail2Ban de SSH brute-force monitoring uit omdat je dat toch niet gebruikt, maar je monitored wel FTP en het script kidje propt "pure-ftpd" (voorbeeld) authentication failures in je logs in plaats van SSH: dan krijg je alsnog hetzelfde gelazer.
3.) Het hele punt is dat het geen echte authentication failures zijn, maar nep. Dat is waar spoofing voor staat. Dus zelfs als jij SSH dichttimmert, maar Fail2Ban monitored nog altijd (voor andere diensten, e.d.); dan kan je dus IP's spoofed bannen door naar de logs te schrijven.
En dan nog, en dit wordt een overdreven voorbeeldje: zelfs op een server waarbij je slechts met 1 user te maken hebt en je alles helemaal dichtgetimmerd hebt; enkel poort 80 en SSH op een random privileged port (die ontdekt kan worden via portscanning.) is in theorie beschikbaar voor het publiek want je wilt enkel een webservertje draaien en verder enkel zelf toegang... Dan NOG kan het een probleem zijn, omdat dit gelazer ook via PHP (hallo exploits.) te misbruiken valt. En ga zo maar door. Mits je Fail2Ban draait: uiteraard, dat staat voorop. Sure, als je alle poorten dichtgooit zul je het misschien niet nodig hebben; maar zelfs met een firewall die alle poorten dichtknalt (behalve voor bepaalde IP's) heb ik alsnog brute-force monitoring draaien... Je weet maar nooit. (Al gebruik ik dus andere software.

)
Zeker als er meerdere beheerders zijn wil ik dit alsnog monitoren. Maar afijn.
Dit was dan ook slechts een zwaar overtrokken voorbeeldje om aan te geven dat het in allerlei scenarios dus een probleem is: zodra Fail2Ban draait en er draait een site op en/of er hebben meerdere users toegang: dan heb je dus een potentieel probleem, want dan ben je kwetsbaar voor deze aanval. Alle poorten dichttimmeren en dan nog Fail2Ban draaien zal idd lichtelijke paranoide zijn; maar er zijn er zat die alsnog een vorm van detectie draaien.
Bottom line: het is en blijft een probleem, hoe je er ook naar wilt kijken.
Tuurlijk zijn er een paar usecases waarbij dit totaal geen probleem zal zijn (en je Fail2Ban ook inderdaad wellicht niet eens nodig hebt); maar over het algemeen is brute-force detectie een behoorlijk belangrijke feature om op je server te implementeren, en daar zeg ik dus van: doe het dan wel goed, en met software die NIET vatbaar is voor log spoofing!
Vroeger of later levert het echt gezeik op, want die 'bug' wordt steeds vaker misbruikt.
Doe dus vooral wat je niet laten kunt, I'm just providing a fair warning.
Over het algemeen zal het ook niet super snel misbruikt worden, maar zeker op shared servers is het risico enorm hoog... En niet enkel met SSH.
Het is niet voor niets dat alle developers (die van Fail2Ban, die van CSF, die van APF, et cetera) stuk voor stuk allemaal waarschuwen dat dit een behoorlijk groot probleem is.
[Reactie gewijzigd door WhatsappHack op 22 juli 2015 23:40]