CL-35B2 hacken, Dienste aufräumen sowie SMB und NFS anbieten

Es gibt zwei Wege einen root-Zugang zur CL-35B2 zu erlangen, einen für alte Versionen des Systems und einen für aktuelle Versionen.:

Der klassische Web:
Das root-Passwort ist „toor„!

Der neue Weg wenn der klassische Weg nicht möglich ist:
Lege eine Systemsicherung in der Weboberfläche an. Bearbeite die in der Sicherung enthaltene Datei /etc/shadow in dem Du die Zeile welche mit „admin:“ beginnt in die erste Zeile kopierst, nach dem Du die erste Zeile, welche mit „root:“ beginnt gelöscht hast.
Ändere das „admin:“ in der neuen ersten Zeile in „root:“ Im Anschluss füge die Zip-Datei der Sicherung wieder zusammen und Spiele das Backup auf die CL-35B2 zurück.

Anschließend ist der root-Login via Telnet möglich.

# cat /proc/mtd
dev: size erasesize name
mtd0: 10000000 00020000 "NAND 256MiB 3,3V 8-bit"
mtd1: 026c0000 00020000 "Boot partition"
mtd2: 0d940000 00020000 "Data Partition"

Das erste das ich auf der NAS aktiviere ist der SSH-Dienst, da ich das unverschlüsselte Telnet nicht mag!

chkconfig --level 345 sshd on

Als nächstes ist mir aufgefallen, das jemand in /root/.ssh/authorized_keys einen Key hinterlegt hat. Das mag ich nicht, ich lösche zuerst diese Datei.
Da es kein passwd auf der Box gibt kommt das ändern des Passwortes erst später…

# deaktivieren was nicht laufen soll

chkconfig --level 123456 cups off
chkconfig --level 123456 vsftpd off
chkconfig --level 123456 lighttpd off
chkconfig --level 123456 atalkd off
chkconfig --level 345 smbd off
chkconfig --level 345 smb off
chkconfig --level 345 nmb off

# software deinstallieren die wir nicht wollen
# was soll ein Sockproxy auf einer NAS? und ich mag keinen gstreamer auf der NAS
# auserdem lösche ich die NAS Software von fantec

rpm -e nas-sockproxy

rpm -e nas-20120118-1.noarch

# ACHTUNG !!! Jetzt ist die Netzwerk konfiguration umbenannt worden, korrigieren wir das SOFORT!

mv /etc/sysconfig/network-scripts/ifcfg-eth0.rpmsave /etc/sysconfig/network-scripts/ifcfg-eth0
mv /etc/sysconfig/network.rpmsave /etc/sysconfig/network

Im Anschluss werden die nicht vorhandenen Dienste von der NAS entfernt.:

rpm -e nas-tr-20110609-1.armv5tel
rpm -e mt-daapd
rpm -e gstreamer-0.10.25-1.fc12.armv5tel gstreamer-python-0.10.16-1.fc12.armv5tel gstreamer-plugins-good-0.10.16-7.fc12.armv5tel gstreamer-ffmpeg-0.10.10-1.fc12.armv5tel gstreamer-tools-0.10.25-1.fc12.armv5tel gstreamer-plugins-base-0.10.25-5.fc12.armv5tel
rpm -e netatalk
rm -r /etc/netatalk

rpm -e minidlna
rm /etc/minidlna*

rpm -e vsftpd
rm /etc/vsftpd/vsftpd.conf.rpmsave

rpm -e cups-1.4.1-13.fc12.armv5tel

Jetzt fehlen der NAS alle Dienste die ich persönlich nicht auf meiner NAS sehen möchte.
Jetzt installiere ich mit die grundlegenden Linux Werkzeige lsof, wget, passwd und bzip2

rpm -i bzip2-1.0.5-6.fc12.armv5tel.rpm
rpm -i tar-1.22-8.fc12.armv5tel.rpm
rpm -i rsync-3.0.6-3.fc12.armv5tel.rpm
rpm -i libuser-0.56.12-1.fc12.armv5tel.rpm # abhängigkeit vin passwd
rpm -i passwd-0.77-1.fc12.armv5tel.rpm
rpm -i wget-1.11.4-5.fc12.armv5tel.rpm

Um auf der NAS Cronjobs ausführen zu können benötige ich eine reihe von zusäztlichen Paketen.:

rpm -i crontabs-1.10-31.fc12.noarch.rpm cronie-1.4.3-2.fc12.armv5tel.rpm sendmail-8.14.3-8.fc12.armv5tel.rpm cronie-anacron-1.4.3-2.fc12.armv5tel.rpm procmail-3.22-25.fc12.armv5tel.rpm cyrus-sasl-2.1.23-2.fc12.armv5tel.rpm hesiod-3.1.0-16.armv5tel.rpm

Jetzt da ich Cronjobs anlegen kann lasse ich mir bei dieser Gelegenheit anzeigen ob jemand aktuell auf dieser CL-35B2 eingeloggt ist. (Ich habe ja ein paar LED’s an der NAS)

ln -s /sys/devices/platform/leds-gpio/leds/firmware/brightness /root/led-hd1
ln -s /sys/devices/platform/leds-gpio/leds/system/brightness /root/led-system
ln -s /sys/devices/platform/leds-gpio/leds/usbcopy/brightness /root/led-usbcopy

… und ein kurzes Shellscript namens countuser.sh das die Anzahl der aktuell eingeloggten benutzer Zählt und die LED setzt.:

#!/bin/sh

COUNT=$(who|wc -l);
if [ $COUNT = "0" ]; then
/bin/echo 0 > /root/led-system
else
/bin/echo 1 > /root/led-system
fi

exit 0

Das Script ausführbar machen:

chmod +x ~/countuser.sh

…und ein cronjob für das countuser.sh-Script anlegen.:

crontab -e

SHELL=/bin/bash
PATH=/sbin:/bin/:/usr/sbin/:/usr/bin

* * * * * /root/countuser.sh

# dann die NAS-Box rebooten:

reboot

# nur wenn die BOX via SSH zu erreichen ist und ich mich einloggen kann schale ich via:

chkconfig --level 123456 telnet off

# Telnet deinstalliere ich via

 rpm -e telnet-server-0.17-45.fc12.armv5tel

# zu guter letzt kopiere ich mir noch die bash startdateien in den /root Ordner:
.bash_logout  .bash_profile  .bashrc

ddclient (DynDNS) installieren:

wget http://cdn.dyndns.com/ddclient.tar.gz
tar -xzvf ddclient.tar.gz
cd ddclient-3.7.3/
mkdir /etc/ddclient
mkdir /var/cache/ddclient
cp ddclient /usr/local/sbin
cp sample-etc_ddclient.conf /etc/ddclient/ddclient.conf
cp sample-etc_rc.d_init.d_ddclient /etc/rc.d/init.d/ddclient
chkconfig --add ddclient
cd ..
rm -rf ddclient-3.7.3/
rpm -iv --nodeps cron*

Die Pakete stammen alle aus dem Veralteten Repository auf:

http://ftp.linux.org.uk/pub/linux/arm/fedora/pub/fedora/linux/releases/12/Everything/arm/os/Packages/

Ergänzung:

Die alten root Passwörter für die CL-25B2, „root“ und „toor“ scheinen in der Aktuellen Firmware nicht mehr verwendet zu werden.

21 Antworten auf „CL-35B2 hacken, Dienste aufräumen sowie SMB und NFS anbieten“

  1. Vielen Dank für die ausführlichen Anweisungen zum NAS.
    Schreiben Sie die Anweisungen für die vollständige Sicherung und die Vollflash-NAND-Wiederherstellung. Ich möchte experimentieren, aber mit der Möglichkeit einer vollständigen Genesung. Vielen Dank

    1. Nach dem aufräumen der CL-35B2 bleiben nur noch circa 50MB freier Speicherplatz frei. Ist das nicht zu wenig um noch etwas sinnvolles mit Webmin anzufangen?
      Da könnte es interessanter werden es vorher mit einem neuen, zusäzlichen Flash und einem eigenen System zu versuchen.
      Leider bekomme ich den Netzwerkadapter nicht in einen Aktuellen Linux Kernel 🙁 any ideas?

  2. Achtung! Das Nas blockiert neuerdings meinen Internetzugang. Es gibt im Netz mehrere Berichte mit dem selben Problem.

    Am liebsten würde ich nun eine ganz andere Firmware aufspielen. War echt kein guter Kauf

  3. Ich habe eine lösung für den vermissten root unter telnet.

    Folgende Schritte:
    1. Systemsicherung machen
    2. Sicherheitskopie der systemsicherung machen
    3. shadowdatei mit einem editor (ich habe notepad++) bearbeiten unt die zeile admin::etcetera an die stelle der Zeile root::etcetera setzen. dann in der selben Zeile admin durch root ersetzen.
    4. shadow speichern und so wie sie ist wirder in die Zipdatei packen.
    5. Backup aufspielen und neu starten.
    TADA Root zugang

    1. Hi Miko,

      Deine Lösung ist ein toller Hack. Ich habe einen Raspberry Pi, der mit „john“ bereits seit über 93 Tagen nach dem root Passwort zu Tobis Hasch fahndet.
      Es wäre schön wenn jemand Deinen Hack mit einer aktuellen CL35B2 testen würde.

      Grüße aus Berlin,
      der_metzger

      1. Der nRaspberry ist denkbar ungeeignet für so eine rechenintensive Aufgabe. Ich habe den Hack auf der aktuellen gemacht.

        Fedora release 12 (Constantine)
        Kernel 2.6.31.14-fast-20110801-fan on an armv6l (0)
        Jedenfalls bekomme ich keine neuere FW momentan. Und ehrlich gesagt warum sollte ich auch?

        Ich frage mich eher wie ich die RPMs aufs Gerät bekomme.

  4. Hallo zusammen,

    das ganze hier ist zwar schon etwas älter, aber ich habe das gleiche Problem, komme leider nach einem Update nicht mehr aufs NAS, habe aber die Zeile aus der /etc/shadow :
    root:$1$fPmgT/Jh$6BCsx5MdLvoj9fwXzPQDo0:17058:0:99999:7:::

    Kann man ggf. mit dem Rettungssystem die /etc/shadow überschreiben oder muss man beim ubi Dateisystem etwas beachten?

    Gruß Tobi

  5. Hallo. Zunächst einmal zum Root Passwort: toor funktioniert bei mir auch nicht. aber toortoor geht. 🙂
    Jetzt zu meinem Problem: Ich hab wohl ein wenig zuviel auf dem NAS als root rumgefummelt und nun ist meine komplettes GUI hin. Gibt es irgendeine (einfache) Möglichkeit das Linux-System und damit das NAS wieder in den Urzustand zu versetzen (Image Restore oder so?) Wenn möglich ohne Datenverlust, aber wenn´s nicht anders geht muss ich halt die Platten vorher sichern.

    Wäre für Hilfe sehr dankbar.

    1. Zuerst mit Telnet zur Ip der NAS Verbinden…
      telnet 192.168.1.1
      Im Anschluss fragt die NAS nach dem Benutzernamen, an dieser Stelle root eingeben und mit ‹enter› bestätigen. Anschließend, als Passwort das Passwort toor eingebenund auch dies mit ‹enter› bestätigen.

      dann bist du auf der Shell deiner NAS…

      Tut nicht ist leider sehr „unscharf“… kopier doch einfach deine Telnetausgabe hier her… dann schaue ich mal…

      1. Hallo metzger, ich habe die aktuelle Frimware 20150429 da funktioniert das alte root Passwort „toor“ und „toortoor“ nicht mehr… Hast du eventuell das aktuelle Passwort oder einen Lösungsansatz? Ich würde gerne ownCloud installieren.

        Gruß
        Luc

        1. Leider habe ich das aktuelle root-Passwort nicht. (noch?)
          Wenn du mir Zugriff auf die Zeile ^^root.. aus der Datei /etc/shadow gewähren könntest sollte es jedoch rauszufinden sein. Kopiere am besten gleich noch die ^^root… Zeile aus der /etc/passwd

          1. Aus passwd: root:x:0:0:root:/root:/bin/bash
            also encrypted password in der /etc/shadow und die kann ich nicht lesen „cat: shadow: Permission denied“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.