Compare commits
14 Commits
menu-fixes
...
794e4d2abe
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
794e4d2abe | ||
|
|
623955acb5 | ||
|
|
177fcd21b4 | ||
|
|
a5ce82d855 | ||
| ba970acc82 | |||
| cb0999b5ee | |||
| 3cb4ec3b35 | |||
| 23246d9a08 | |||
| 836c3787a3 | |||
| 956c7dabb4 | |||
| c1faf70eee | |||
| bcc41252bb | |||
| 4a52f6b313 | |||
| 7e34f6d290 |
@@ -15,7 +15,7 @@
|
||||
<ul class="nav navbar-nav">
|
||||
<li><a href="/">Home</a></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><a href="/about.html">Über uns</a></li>
|
||||
<!-- <li class="divider-vertical"></li>
|
||||
|
||||
@@ -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/)*
|
||||
|
||||
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.
|
||||
|
||||

|
||||
*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.
|
||||
|
||||
11
_posts/2025-01-09-hip6-voraus.markdown
Normal file
11
_posts/2025-01-09-hip6-voraus.markdown
Normal 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.
|
||||
32
_posts/2025-03-10-hip6.markdown
Normal file
32
_posts/2025-03-10-hip6.markdown
Normal 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.
|
||||
|
||||

|
||||
*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.
|
||||
|
||||

|
||||
*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!
|
||||
|
||||

|
||||
*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!
|
||||
73
_posts/2026-04-15-firmware-updater-fix.markdown
Normal file
73
_posts/2026-04-15-firmware-updater-fix.markdown
Normal 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
|
||||
|
||||

|
||||
|
||||
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.
|
||||
@@ -142,22 +142,32 @@ ul.nav>li>a {
|
||||
border-left-color: #111111;
|
||||
}
|
||||
|
||||
@media (max-width: 767px) {
|
||||
@media (max-width: 1023px) {
|
||||
#large-header {
|
||||
display: none;
|
||||
}
|
||||
nav .container {
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
.navbar-header {
|
||||
box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.5);
|
||||
float: unset !important;
|
||||
}
|
||||
.navbar-brand {
|
||||
display: block;
|
||||
}
|
||||
.navbar-collapse .nav>.divider-vertical {
|
||||
display: none;
|
||||
.navbar-collapse.collapse {
|
||||
display: none !important;
|
||||
}
|
||||
.navbar-collapse.collapse.in {
|
||||
display: block;
|
||||
}
|
||||
button.navbar-toggle {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
@media (min-width: 1024px) {
|
||||
.navbar-brand {
|
||||
display: none;
|
||||
}
|
||||
|
||||
BIN
media/2022-10-14/abzug-loetstelle.jpg
Normal file
BIN
media/2022-10-14/abzug-loetstelle.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 85 KiB |
BIN
media/2025-03-10/hip01.jpg
Normal file
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
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
BIN
media/2025-03-10/hip03.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 147 KiB |
@@ -13,6 +13,6 @@ layout: default
|
||||
<script>
|
||||
window.SpaceApiStatistic(
|
||||
document.getElementById('root'),
|
||||
{ apiUrl: 'https://status.chaospott.de/api/' }
|
||||
{ apiUrl: 'https://status-v2.chaospott.de/api/' }
|
||||
);
|
||||
</script>
|
||||
Reference in New Issue
Block a user