Alexander (HH): Hackerangriffe bei lokal aktivem Apache/MySQL?

Beitrag lesen

Moin Moin!

a) lokal der Apache-Server läuft (den ich nur als root starten kann - wobei ich den Superuser-Mode nach Ausführen des Startkommandos natürlich wieder verlasse)

Der Apache schaltet normalerweise nach dem accept()-Call die Privilegen ab und wechselt zu einem unpriviligierten User (nobody, www, wwwrun, daemon, o.ä.). Wenn Dich die Paranoia packt, startest Du den Apachen von einem unpriviligierten Account, mußt dann aber die Portnummer auf einen Wert zwischen 1024 und 65535 setzen (die Ports 0 bis 1023 sind root vorbehalten). Außerdem kannst Du den Apachen so konfigurieren, dass er nur auf der Loopback-Adresse (127.0.0.0/255.0.0.0, interface lo) auf Anfragen reagiert, nicht aber auf anderen Adressen (z.B. der Ethernet-Karte). Stichwort: Listen 127.0.0.1:8080, bei neueren Apaches heißt das Port 127.0.0.1:80, wenn mich nicht alles täuscht.

b) ich als root MySQL benutze?

Nutzen oder starten?

Beim Starten sollte mysql eigentlich auch zu einem unpriviligierten Account wechseln. Auch hier kannst Du mysql von einem unpriviligiertem Account starten, der MySQL-Standard-Port 3306 ist ohnehin ohne root-Privilegien erreichbar. Laß also MySQL als unpriviligierten User starten.

MySQL kannst Du auch über Unix Sockets (statt TCP/IP Sockets) erreichen, wenn es auf der selben Maschine läuft. Damit sind Angriffe von außen augeschlossen.

Nutzen solltest Du mysql als root gar nicht. Die Front-Ends benötigen keine root-Rechte.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".