Lücke in Tcl-Shell unter Cisco IOS ermöglicht höhere Zugriffsrechte
Wenig bekannt: Einige IOS-Versionen bieten auch eine Tcl-Shell für Skripte an. Durch einen Fehler bei der Zuordnung von Tcl-Shells kann sich ein Anwender allerdings höhere Zugriffsrechte verschaffen.
Was auf den ersten Blick wie ein Easteregg in Ciscos Router-Betriebssystem IOS anmutet, offenbart bei näherer Betrachtung durchaus Potenzial: die eingebaute Tool Command Language (Tcl). Damit lassen sich auf Routern eigene Skripte erstellen, etwa um automatisch Mails zu generieren und zu verschicken. Dazu stellt IOS eine eigene Tcl-Shell zur Verfügung. Leider bestätigt Cisco nun in einem Advisory, dass sich durch einen Fehler bei der Zuordnung von Tcl-Shells ein Anwender höhere Zugriffsrechte verschaffen kann.
Beendet ein privilegierter Nutzer seine Verbindung zu einem Router, ohne eine Tcl-Shell zu schließen, so bleibt diese aktiv. Meldet sich ein weiterer, nicht privilegierter Nutzer am System an, so hat er unter Umständen Zugriff auf diese Shell und kann beliebige IOS-EXEC-Befehle und Tcl auf dem Router ausführen -- er hat also quasi Root-Rechte. Der Fehler tritt laut Cisco allerdings nur dann auf, wenn zur Prüfung der Befehlsberechtigung die Funktion "Authentication, Authorization, and Accounting (AAA)" benutzt wird.
Von dem Problem sind demzufolge nur Router betroffen, die diese Funktion benutzen und die Tcl-Shell anbieten. Ob die eigene IOS-Version Tcl unterstützt, lässt sich einfach durch Eingabe des Befehls tclsh am Prompt feststellen. Welche Versionen genau betroffen sind, führt der Hersteller in seinem Advisory auf. Ein Update behebt das Problem.
Siehe dazu auch: (dab)
- Response to AAA Command Authorization by-pass Cisco IOS Scripting with Tcl , Fehlerreport von Cisco
- Cisco IOS Scripting with Tcl, Tutorial von Cisco