 Man muss ein bisschen drüber sprechen, was ist überhaupt dieser Wenderlock, der so die ganze Zeit im Raum steht? Da tut sich in letzter Zeit ziemlich viel. Die Geräte, die importiert werden, da haben die Leute herausgefunden, es ist vielleicht gar nicht schlecht billiger Hardware wie STMs oder bekannte Chips zu verwenden, aber es gibt doch noch irgendwie Firmen, die nicht bekannt ist, es gibt doch noch irgendwie Chip Protection, die an ist, es gibt doch noch irgendwie Kleinigkeiten, die man im Endeffekt an einen bestimmten Hersteller binden und wo man nicht wirklich rauskommt. Ob es jetzt die Geräte sind, die zu einem speziellen Server sich nur zu connecten oder die Cloud- Infrastruktur von den Betreiber verwendet, es sind immer noch so Kleinigkeiten, die problematisch sind und wo man die Hardware aber so raus lösen kann aus dem Ganzen. Wie ich vorhin schon gesagt habe, oft hat man irgendwie so einen Raum im Kopf mit ganz vielen Geräten, ganz viel kompliziert an Platinen rumschrauben und vielleicht ein Ostzieh noch im Raum und noch einen Logic-Analyser da und ja, die Leute gibt es und die Leute sind wichtig, um da weiter zu arbeiten, aber das ist nicht alles. Man kann auch Hardware von diesem Vendorlock befreien, ohne sie überhaupt zu öffnen. Und deswegen gehe ich mal, ich will so drei Beispiele sehr sagen, an denen ich in den letzten acht Jahren im Endeffekt gearbeitet habe, die irgendwie so Community gekriegt haben und so ein bisschen weiterführen und auch wie lange das gedauert hat, bis das passiert ist. Eines der ältesten Projekte, wo ich, was wirklich jetzt neun Jahre her ist oder so, also ich habe mein Github repository angeguckt, ich habe das vor neun Jahren ins Leben gerufen und davor noch daran gearbeitet, der ELMO L12. Im Endeffekt ist eine Dokumentenkamera. Es gibt auch Sinn, warum das jetzt plötzlich Traktion gekriegt hat, dieses Projekt, weil ganz viele Dokumentenkameras plötzlich eingesetzt wurden. Aber an sich hatten wir damals eigentlich nur ein Problem. Es gab keinen Linux-Kleint. Wir saßen da in der Schule und es gab keinen Linux-Kleint. Und wir wollten diese Dokumentenkamera aber eigentlich wirklich verwenden. Also sind wir auf die Lehrer zugegangen und haben gefragt, hey, können wir in der Freizeit, in den Freistunden, können wir uns diese Dokumentenkamera schnappen, anschließen und uns angucken, was die eigentlich tut. Wir mussten versprechen, dass wir sie nicht aufschrauben. Wir mussten versprechen, dass nichts kaputt geht. Aber an sich durften wir das tun. Das Erste, was man irgendwie so macht, ist, man schnappt sich die Originalsoftware. Das war in dem Fall unter Windows. Schaut sich die Pakete an. Das sind jetzt nicht die Pakete direkt, sondern es ist einfach nur ein Beispiel an Originalsoftware. Oder ein Beispiel, man schneidet quasi die USB-Pakete mit und schaut sich an, was wird denn da überhaupt geschickt? Macht sich so ein Reim draus, wenn ich den Button drücke, wenn ich das mache, wenn ich das mache und guckt, wo hat man Ähnlichkeiten drin? Das kann man auch schon machen, ohne überhaupt technisches Verständnis zu haben. Also es geht eigentlich nur darum, Daten zu sammeln erstmal und vielleicht so ein bisschen zu kategorisieren, wie ich habe jetzt in der Zeit auf den Button gedrückt. Und dadurch kriegt man so ein bisschen Verständnis dafür, wie sie überhaupt kommuniziert. Wenn man das eine Weile dann macht, hat man irgendwann so ein Protokoll-Liste im Endeffekt zusammen, wo man anfangen kann, sie zu schicken. Da geht es dann schon wieder ins Programmieren und ins Technische rein. Aber allein nur dieses zu dokumentieren, was für Anschlüsse hat das Ding, was für eine Originalsoftware gibt es, kann man irgendwie an Firmenwärmen kommen, die unabhängig von diesem Gerät ist, so was zu dokumentieren, hilft den Leuten, die dann technisch später wirklich weiter auch dran arbeiten, unglaublich, weil es sehr, sehr viel Arbeit abnimmt, um solche Sachen zu suchen und vielleicht auch die Hürde an sowas zu arbeiten deutlich niedriger setzt. Wir hatten wirklich irgendwann einfach die Kamera, wir wussten, die Pakete aufgebaut waren, wir konnten alles mögliche damit machen. Wir konnten plötzlich, wir konnten plötzlich, wir hatten schnellere Applikationen als die Originalsoftware. Sie war stabiler, sie war besser, sie hatte bessere Bilder am Ende und als wir an die Firmen rangetreten waren, wurden wir, ja, sie meinten im Endeffekt, sagt bloß nichts weiter so ungefähr. Aber wir haben es trotzdem, wir haben es auf GitHub geladen, das war okay, es lief da irgendwie so, es lag da. Kurze Zeit später, was heißt kurze Zeit später, acht Jahre später, habe ich eine Mail gekriegt, dass es plötzlich an diversen Unis eingesetzt wird und an diversen Schulen eingesetzt wird, weil die alle das gleiche Problem hatten und sie im Endeffekt Research, den wir betrieben haben, weitergeführt haben und eine Oberfläche draufgesetzt haben. Was sehr, sehr schön zu sehen ist, weil ich bin kein Programmierer, ich kann keine Oberflächen schreiben und wenn sich schon mal Programmiere angeguckt haben, welche, wie Angriffssoftware von offensiven Leuten ausschaut und wie viele Buttons es gibt und wie schlecht die UI ist, es sind halt einfach keine Programmierer und endlich hatte jemand was draufgesetzt, um quasi das zu verwenden und es war schön. Das war, da hat man gesehen, man muss das nicht alleine machen, sondern man ist, wir sind einen Teilschritt gegangen und die Nächsten haben es weitergeführt und das war ein wunderschönes Projekt, inzwischen ist es portiert, inzwischen hat es ein UI, ich glaube, das kann man auch ein bisschen weiterführen noch, kann ich später auch gerne nochmal irgendwie verlinken. Ein anderes Projekt, was ein bisschen tiefer dann wieder reinging, war ein Stehschreibtisch, mit dem wir uns sehr, sehr lange auseinandergesetzt haben. Da war die Frage, irgendwie will ich, ich habe so Preset Buttons, aber ich will ein bisschen mehr Feature haben, ich will, man kann jetzt dafür zahlen, also man kann weiter bauen und man kann dafür zahlen, ich glaube, aber die Firma hat es zu dem Zeitpunkt auch nicht angeboten oder man kann sich angucken, was passiert da überhaupt, also was macht es überhaupt. In dem Zuge war das erste, was wir gemacht haben, wir haben es aufgeschraubt. Es gab schon Research zu den Themen, es gab schon Platinen im Online, man konnte schon Bilder davon angucken, man konnte schon die Chips raussuchen, wir wussten also, was erwartet uns circa und haben uns entschieden, wir sollten das vielleicht direkt auf der Platine angucken und das haben wir auch gemacht. Wir haben uns dazwischen geschalten, wir haben uns zwischen die Kommunikation geschalten von diesem Button-Panel zu dem Motorcontroller und haben ganz viele coole Dinge rausgefunden, konnten dann am Ende die Höhe inkodieren, konnten am Ende freie Höhen ansteuern und dergleichen. Es war also ein Projekt, was wir als auch wieder, das lief nicht an einem Tag, das lief über einen Monat hinweg, wo wir immer wieder so ein bisschen was dahingeschoben haben, da gab es auch ein GitHub Repository zu und gibt es immer noch, wo wir dann so ein bisschen dahingeschoben haben und andere Leute haben dann weitergeführt oder haben weiter gefragt, diese Höhenkodierung stammte nicht von mir, sondern die kommen aus einem Mikrocontroller Forum, wo einer nachgefragt hatte und er meinte, oh, das sieht ähnlich aus. Es sieht nicht alles, kann man irgendwie, macht man da selber, sondern es ist eine Gruppenarbeit an sich und das endet da auch wieder darin, dass die Software, also das Protokoll stand fest, es war alles gemacht, es musste eine UI geschrieben werden, um das Sauber zu verwenden, es wurden noch Platinen gebaut, um das Sauber zu intercepten und dergleichen anderen und am Ende hat sich das jemand angenommen und hat eine UI drauf gepackt und hat es verfügbar gemacht für alle plötzlich. Was sehr schön ist, weil plötzlich sieht man, man ist ein kleiner Teil, der das weitergeführt hat und jemand, der nicht in diesem Reversing drin ist und nicht die Protokolle anguckt und dergleichen, hat aber seine Dokumentation genommen, die man aufgebaut hat und weitergeführt und ein Projekt rausgemacht und was cool ist, rausgemacht. Auch ein Beispiel, wo es jetzt aber nicht mehr um aufschrauben geht, sondern wo es wirklich um reine, ich gucke ein Gerät an und gucke, was ich damit machen kann, wie weit ich damit gehen kann, das ist ein laufendes Research oder laufendes Projekt bei mir, das ist ein Luftsensor, der sehr fragwürdige Verkaufszahlen hatte, weil er mit Krypto irgendwie Dinge gemacht hat, aber nachdem die irgendwie eingestellt haben und keine Kryptokreunds mehr gemeint haben oder so, ist die Hardware preislich so in den Boden, in den Keller gefallen, dass die günstig zu haben sind, weil die Firma einfach, ja, niemand wollte sie mehr haben. Oder der Markt war saturiert im Endeffekt. Und da war die Frage, man hat jetzt so coole Hardware, man hat ein cooles Display irgendwie, so kann man da irgendwas mitmachen, was kann die Firma alles? Niemand wusste, ob die Firma alles konnte, weil die Firma update sich automatisch bei den Dingern, man stellt sie ins Netz und dann macht die irgendwie so alles automatisch. Also ging es darum, wie kommen wir daran? Man kann es jetzt aufschrauben, man kann jetzt die Chips angucken und dergleichen, aber vielleicht sollte man sich erst mal von von außen angucken, was ist offen bei dem Ding, womit kommuniziert es und dergleichen. Und das haben wir gemacht. Wir haben einen DNS-Server hochgezogen, wir haben geguckt, wohin kommuniziert der, wir haben den OTA, dieses Update Over the Air im Endeffekt, umgeleitet auf uns und haben die Firma dazwischen rausgeholt. Das heißt, wir hatten plötzlich einen Firmware-Blob, den wir angucken konnten und netterweise konnten wir auch gleichzeitig in diesem Firmware-Blob auch noch umschreiben, dass wir nicht mehr dahin kommuniziert, sondern in Zukunft zu uns kommuniziert und wir jederzeit die Firmware neu schreiben konnten. Dadurch, dass der Chipsatz auch bekannt ist, das ist ein STM32, soweit ich mich erinnere, können wir auch jederzeit eigene Firmware darauf setzen, wenn wir das weiter nochmal die Firmware angeguckt haben. Aber ich glaube auch nicht, dass ich derjenige bin, der diese Firmware weiter anguckt, sondern das ist ein Projekt, was da steht und wo ich auch wieder hoffe, dass Leute sagen, cool, wir wollen vielleicht noch die Funktion drin haben oder die Funktion. Das heißt, an sich basiert es eigentlich immer so auf zwei Dingen. Man kann entweder oder zwei wichtigen Elementen, man guckt das Gerät von außen an oder man guckt das Gerät von innen an. Beide sind valide und beide haben ihren Zweck. Beide haben unterschiedliche Schwierigkeiten. Was man also machen kann, man kann das so generalisieren und sagen, was kann ich eigentlich machen, ohne das Gerät zu öffnen? Ich kann die hardware ganz normalen Betrieb nehmen und angucken, was funktioniert eigentlich? Ich kann das Gerät dokumentieren, es hilft unglaublich, einfach nur Bilder zu haben von den Ports, Bilder zu haben von, sieht man irgendwelche Pins irgendwo, weil das die Kaufentscheidung für Leute, die das dann weiter angucken, senkt. Also wenn ich mir angucke, ob ich ein Gerät, ob es in Anführungszeichen wert ist, angeguckt zu werden, wo ich mir denke, ich habe da einen Benefit davon und laufe nicht irgendwo dagegen, gucke ich erst mal, was haben andere Leute eigentlich gemacht, gibt es Bilder davon, gibt es FCC-Dokumente, die die Internals beschreiben und das sind alles Dinge, wofür man eigentlich kein technisches Wissen braucht, sondern das ist Zuerbeit, das ist Hilfe, das ist Dokumentationshilfe und diese Dokumentationshilfe ist unglaublich wichtig in einem offenen Projekt, weil ohne Dokumentation ist man irgendwie alleine mit seinem Kopf und niemand kann da irgendwie so richtig reingucken. Und dann geht es dann, dann kann man natürlich weitergehen, was passiert, wenn das Gerät in deinem Netzwerk ist, kann man sich, kann man springen, kann man einen Endmap-Scannen drauf laufen lassen und so weiter, da kommen wir dann in diese technischen Geschichten rein, die dann komplizierter werden und wo man sich aber auch angucken kann, auch da einen Endmap-Scannen laufen zu lassen, ist nicht die Welt, sag ich mal so, und dieses Ergebnis irgendwo hinzupacken und jemand kann es dann auswerten oder kann es auch mit der Person zusammen auswerten, die ihn gemacht hat. Das ist Wissen sammeln für einen selber und langsam in dieses, was passiert da eigentlich, reingucken. Zum Beispiel, was so ein Dokumentationsarbeit ist, ich mache teilweise Fotos von Platinen und kreise mir Dinge ein, schreibe die Ports dazu, male Traces nach, weil ich so deutlich schneller irgendwie wieder was sehe, als wenn ich einfach nur eine wilde Zeichnung habe. Und das ist etwas, was Freunde von mir schon gemacht haben, was die nicht technisch versiert sind, eben die einfach angeguckt haben und es nochmal, nochmal nachgezeichnet haben, nochmal besser dokumentiert haben, vielleicht zusammen gesammelt haben, Informationen zusammen gesammelt haben und das hilft, hilft so viel. Wenn man einen Schritt weitergehen möchte, kann man sich natürlich überlegen, zum Beispiel, wie kriegt man ein Gerät überhaupt auf? Macht man es kaputt dabei? Ich habe mir vor zwei Jahren eine Tony-Box angeguckt, die ist bis heute nicht mehr korrekt zusammengebaut, weil Clips abgebrochen sind bei dem Versuch, weil nicht klar war, wo, was, wie, aufgeht. Das ist auch ein wichtiges Element eigentlich, weil man später ja idealerweise eigentlich schon wieder ein ganzes Gerät haben möchte. Braucht man besondere Schraubendreher, die man noch organisieren muss? Braucht man, das sind alles so, das Ganze irgendwie so ein bisschen bremst und so ein bisschen langsamer macht, das ist ja auch okay, aber es ist, es hindert, es macht es, macht es problematischer. Und wenn man dann die Platine offen hat, macht man Foto davon und dann sieht man schon, oh, die vier Pins sehen seltsam aus, da könnte was sein. Oh, da steht zum Beispiel irgendwas, da könnte auch was sein. Das sieht man oft in den FCC-Dokumenten beispielsweise, das sieht man oft in allen möglichen, also wenn man diese Platinen einfach sieht. Aber das ist das Wichtigste, was ich bevor ich ein Gerät kaufe, tue. Und ich glaube, das tun, soweit ich mich in meinem Freundeskreis, in meinem Hardware-Hacker-Freundeskreis umhöre, schauen alle erst mal nach Platinenfotos von dem Ding, bevor sie sich entscheiden, ob sie was kaufen oder nicht, oder ob sie was weiter angucken oder nicht, weil es keinen Sinn ergibt, für viele sich in Labor zu stellen und einzelne Chips runter zu, zu slicing bis und und das geht, also es geht einfach zeitlich nicht, das ist einfach viel viel viel Arbeit. Und da geht man natürlich auf die einfachen Ziele und die, diese Ziele, die auch was bringen, wo Probleme formuliert sind, wo man weiß, dass man neue Features haben möchte. Sowas hilft auch unglaublich, also allein schon, allein schon ein Problem zu finalisieren oder zu formulieren, wie ich möchte, ich möchte, dass das Gerät das und das kann. Es hilft einem wirklichen, also einem Menschen, der angreift oder eine Software sich anschaut oder eine Hardware sich anschaut, sehr, wie gehe ich damit um? Oder will ich mir das angucken? Ist es das anscheinend, hat da jemand eine Idee? Weil ich sehe ein Gerät und weiß nicht, was könnte man dann noch mitmachen. Das ist so der Gedankengang. Genau, das heißt, man muss nicht immer derjenige sein, der Hardcore irgendwelche Chips glitcht oder der irgendwas. Also ich für meinen Teil finde Dokumentation von diesen ganzen Projekten so viel anstrengender und so viel problematischer und ich glaube, so viele Projekte scheitern an guter Dokumentation, weil der Gedankengang oder die Gedanken nicht ordentlich runtergeschrieben sind und ich kenne so viele unfertige Blogartikel von Leuten, die coole Dinge gemacht haben, aber sie nicht hinkriegen, sie zu formulieren und das ist schade, das ist unglaublich schade und da könnte man so viel mehr machen, wenn man sich, wenn man Leute um einen rum hat, die einem helfen, sowas zu formulieren und die helfen, ja, die einfach da sind und helfen. Insofern bildet Banten, macht coole Dinge zusammen, sucht euch einen Hardware-Hacker, sucht euch jemanden, der gut dokumentieren kann, sucht euch jemanden, der gut schreiben kann, gut sucht euch jemanden, der gut mit einem Logic-Analyzer umgehen kann. Nicht jeder kann alles und das ist auch normal so und es ist auch gut so und es ist auch okay so. Wenn ich Kryptoprobleme habe, gehe ich auch zu einem Kollegen, weil ich Basics im Krypto habe, aber ich bin kein Kryptograf und so ist es bei Hardware-Hacking genauso. Die großen Projekte wie OpenWRT, Lede, LineageOS sind nicht so groß geworden, weil einer dahinter saß, der sie hoch gemacht, hochgebracht hat, sondern die sind langsam entstanden und sind nach und nach gewachsen mit vielen Leuten und ich glaube nur so kann man Hardware nachhaltig verändern, indem man als Gruppe das macht. Genau, ja, also falls ich noch irgendwie Fragen habe dazu oder Anregungen oder was man machen könnte beispielsweise, um das zu vereinfachen, eine, ich dachte schon über Plattformen nachgedacht, um solche Gedankengänge zusammenzubringen, aber die gibt es eigentlich, die gibt es zu Hauf und müssen nicht neu betrieben werden eigentlich. Die müssen nur genutzt werden und ich bin für Ideen auch gerne immer da. Danke. Wenn du ein neues Stück Hardware analysieren, anfangen würdest zu analysieren. Wo würdest du auf dem Internet sowas veröffentlichen? Es zu veröffentlichen, also um anzufangen, um für so ein Kick-off des ganzen Prozesses der Analyse, würdest du das auf deine Website oder auf GitHub oder? Also ich versuche nichts oder sehr, sehr wenig auf eine eigene Website zu packen inzwischen. Genau diesen Research oder genau diese Projekte versuche ich immer auf öffentliche Sachen zu packen. Ich habe mir lange überlegt, ob ich genau, ich habe sowas erwartet, ich habe so eine Frage erwartet und ich habe lange überlegt, ob ich GitHub sagen soll. Und sie haben ihre Probleme, aber es ist doch noch die Plattform, wo die meisten Leute nach irgendwas suchen. Und glaube, dass es auch eine sehr gute Kollaborationsplattform ist. Also ich habe lieber ein offenes GitHub, GitHub, irgendein Git Repository auf einer großen Plattform, als es versteckt auf irgendeiner privaten Seite, weil diese private Seite nicht interagierbar ist im Endeffekt. Also ich kann darauf aufbauen und ich kann sie nutzen, aber für Projekte, die angefangen sind und die aber noch nicht vollendet sind und ich frage mich immer, was bedeutet das überhaupt, wann ist so ein Hardware wirklich offen, finde ich, dass ein Kollaborationsnetzwerk deutlich sinnvoller ist und da sehe ich Git einfach sehr, sehr stark. Und was ich auch noch an, was mir ein Freund mal gesagt hat, weil ich auch darüber geklagt habe, dass ich oft oder es auch viele meiner Kollegen solche Dinge, Research, der nicht beendet ist, nicht veröffentlichen, aus Angst, er ist nicht gut genug oder er ist nicht komplett oder er ist nicht irgendwie sowas, so ein, da fehlt was. Also man hat immer irgendwie das Gefühl, da fehlt was und da könnte mehr gehen. Und ich glaube, was ich sagen möchte ist, dass man muss nicht die Person sein, die dieses Meer liefert, sondern dieses Wissen allein rauszugeben und zu sagen, ich weiß nicht, wie ich weiterkomme und ich habe aber das Gefühl, da ist mehr, ist schon so viel Wert für andere Leute und bringt das Wissen so viel weiter. Deswegen publish early, publish often. Ansonsten würde ich, ja, danke schön.