@wolkenkrieger, deine Antwort auf Posting #2 hätte mich jetzt interessiert
Naja, ganz einfach (in meiner Denke zumindest^^): sichere Systeme haben eine physische (zumindest aber eine deutlich logische) Trennung nach Aufgaben (DB, Web, Mail, ...), um eine Kettenreaktion bei einer Kompromittierung zu verhindern oder sie zumindest so schwer bzw. unwahrscheinlich wie möglich zu machen.
Ich geh mal davon aus, dass er die mail()-Funktion als solches meint. Der User, unter dessen Account also der Webserver läuft, bekommt erzwungener Maßen Zugriff auf einen betriebssystemnahen Befehl (popen). Damit steht ein Tor offen für Angriffe. Idealerweise konfiguriert man einen Webserver ja so, dass der Apache (oder eben ein anderer entsprechender Dienst) in einem maximal eingeschränkten Account läuft, der eben nur die für den reinen Webserverbetrieb essentiell notwendige Berechtigungen hat. Idealerweise beinhalten die eben keinerlei Zugriffsmöglichkeiten auf OS-nahe Komponenten (popen, exec, system, etc. sind "abgeklemmt").
Kommuniziert der Mailserver aber via SMTP mit einem Mailserver, muss ein eventueller Angreifer entweder beide Server oder aber zumindest die Kommunikation zwischen ihnen angreifen (MITM), was bei einem gut konfigurierten Mailserver wegen SSL und diversen anderen Sicherheitsmechanismen ausgesprochen schwer bis nahezu unmöglich ist.
Ich habe mal gelernt: wenn du Hürden einbauen kannst, bau sie ein. So hoch wie du kannst und so oft wie du kannst. Sicherheit geht vor Performance und Bequemlichkeit.
Die Plaintext-Ablage eines SMTP-Passwortes macht meine Argumentation natürlich lächerlich - ist mir klar. Aber auch dafür gibt es praktikable Lösungen. Zumal damit lediglich der reine Mailversand über ein einziges Konto in Gefahr gerät - nicht aber der Mailserver als solches.
Oder liege ich da falsch?
Einschränkung (nach Absprache mit meinem Serverspezi): systemnahe Zugriffe sind dann zulässig (also aus Sicherheitssicht), wenn dahinter auf OS-Ebene entsprechende Überwachungen (Prozessüberwachung zum Beispiel oder accountgebundene Kommando-Aliase) aktiv und ausreichend sorgfältig eingerichtet sind.
Das dürfte aber bei den wenigsten von uns mangels vollständigem Zugriff auf den Server (oder Kenntnissen, wie bei mir *lol*) möglich sein.