Compare commits

14 Commits

Author SHA1 Message Date
Daniel Maslowski
794e4d2abe posts: add bitbyteshark's firmware updater fix
Signed-off-by: Daniel Maslowski <info@orangecms.org>
2026-04-15 17:35:23 +02:00
Daniel Maslowski
623955acb5 WIP:: layout 2025-03-10 23:56:31 +01:00
Daniel Maslowski
177fcd21b4 menu: rename Logbuch -> Blog to fit all viewports 2025-03-10 23:55:57 +01:00
Daniel Maslowski
a5ce82d855 switch to mobile menu on viewports up to 1024px already 2025-03-10 23:55:57 +01:00
drg
ba970acc82 Fotolink korrigiert 2025-03-10 20:36:27 +01:00
drg
cb0999b5ee init Post 2025-03-10 19:58:30 +01:00
3cb4ec3b35 deRiiR 2025-03-05 21:56:28 +01:00
23246d9a08 RiiR 2025-03-05 21:52:32 +01:00
836c3787a3 RiiR status 2025-03-05 21:43:41 +01:00
drg
956c7dabb4 Formulierung geändert 2025-03-05 21:39:17 +01:00
drg
c1faf70eee Bildlink korrigiert 2025-03-05 15:10:29 +01:00
drg
bcc41252bb Update Feb 25 2025-03-01 20:21:33 +01:00
drg
4a52f6b313 Alte Beiträge eingefügt 2025-01-09 20:39:03 +01:00
drg
7e34f6d290 init Post HIP6 2025-01-09 20:32:01 +01:00
11 changed files with 143 additions and 8 deletions

View File

@@ -15,7 +15,7 @@
<ul class="nav navbar-nav"> <ul class="nav navbar-nav">
<li><a href="/">Home</a></li> <li><a href="/">Home</a></li>
<li class="divider-vertical"></li> <li class="divider-vertical"></li>
<li><a href="/blog/">Logbuch</a></li> <li><a href="/blog/">Blog</a></li>
<li class="divider-vertical"></li> <li class="divider-vertical"></li>
<li><a href="/about.html">&Uuml;ber uns</a></li> <li><a href="/about.html">&Uuml;ber uns</a></li>
<!-- <li class="divider-vertical"></li> <!-- <li class="divider-vertical"></li>

View File

@@ -115,3 +115,12 @@ Zum Glück blieb etwas Kabel übrig, sodass wir das Netzteil wieder mit der rest
*Reparatur eines Lichterketten-Netzteils. Chaospott [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)* *Reparatur eines Lichterketten-Netzteils. Chaospott [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)*
Der Aufwand war minimal, das Erfolgserlebnis umso größer! Diese einfache Reparatur verlängert nicht nur die Lebensdauer der Lichterkette, sondern schont auch Ressourcen -- ein Gewinn für Nachhaltigkeit und Weihnachtsfreude zugleich. Der Aufwand war minimal, das Erfolgserlebnis umso größer! Diese einfache Reparatur verlängert nicht nur die Lebensdauer der Lichterkette, sondern schont auch Ressourcen -- ein Gewinn für Nachhaltigkeit und Weihnachtsfreude zugleich.
## Update Februar 25
Mal wieder hat eine Dunstabzugshaube den Dienst eingestellt. Nach der Demontage der Steuerplatine war der Verdächtige schnell gefunden: Eine kalte Lötstelle.
![Quelle: Chaospott]({{ site.url }}/media/2022-10-14/abzug-loetstelle.jpg)
*Kalte Lötstelle. Chaospott [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)*
Da das Gerät aufwendig verkabelt ist, haben wir einen kleinen Hausbesuch gemacht und die Lötstelle erneuert. Damit war das Problem schnell behoben und die Dunstabzugshaube wurde vor dem Schrott gerettet.

View File

@@ -0,0 +1,11 @@
---
layout: post
title: "Hack im Pott 6"
date: 2025-01-09 18:28:44
---
HIP HIP Hurra! Wir freuen uns, dieses Jahr vom **28. Februar - 02. März** die siebte Hack im Pott ausrichten zu können. Die Veranstaltung wird in den Räumen des **WIR-Haus in Wülfrath** in Kooperation mit dem Freifunk im Neanderland e.V. stattfinden, der uns Infrastruktur und Räumlichkeiten bereitstellt.
Impressionen findet ihr in unserem Logbuch von der [HIP4](https://chaospott.de/2020/03/22/hip4.html) und [HIP5](https://chaospott.de/2024/04/26/hip5.html), sowie in unserem [Podcast](https://podcast.chaospott.de/2018/02/24/sn014-hip2-hack-im-pott/).
Weitere Informationen findet ihr unter [hackimpott.de](https://hackimpott.de). Wir freuen uns auf viele Hipster.

View File

@@ -0,0 +1,32 @@
---
layout: post
title: "HIP6 Rückblick"
date: 2025-03-10 17:56:23
post_author: Christian
---
Vom 28. Februar bis zum 2. März 2025 fand die Hack im Pott erneut in Wülfrath statt. Das Event, unterstützt durch den [Freifunk Neanderland e.V.](https://neanderfunk.de/), lockte Technikbegeisterte aus ganz Deutschland ins [WIR-Haus](https://wir-wuelfrath.de/). Drei Tage lang drehte sich alles um kreative Technikprojekte, Neuigkeiten aus der IT-Welt und gemeinsames Tüfteln.
![Quelle: Chaospott]({{ site.url }}/media/2025-03-10/hip01.jpg)
*WIR-Haus bei Nacht. [Chaospott](https://chaospott.de) [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)*
Auf dem Programm standen Workshops zu praktischen Technikthemen wie SMD-Löten für Einsteiger, der Bau von DIY-Synthesizern und Vorträge über die Datensicherheit in der Medizin sowie moderne Programmiersprachen wie Zig. Doch auch die Teilnehmenden selbst brachten spannende Projekte mit: Ein Quake-3-Server wurde während der HIP aufgesetzt, ein Laser gravierte Handyhüllen und diverse LED-Projekte wurden zum Leben erweckt bzw. endlich abgeschlossen.
![Quelle: Chaospott]({{ site.url }}/media/2025-03-10/hip02.jpg)
*HSM-Workshop. [Chaospott](https://chaospott.de) [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)*
Neben den Workshops und Vorträgen stand der Austausch im Mittelpunkt der HIP: In entspannter Atmosphäre konnten sich die Hipster vernetzen, Wissen teilen und voneinander lernen. Das WIR-Haus erwies sich erneut als idealer Veranstaltungsort mit optimaler Ausstattung für ein chaotisches Wochenende. Auch im nächsten Jahr wird es wieder Gelegenheit geben, gemeinsam zu hacken, zu löten und zu tüfteln!
![Quelle: Chaospott]({{ site.url }}/media/2025-03-10/hip03.jpg)
*Gehäkelte Pinguine. [Chaospott](https://chaospott.de) [CC-BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)*
Ein Novum in diesem Jahr war die Übernachtungsmöglichkeit in einer Turnhalle. Da Wülfrath nicht für alle Teilnehmenden leicht zu erreichen ist, bot diese Lösung vielen die Möglichkeit, dennoch am Hack im Pott Wochenende teilzunehmen. Es war auch für uns das erste Mal, eine solche Unterkunft zu organisieren, und wir konnten wertvolle Erfahrungen sammeln. So haben wir beispielsweise festgestellt, dass es in der Nacht kühler wurde als erwartet. Dank des trotzdem sehr positiven Feedbacks und der gewonnenen Erkenntnisse planen wir, die Übernachtung für zukünftige Events wieder anzubieten.
Aktuelle Infos aus dem [Chaospott](https://chaospott.de) und von der HIP findet ihr unter:
* [@hackimpott@chaos.social](https://chaos.social/@hackimpott) #HipHipHurra
* [@chaospott@chaos.social](https://chaos.social/@chaospott) #c3e
Wir möchten uns an dieser Stelle bei allen Teilnehmenden bedanken, welche die Hack im Pott zu einem schönen Wochenende gemacht haben.
Glück auf!

View File

@@ -0,0 +1,73 @@
---
layout: post
title: "Fixen eines Firmware-Updaters"
date: 2025-04-15 17:35:00
post_author: Jan / bitbyteshark
---
Wer einem alten Laptop aus dem Keller noch einmal neues Leben einhauchen will, findet dabei nur selten eine Batterie in gutem Zustand vor. So ist es uns ergangen, als wir einen Dell XPS17 L702x mit Windows 7 (etwa aus dem Jahr 2010) wiederverwenden wollten. Für einen frischen Start wird zuerst kurz™ die neuste Firmware aufgespielt. Dafür stellt uns Dell den Firmware-Updater `L702X_A19.exe` für Windows von 2020 auf ihrer Website bereit. Doch ganz so leicht sollte es nicht sein.
## Fehlermeldung
![](https://md.chaospott.de/uploads/422fa04d-6f70-407f-937c-c87ade77346f.jpg)
Dank diesem eingebauten Schutzmechanismus lässt sich die Firmware nur mit eingestecktem Netzteil und eingesteckter Batterie ausführen, die außerdem auch noch zu mehr als 10% geladen sein muss. Der seit Jahren tiefenentladene Akku lässt jedoch nur noch eine maximale Ladung von 2% zu. Auch ein online beschriebener Bypass mit der Flag `/forceit` lässt hier leider kein Update zu.
Selbstverständlich will man dem Gerät hier trotzdem seinen Willen aufzwingen. Dazu reichten die Problemlösungsstrategien im Club von Firmware-Update via `fwupd`, über Patch der .exe-Datei mit Ghidra, bis hin zum Jumpstart des alten Akkus. Da ein Update via `fwupd` für dieses Gerät nicht verfügbar ist, haben wir uns dafür entschieden, den Umgang mit Ghidra zu lernen und etwas zu frickeln.
## Strategie
Die Idee ist, die Prüfung des Batteriezustandes im Programm zu finden und das Ergebnis zu invertieren oder die Prüfung im Ganzen zu überspringen. Ghidra zeigt uns die zu Grunde liegenden Assembly-Instruktionen der kompilierten Datei und erzeugt dazu dekompilierten C-Programmcode, der eine einfachere Interpretation ermöglicht.
Mit der Suche des Texts der Fehlermeldung ließ sich der Code-Abschnitt des Pop-Up-Fensters finden, der für den Klick auf OK mutmaßlich auch den Retry der Batterie-Prüfung auslöst. Da im Executable keine der ursprünglichen Funktionsbezeichnungen mehr erhalten bleiben, stochert man dabei etwas im Dunkeln und erschließt sich den Kontext nach und nach.
## Umsetzung
In mehreren Versuchen haben wir den Rückgabewert der Batterieprüfung ausgetauscht und den Vergleichswert überschrieben, haben damit aber zunächst nur neue Fehlermeldungen oder gar keine Änderung bewirkt.
Mehr Erfolg hatten wir schließlich mit einem switch-case-Statement, mit dem die verschiedenen Fehler-cases und auch der Erfolgs-case verarbeitet werden. Dort konnten wir den Initialwert so überschreiben, dass immer der Erfolgs-case ausgelöst wird.
Die konkrete Änderung wird im Assembly umgesetzt und muss der gleichen Größe der ursprünglichen Anweisungen entsprechen. In userem Fall sieht die Anweisung vor der Änderung so aus:
```
004031ac 8b 85 04 MOV EAX,dword ptr [EBP + int_for_case_switching]
f3 ff ff
```
Nach der Änderung mit konstantem Wert 7 so:
```
004031ac c7 c0 07 MOV EAX,0x7
00 00 00
```
Nach Einbau der Änderung lässt sich eine .exe exportieren und wir konnten so die neue Firmware doch noch installieren.
## Zum Nachmachen
Dell stellt das Executable "Dell XPS L702X System BIOS" für das Firmware-Upgrade auf die Verison A19 von 2020 online bereit. Um sicherzugehen, dass es sich um die identische Datei handelt, sollte die MD5-Checksum abgeglichen werden:
``` sh
md5sum L702X_A19.exe
e2c30fa6285242a6a56f9b5371ddb2fc
```
Die geänderten 6 byte können direkt auf die Datei angewendet werden:
```sh
cp L702X_A19.exe L702X_A19_patched.exe
echo -ne '\xc7\xc0\x07\x00\x00\x00' | dd of=L702X_A19_patched.exe obs=1 seek=12716 conv=notrunc
```
Die seek-Position ist hier die zu patchende Adresse und resultiert aus der in Ghidra angezeigten Adresse minus der Basisadresse (`0x004031ac - 0x00400000`) als Dezimalwert.
Hier die neue MD5-Prüfsumme:
```sh
md5sum L702X_A19_patched.exe
ea0d4df025d55bb3d0ac039bc9b872c7
```
## Fazit
Rückblickend ließ sich der Updater also doch noch überreden und hat sich super angeboten, um als Anfänger mit etwas Unterstützung zu basteln und Neues zu lernen.

View File

@@ -142,22 +142,32 @@ ul.nav>li>a {
border-left-color: #111111; border-left-color: #111111;
} }
@media (max-width: 767px) { @media (max-width: 1023px) {
#large-header { #large-header {
display: none; display: none;
} }
nav .container {
width: 100%;
margin: 0;
}
.navbar-header { .navbar-header {
box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.5); float: unset !important;
} }
.navbar-brand { .navbar-brand {
display: block; display: block;
} }
.navbar-collapse .nav>.divider-vertical { .navbar-collapse.collapse {
display: none; display: none !important;
}
.navbar-collapse.collapse.in {
display: block;
}
button.navbar-toggle {
display: block;
} }
} }
@media (min-width: 768px) { @media (min-width: 1024px) {
.navbar-brand { .navbar-brand {
display: none; display: none;
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

BIN
media/2025-03-10/hip01.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

BIN
media/2025-03-10/hip02.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB

BIN
media/2025-03-10/hip03.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

View File

@@ -13,6 +13,6 @@ layout: default
<script> <script>
window.SpaceApiStatistic( window.SpaceApiStatistic(
document.getElementById('root'), document.getElementById('root'),
{ apiUrl: 'https://status.chaospott.de/api/' } { apiUrl: 'https://status-v2.chaospott.de/api/' }
); );
</script> </script>