Archiv der Kategorie: PC-Kram

Meine Lieblingsbeschäftigung :)

Windows RDP: „Die angeforderte Funktion wird nicht unterstützt“ (CredSSP)

Zugegeben, ich bin etwas spät dran, aber heute bin ich bei einer Stelle mit CredSSP und RDP dann auch mal auf die Schnauze gefallen. Da mir das – dank sonst gepflegter Infrastruktur – bisher nicht begegnet ist hier nochmal zum Nachlesen. Und mich als Gedächtnisstütze.

Vorgeschichte

Verursacher der ganzen Misere ist CredSSP, der Credential Security Support Provider. Dieses Windows-Modul ist unter Anderem für die Authentifizierung von Nutzern bei Verbindungen über RDP (Remote Desktop Protocol) und WinRM (Windows Remote Management) zuständig. Durch einen Fehler im Umgang mit den Sitzungen (CVE-2018-0886) können Angreifer einen Man-in-the-Middle-Angriff ausführen und so die bestehende Sitzung übernehmen. Da RDP und WinRM häufig für administrative Zwecke genutzt wird, können sich so Unbefugte ggf. weitrechende Zugriffe auf die verwalteten Systeme beschaffen. Betroffen ist so ziemlich alles – vom einfachen Windows 7 über die Server-Produkte bis hin zum aktuellen 10 sowie Server 2016.

Fixing

Microsoft hat den Fix in mehreren Stufen ausgerollt. Erstmals erschienen passende Updates im März, welche das Problem prinzipiell beheben. Sofern sie überall installiert werden. Zwei Monate später, im Mai, zog der Hersteller dann die Sicherheitsschrauben an: Ab diesem Patch ist die Nutzung der Mitigation zwingend erforderlich.

Wer nicht plant guckt in die Röhre

Wer seine Systeme im Griff hat wird nicht viel merken – ist alles auf einem aktuellen Patchstand wird man von den Umstellungen nichts merken. Anders sieht es aus, wenn man bei den Updates nachlässig handelt. Hat der eigene Rechner bereits aktuelle Patches installiert, das Zielsystem jedoch seit März keine Wartung erfahren, hat man Pech: Der RDP-Client bzw. WinRM verweigern die Verbindung mit dem Zielsystem. „Die angeforderte Funktion wird nicht unterstützt“. Selbes dürfte auch für die andere Richtung gelten.

Und nu?

Was folgt sind zwei Dinge: Erst mal sollte man dem Verantwortlichen Admin des Zielsystems eine Schulung zu IT-Sicherheit verpassen, denn inzwischen mehr als ein halbes Jahr lang keine Updates installieren ist – zumindest meiner Meinung nach – grob fahrlässig. Danach sollte das Zielsystem natürlich auf einen aktuellen Stand gebracht werden – für den Zugriff mindestens notwendig ist der entsprechende CredSSP-Patch, welcher sich auch einzel im dazugehörigen Artikel finden lässt. Da für den nur ein Dopelklick notwendig ist kann das ggf. auch ein Poweruser mit passenden Zugriffen vor Ort erledigen. Hat man keine Möglichkeit das System selbst zu verändern muss man am Client ran: Hier kann man über die Registry oder per GPO auch unsichere Verbindungen zulassen und somit eine Verbindung zu den betroffenen Zielen wieder ermöglich. Dies sollte immer nur temporär geschehen – umstellen, verbinden, Fix installieren und wieder zurück. Keinesfalls sollte man während die Lockerung aktiv ist Verbindungen zu anderen Systemen aufbauen.

Registry

Hierzu liegt man unter HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters ein neues REG_DWORD mit dem Namen „AllowEncryptionOracle“ an und gibt diesem den Wert „2„.

GPO

Das Pendant in GPO-Form findet sich unter Computerkonfiguration\Administrative Vorlagen\System\Delegierung von Anmeldeinformationen\Encryption Oracle Remediation. Diese muss aktiviert und die Schutzebene auf „Vulnerable“ eingestellt werden.

EOF

Patchmanagement etablieren. Systeme zeitnah Patchen. Spart Arbeit. Und Axteinsätze bein den zuständigen Systembetreuern.

Docker: Start mit aktivem IPv6 nicht möglich

Docker kann bei mir nach wie vor zwei Lager bedienen: Die Idee von Containern klingt gut, die mangelnde Stabilität und viele Konzepte der Implementierung lassen mich aber nur den Kopf schütteln. Heutiges Thema: IPv6. Prinzipiell nicht wirklich nutzbar, da die meisten Orchestration-Systeme wie Kubernetes oder Swarm bisher laut Doku und Bugtrackern bestenfalls rudimentäre Unterstützung bieten. Docker selbst soll – laut Anleitung – jedoch mit wenigen Handgriffen IPv6-fähig gemacht werden können.

Klingt einfach? Tja, nach einem Neustart ließ sich der Docker-Daemon nicht mehr starten. Im Log fand sich folgendes:

dockerd: Error starting daemon: Error initializing network controller: Error creating default "bridge" network: could not find an available, non-overlapping IPv6 address pool among the defaults to assign to the network

Die Abhilfe ist recht einfach: Ein festes Netz vergeben. Hierzu in der daemon.json einen passenden fixed-cidr-v6-Eintrag machen:

{
"ipv6": true,
"fixed-cidr-v6": "2a01:1234:5678:9abc:def0::/112"
}

BitNotice #134 – Volkszähler-Daten mit Grafana visualisieren

BitNotice #134 - Volkszähler-Daten mit Grafana visualisieren

(77 MB) 00:17:25

2018-09-12 17:30 🛈

Das Projekt Volkszähler hatte ich ja schon öfter gezeigt: Mit diesem lassen sich über längere Zeiträume Messwerte sammeln und darstellen. Auch wenn es prinzipiell funktioniert: Inzwischen gibt es Konkurrenzprojekte, welche interessante Funktionen haben. Eines davor ist Grafana – eine reine Messwertvisualisierung, welche durch einfache Bedienung und großen Funktionsumfang heraussticht. In der aktuellen Version können auch Daten auf MySQL-Tabellen angezeigt werden – also jene Datenbank, die auch der „VZ“ nutzt. Verheiraten wir das Ganze doch einfach und nutzen Grafana zum Anzeigen der VZ-Daten.

Code

Using Channel-IDs (that’s not UUID)

SELECT
  timestamp/1000 as time_sec, 
  data.value as value, 
  properties.value as metric
FROM data
  LEFT JOIN properties ON (properties.entity_id = data.channel_id)
  LEFT JOIN entities ON (entities.id = data.channel_id)
WHERE 
  (channel_id = 1 || channel_id = 2 || channel_id = 3)  AND 
  (timestamp/1000) >= $__unixEpochFrom() AND 
  (timestamp/1000) <= $__unixEpochTo() AND
  properties.pkey = 'title'
ORDER BY timestamp ASC

Using channel names

SELECT
  timestamp/1000 as time_sec, 
  data.value as value, 
  properties.value as metric
FROM data
  LEFT JOIN properties ON (properties.entity_id = data.channel_id)
  LEFT JOIN entities ON (entities.id = data.channel_id)
WHERE 
  (properties.value = "Flur" || properties.value = "Werkstatt" ) AND
  (timestamp/1000) >= $__unixEpochFrom() AND 
  (timestamp/1000) <= $__unixEpochTo() AND
  properties.pkey = 'title'
ORDER BY timestamp ASC

Using UUID

SELECT
  timestamp/1000 as time_sec, 
  data.value as value, 
  properties.value as metric
FROM data
  LEFT JOIN properties ON (properties.entity_id = data.channel_id)
  LEFT JOIN entities ON (entities.id = data.channel_id)
WHERE 
  (uuid = "12345678-1234-1234-1234-1234567890ab" || uuid = "12345678-1234-1234-1234-1234567890ac" ) AND
  (timestamp/1000) >= $__unixEpochFrom() AND 
  (timestamp/1000) <= $__unixEpochTo() AND
  properties.pkey = 'title'
ORDER BY timestamp ASC

BitBastelei #299 – IMax B6 Tastentausch

BitBastelei #299 - IMax B6 Tastentausch

(143 MB) 00:09:22

2018-09-09 10:00 🛈

Momentan ist der Basteltisch durch defekte Geräte überfüllt, also machen wir das Beste draus und versuchen den Stapel langsam abzuarbeiten. Heute im Angebot: Mein Li-Ion-Ladegerät, welches ein paar Taster verloren hat und daher nur noch schwer zu bedienen ist.

BitBastelei #298 – BME280 am ESP8266: Temperatur, Luftfeuchte, Luftdruck per WLAN

BitBastelei #298 - BME280 am ESP8266: Temperatur, Luftfeuchte, Luftdruck per WLAN

(311 MB) 00:18:31

2018-09-02 10:00 🛈

Sensoren habe ich viele, der BME280 verspricht aber ein Alleskönner zu sein: Neben Temperatur und Luftfeuchte soll er auch den Luftdruck übermitteln können. Zusammen mit einem ESP8266 ist so schnell eine eigene „Wetterstation“ gebaut, welche die Messwerte auf einer Webseite anzeigt, per MQTT an Haussteuerungen wie HomeAssistant gibt oder mittels HTTP einen Volkszähler befüllt.

Code:
https://github.com/adlerweb/ESP8266-BME280-Multi
Video von Chris Figge
https://www.youtube.com/watch?v=KMwVNuzghsY

BitBastelei #297 – NEC P2200 Nadeldrucker

BitBastelei #297 - NEC P2200 Nadeldrucker

(288 MB) 00:23:39

2018-08-26 10:00 🛈

Bevor sich Laser und Tinte verbreitet haben druckten viele mit Nadeldruckern. Ähnlich wie eine Schreibmaschiene wird hier mit Farbbändern gearbeitet. Langsam und laut, aber auch günstig im Verbrauch und lange haltbar wird der Technologie nachgesagt. Schauen wir an diesem fast 30 Jahre altem Gerät, ob das so stimmt.

BitBastelei #296 – WiFi-Schalter Sonoff Basic – eWeLink, Tasmota, PlatformIO/Android

BitBastelei #296 - WiFi-Schalter Sonoff Basic - eWeLink, Tasmota, PlatformIO/Android

(278 MB) 00:31:55

2018-08-19 10:00 🛈

In der letzten Folge BitBasics hatten wir ja bereits gesehen, wie man mit einem ESP8266 einen WLAN-Schalter bauen kann. Heute werfen wir mal einen Blick auf ein kommerzielles Produkt.

Achtung: Der Anschluss an das öffentliche Stromnetz darf nur durch autorisiertes Fachpersonal erfolgen

Inhalt:

0:00 Das Gerät
4:24 Innenleben
6:26 Anschluss
8:39 eWeLink: Die offizielle App
13:32 Was ist Tasmota
15:11 Der Programmierport
23:07 Einrichtung und Nutzung von PlatformIO
26:09 Anpassung von Tasmota mit PlatformIO
28:47 Eigene Software mit PlatformIO

Links:

eWeLink: http://sonoff.itead.cc/en/ewelink
Tasmota: https://github.com/arendst/Sonoff-Tasmota
Produkt: https://amzn.to/2waRaFP *
oder: http://s.click.aliexpress.com/e/MizYO16 *
PlatformIO: https://platformio.org/
Selfmade-Code: https://github.com/adlerweb/sonoff-mqtt

* Affiliate-Link: Durch Nutzung erkennt der Anbieter, dass Ihr über meine Seite zu ihnen gefunden habt. Ich werde prozentual an euren Umsätzen beteiligt. Für euch bleiben die Preise natürlich gleich.

Das Gerät wurde selbst erworben.

BitNotice #133 – ESP32 jetzt direkt per Arduino nutzbar

BitNotice #133 - ESP32 jetzt direkt per Arduino nutzbar

(20 MB) 00:02:58

2018-08-14 19:45 🛈

Die Zeiten, in denen man selbst Hand anlegen musste sind vorbei: Seit einigen Tagen kann die ESP32-Toolchain für Arduino direkt über den Boardmanager installiert werden

BitBastelei #295 – Medion LifeTab USB-Reparatur

BitBastelei #295 - Medion LifeTab USB-Reparatur

(347 MB) 00:26:04

2018-08-12 10:00 🛈

Schon wieder ein Tablet mit USB-Schaden, diesmal aber eine etwas andere Dimension. Statt nur ein fertiges Modul zu tauschen ist hier – dank Sparzwang des Herstellers – viel Handarbeit nötig, denn die Buchse ist direkt auf dem Board festgelötet. Jeder Schaden des USB-Anschlusses betrifft somit direkt das ganze Mainboard und ist entsprechend aufwändig zu reparieren. Und dank des Designs lässt ein solcher auch nicht lange auf sich warten.

BitBasics – ESP8266 – 3: AC-Lasten (Netzspannung) schalten (Relais, Triac, SSR)

BitBasics - ESP8266 - 3: AC-Lasten (Netzspannung) schalten (Relais, Triac, SSR)

(338 MB) 00:30:56

2018-08-05 10:00 🛈

Wie man mit einem ESP8266 Gleichspannung schalten kann haben wir ja bereits gesehen, diese mal kümmern wir uns entsprechend um Wechselspannung wie er z.B. auch „aus der Steckdose kommt“.

Achtung: Bei Arbeiten an 230V besteht Lebensgefahr. Arbeiten an mit dem Stromnetz verbundenen Installationen dürfen nur von einer Elektrofachkraft durchgeführt werden. Die gezeigten Methoden dienen lediglich des Zeigens möglicher Bauteile, sind stark vereinfacht, besitzen nicht alle notwendigen Schutzeinrichtungen und sind in dieser Form NICHT für einen echten Einsatz geeignet.