Hallo erstmal. . Zuerst mein Hintergrund: Mir ist (wieder einmal) ein Laptop "abhanden gekommen". Um dem in Zukunft vorzubeugen, will ich den Versuch wagen einen Low Level DynDNS Updater direkt ins BIOS zu integrieren. Da ich bereits nach kürzester Suche auf "Computrace" gestoßen bin, glaube ich fest an die Machbarkeit. Jetzt zu meinen ersten Fragen: 1. Wie wird der Flashspeicher des BIOS abgefragt? Wird der Bootloader automatisch nach dem vollständigen Auslesen des Speichers ausgeführt, sofort nachdem das BIOS die Übergabe durchgeführt hat oder wenn die Übergabe durchgeführt wurde UND der Speicher vollständig gelesen wurde? 2. Da das BIOS als Hardware Abstraction Layer dient, jedoch durch Betriebssystem eigene Treiber übergangen werden kann, nehme ich an, dass Routinen im BIOS nach dem Start durch das Betriebssystem initialisiert werden. Liege ich mit dieser Annahme richtig? Falls ja, kann ich dennoch (z.B über CPU-Clock Cycles) eine Routine auf dem BIOS-Chip ausführen, notfalls durch sich selbst rekursiv? 3. Zwar habe ich hier ein recht ausführliches Buch über Low Level Programmierung (am Beispiel HLA) liegen, allerdings gibt es mir keine Auskunft über Networking und ich bin aus unerfindlichen Gründen unfähig erfolgreich danach zu googlen und stoße meist nur auf den winsocket, welchen ich nicht verwenden möchte, da er vom Betriebssystem gestellt wird und nutzlos wäre, wenn mein Computer auf z.B. Linux umgestellt wird. Meine Frage also: Wie wäre ich in der Lage einen externen Server zu adressieren? Wie kann ich einen Domain Namen als Adresse verwenden? Wie kann ich die aktuelle externe IP meines Computers ermitteln? 4. Ganz besonders zu 3. wäre ich auch froh, wenn ihr mir Begriffe liefern könntet nach denen ich googlen kann. . Mit freundlichsten Grüßen Steini . PS.: Da ich trotz allem, was ich zu wissen glaube, definitiv ein Anfänger bin, wäre es mit Sicherheit auch hilfreich, wenn ihr mir sagen könntet, welche Fragen ich überhaupt stellen sollte und welche Grundlagen ich benötige.
Andreas S. schrieb: > und nutzlos wäre, wenn mein Computer auf z.B. Linux umgestellt > wird. Hm. Da selbst computrace in diesem Fall versagt, musst du aber schon sehr feste an die Machbarkeit glauben... Oliver
Andreas S. schrieb: > 3. Zwar habe ich hier ein recht ausführliches Buch über Low Level > Programmierung (am Beispiel HLA) liegen, allerdings gibt es mir keine > Auskunft über Networking und ich bin aus unerfindlichen Gründen unfähig > erfolgreich danach zu googlen und stoße meist nur auf den winsocket, Stop, Langsam. Was ist erstmal mit einem Netrzwerkkarten-Treiber, wie implementierst Du den? Bevor Du überhaupt irgendwas auf höheren Protokollebenen machen kannst (Ethernet, ARP, IP, UDP, TCP) musst Du doch erstmal die Hardware bedienen können.
Andreas S. schrieb: > 1. Wie wird der Flashspeicher des BIOS abgefragt? Wird der Bootloader > automatisch nach dem vollständigen Auslesen des Speichers ausgeführt, > sofort nachdem das BIOS die Übergabe durchgeführt hat oder wenn die > Übergabe durchgeführt wurde UND der Speicher vollständig gelesen wurde? Lies das hier: http://bitsavers.trailing-edge.com/pdf/ibm/pc/ps2/PS2_and_PC_BIOS_Interface_Technical_Reference_Apr87.pdf Das klassische BIOS hat sich seitdem nicht prinzipiell geändert, das dort geschriebene gilt fast unverändert immer noch. > 2. Da das BIOS als Hardware Abstraction Layer dient, jedoch durch > Betriebssystem eigene Treiber übergangen werden kann, nehme ich an, dass > Routinen im BIOS nach dem Start durch das Betriebssystem initialisiert > werden. Liege ich mit dieser Annahme richtig? Falls ja, kann ich dennoch > (z.B über CPU-Clock Cycles) eine Routine auf dem BIOS-Chip ausführen, > notfalls durch sich selbst rekursiv? Der BIOS-Chip ist nur ein Datenspeicher, kein Prozessor. Er kann also selber nichts selber ausführen. Und die heutigen Betriebssysteme benutzen das BIOS eigentlich nur noch zum Booten. Die Routinen im BIOS werden anschließend nicht mehr verwendet. > 3. Zwar habe ich hier ein recht ausführliches Buch über Low Level > Programmierung (am Beispiel HLA) liegen, allerdings gibt es mir keine > Auskunft über Networking und ich bin aus unerfindlichen Gründen unfähig > erfolgreich danach zu googlen und stoße meist nur auf den winsocket, > welchen ich nicht verwenden möchte, da er vom Betriebssystem gestellt > wird und nutzlos wäre, wenn mein Computer auf z.B. Linux umgestellt > wird. Meine Frage also: Wie wäre ich in der Lage einen externen Server > zu adressieren? Wie kann ich einen Domain Namen als Adresse verwenden? > Wie kann ich die aktuelle externe IP meines Computers ermitteln? Gar nicht. So einfach ist das. Als das BIOS definiert wurde, war TCP noch nicht erfunden. Das Höchste der Gefühle sind Bootroms, die per UDP einen Bootloader per BOOTP/TFTP laden können. Mehr nicht. Punkt. Ende. Inzwischen gibt es UEFI als BIOS-Nachfolger. Das kann mehr, aber ein Netzwerkstack ist auch dort nur optional. Dazu kommt: Im Zeichen von Secure Boot etc dürften inzwischen viele Teile des UEFI cryptografisch signiert sein. Heißt also: DU wird daran ohnehin nichts mehr ändern können. Apple hat für Dein Problem eine Lösung. Die verwenden ein etwas anderes EFI und haben dort auch Dinge wie Internet Recovery und "Find My Mac" etc eingebaut. Das läuft dann über die iCloud. Apple definiert sich halt eigene Standards. fchk
Ich meine dabei natürlich das Persistentz-Modul des Computrace-Agenten. Dieses befindet sich laut ihrer FAQ im BIOS. Somit dürfte meine Idee eigentlich über den Flashspeicher realisierbar sein. Dennoch bin ich mir nicht sicher, da Computrace eben vom Hersteller selbst in das BIOS integriert wird und ich somit nicht sicher sein kann ob hier Modifikationen des BIOS nötig sind, die auch ich vornehmen könnte. Darüber hinaus habe ich leider ohnehin zu wenig Ahnung von Netzwerktechnik, obwohl ich gerade intensiv versuche mich einzuarbeiten und auch einen öffentlichen Kurs an unserer lokalen Hochschule dazu besuche (der leider (noch) nicht in die gewünschte Richtung zielt)
Also das BIOS in meinem Mainboard holt sich (nur auf Befehl) direkt von seinem Hersteller Updates. Es ist also definitiv möglich soetwas zu implementieren. @TO: Es wäre evtl. eine gute Idee das "nach Hause telefonieren" während des BIOS-seitigen Bootvorgangs zu machen. Damit ist egal was (und ob überhaupt) auf der HDD ist. Zumindest wenn der "Schuft" LAN verwendet. Bei WLAN steht man so aber natürlich dumm da. Auf der anderen Seite erfordert eine Integration in ein OS immer die Kooperation (oder wenigstens eine Lücke) seitens desselben. Man könnte die Problematik etwas entschärfen indem man in einer Meldung (als BIOS) fordert ein "Update" zu erhalten um mit "der neuen Hardware zu funktionieren". Alternativ sollte der ganze Aufwand dir zu viel sein: Mach ein BIOS-Pw rein und schreib das auch mit einem großen Sticker aussen drauf. Das schreckt schonmal 90% der Gelegenheitsdiebe ab. Ich hatte z.B. auch einen Screensaver der so "sicher" aussieht mit gefakten Sensordaten und vielen Schlüsselsymbolen. Hab ich mal irgendwo vor tausend Jahren in den tiefen des nets gefunden und durch den compiler gejagt. Gibt sicher für das OS deiner Wahl auch sowas.
http://www.coreboot.org Damit hast du schon mal eine freie BIOS-Grundlage, für das du deinen dyndns updater programmieren und als Payload integrieren kannst. Man kann sogar ein ganzes kleines Linux als Payload nehmen. Damit könnte sogar ein einfaches Skript als Updater funktionieren, um allen LowLevel-Kram musst du dich ja dann nicht kümmern. Anschließend die Payload SeaBios ( http://www.coreboot.org/SeaBIOS ) laden, welche die Funktion des üblichen Bios übernimmt (also das OS startet)
> Zuerst mein Hintergrund: Mir ist (wieder einmal) ein Laptop "abhanden > gekommen". Um dem in Zukunft vorzubeugen, will ich den Versuch wagen > einen Low Level DynDNS Updater direkt ins BIOS zu integrieren. Da ich > bereits nach kürzester Suche auf "Computrace" gestoßen bin, glaube ich > fest an die Machbarkeit. und wenn du dich einfach nur mal fragst, warum dir so viele laptops abhanden kommen?
Frank K. schrieb: > Der BIOS-Chip ist nur ein Datenspeicher, kein Prozessor. Er kann also > selber nichts selber ausführen. Und die heutigen Betriebssysteme > benutzen das BIOS eigentlich nur noch zum Booten. Die Routinen im BIOS > werden anschließend nicht mehr verwendet. Entschuldigung. So viel Kenntnis habe ich zum Glück noch, habe mich nur völlig falsch ausgedrückt. Ich meinte natürlich die Routine aus dem Speicher abzurufen und dann auf dem Prozessor auszuführen...^^ > Gar nicht. So einfach ist das. Als das BIOS definiert wurde, war TCP > noch nicht erfunden. Das Höchste der Gefühle sind Bootroms, die per UDP > einen Bootloader per BOOTP/TFTP laden können. Mehr nicht. Punkt. Ende. > > Inzwischen gibt es UEFI als BIOS-Nachfolger. Das kann mehr, aber ein > Netzwerkstack ist auch dort nur optional. > > Dazu kommt: Im Zeichen von Secure Boot etc dürften inzwischen viele > Teile des UEFI cryptografisch signiert sein. Heißt also: DU wird daran > ohnehin nichts mehr ändern können. Gut zu wissen. Dann werde ich diesen Ansatz wohl verwerfen. Das heißt dann wohl, dass ich entweder versuchen müsste irgendwie eine Dokumentation für meine NIC Treiber aufspüren müsste um selbst einen sehr einfachen zu basteln (rein theoretisch, ich bezweifle, dass ich hierfür in absehbarer Zeit genug Wissen anhäufen würde) oder trotz meines Unwillen über das Betriebssystem gehen muss. Hier bietet sich vielleicht eine weitere Idee an: Da ich eine SSD benutze müsste es doch möglich sein einige Speicherzellen so zu blockieren, dass sie ausschließlich ausgelesen werden können...? Wahrscheinlich ist der Aufwand dazu unnötig groß, daher noch eine andere Idee: GRUB auf eigene Partition und Routinen hinzufügen, die automatisch überprüfen ob eine neue Windows-Installation vorliegt und entsprechende Programme zu Windows hinzufügt. Bei beiden Methoden hoffe ich natürlich dann darauf, dass mein Laptop ausschließlich von technisch ignoranten Windows Usern geklaut wird...
Simon S. schrieb: > http://www.coreboot.org > > Damit hast du schon mal eine freie BIOS-Grundlage, für das du deinen > dyndns updater programmieren und als Payload integrieren kannst. > > Man kann sogar ein ganzes kleines Linux als Payload nehmen. Damit könnte > sogar ein einfaches Skript als Updater funktionieren, um allen > LowLevel-Kram musst du dich ja dann nicht kümmern. Sehr nett. Habe mich mal ein klein wenig umgeschaut was das Teil so an Netzwerktreibern mitliefert. Fragt sich nur noch ob meine Interfaces dabei sind oder ich eine Dokumentation für mein Interface finde und einen Treiber umbauen kann. Mach ich dann später, danke! . Bin gespannt ob das damit möglich wird (v.a. da fchk's Aussage mich schwer an den Möglichkeiten zweifeln lässt, die mir aus dem BIOS heraus offen stehen) Dario B. schrieb: > und wenn du dich einfach nur mal fragst, warum dir so viele laptops > abhanden kommen? Das liegt daran, dass ich Genie bis zum Umfallen vergesslich und tollpatschig bin. Ich habe ein paar sehr billige (und teilweise auch alte) Laptops, mit denen ich in Bibliotheken/Cafes/etc. ein wenig arbeite. Die vergesse ich aber regelmäßig und nicht immer hat ein Angestellter diese in Gewahrsam genommen, wenn ich zurückkomme um sie zu holen und sie nicht mehr da liegen wo sie sein sollten. Max D. schrieb: > Bei WLAN steht man so aber natürlich dumm da. Auf der anderen Seite > erfordert eine Integration in ein OS immer die Kooperation (oder > wenigstens eine Lücke) seitens desselben. Ich glaube, dass wenn ich WLAN berücksichtigen will (was bei Laptops meiner Meinung unverzichtbar ist, keine Ahnung warum ich erst jetzt auf diesen Einfall komme) gar nicht um eine Integration ins Betriebssystem herumkomme. Wäre doch sehr verdächtig, wenn das BIOS beginnt nach WLAN Passwörtern zu fragen....
Andreas S. schrieb: > Bin gespannt ob das damit möglich wird (v.a. da fchk's Aussage mich > schwer an den Möglichkeiten zweifeln lässt, die mir aus dem BIOS heraus > offen stehen) Das ist kein Widerspruch. Das klasiische BIOS, wie IBM es anno 1981 definiert hat, kennt keinerlei Netzwerk. Du kannst wohl Netzwerkfunktionalität einbauen - die PXE-Bootroms machen es ja auch, aber Du musst von der Hardwareansteuerung über den TCP/IP-Stack bis zur Applikation alles selber machen, und zwar im 16 Bit Real Mode. Coreboot ist erstmal kein klassisches BIOS. Wenn Du es nutzen willst, wirst Du es erstmal an Deine eigene Hardware anpassen müssen, und die dazu erforderlichen Infos sind mitunter schwer oder gar nicht zu bekommen. Die BIOS-Kompatibilität kommt erst durch ein separates Modul zustande. > Das liegt daran, dass ich Genie bis zum Umfallen vergesslich und > tollpatschig bin. Ich habe ein paar sehr billige (und teilweise auch > alte) Laptops, mit denen ich in Bibliotheken/Cafes/etc. ein wenig > arbeite. Die vergesse ich aber regelmäßig und nicht immer hat ein > Angestellter diese in Gewahrsam genommen, wenn ich zurückkomme um sie zu > holen und sie nicht mehr da liegen wo sie sein sollten. Dann lass Dir einen RFID-Transponder, wie er für Haustiere verwendet wird, implantieren (am Besten in einen Arm) und bau einen RFID-Reader ein. Wenn der Dich nicht mehr lesen kann, piept es. fchk
Da Notebooks überlicherweise ihren Internetzugang per WLAN abwickeln ... woher soll ein im BIOS liegender DynDNS-Updater die WLAN-Zugangsdaten kennen? Und -- was willst Du mit den so erlangten IP-Adressen anstellen? Meinst Du, daß Du damit rausfindest, an welchem Ort sich der jeweilige Benutzer befindet, damit Du Deine verschlampte Hardware wieder einsammeln kannst?
Rufus Τ. Firefly schrieb: > was willst Du mit den so erlangten IP-Adressen anstellen? Meinst > Du, daß Du damit rausfindest, an welchem Ort sich der jeweilige Benutzer > befindet, damit Du Deine verschlampte Hardware wieder einsammeln kannst? Nope, ganz feige die Polizei um Hilfe fragen. Würde mich wundern, wenn die nicht in der Lage wäre ein wenig Auskunft vom ISP zu beantragen. WLAN ist natürlich das große Problem. Da ich selbst ausschließlich an der HS oder zu Hause online gehe und da auch nur per LAN habe ich eiskalt WLAN überdacht. Komme daher anscheinend gar nicht ums OS herum. Frank K. schrieb: > Dann lass Dir einen RFID-Transponder, wie er für Haustiere verwendet > wird, implantieren (am Besten in einen Arm) und bau einen RFID-Reader > ein. Wenn der Dich nicht mehr lesen kann, piept es. Interessante Idee. Wollte mir ohnehin schon mal einen RFID-Chip in die Daumenfalte setzen lassen. Zum Haustür aufsperren, am PC anmelden, Handy entsperren, etc. Habs dann aber sein lassen, bzw. aufgeschoben weil mich die Sicherheit nicht gerade überzeugt hat. Habe aber jetzt nochmal gegooglet und sofort einen Artikel zur Authentifikation mit AES gefunden. Behalte ich jetzt mal im Kopf.
Hallo, mach dir eine elektronische Fussfessel, die dir einen Schlag versetzt oder zu heulen anfängt, wenn du dich aus dem Bluetoothbereich des Notebooks entfernst. Einfacher wäre ein dünnes Stahlseil, das du am Notebook befestigst (Stichwort Kensington Schloss) und an einem Arm- oder Fussband. Interessant wäre auch die "Mission Impossible" Variante: das Notebook vernichtet sich selbst bei längerer Abwesenheit deiner Person. Georg
Georg schrieb: > mach dir eine elektronische Fussfessel, die dir einen Schlag versetzt > oder zu heulen anfängt, wenn du dich aus dem Bluetoothbereich des > Notebooks entfernst. > > Einfacher wäre ein dünnes Stahlseil, das du am Notebook befestigst > (Stichwort Kensington Schloss) und an einem Arm- oder Fussband. > > Interessant wäre auch die "Mission Impossible" Variante: das Notebook > vernichtet sich selbst bei längerer Abwesenheit deiner Person. Wie das dann wohl rüberkommt wenn ich zuckend durch die Bibliothek laufe, einen Laptop an einem Seil hinter mir herziehend.... Bestimmt interessant. Weniger spaßig dürfte es allerdings sein, der Polizei später zu erklären warum mein Laptop sich selbst entzündet und dabei das ganze Haus niedergefackelt hat.
Solltest du auch ein schmarrphone mit dir rumzerren, dann schreib oder such dir eine app die piept wenn die Bluetooth Verbindung mit deinem Laptop getrennt wird. Bt reicht etwa 10m, also grade gut für diebstahlschutz.
Max D. schrieb: > dann schreib oder > such dir eine app die piept wenn die Bluetooth Verbindung mit deinem > Laptop getrennt wird Guter Vorschlag, das könnte auch funktionieren, wenn er das Notebook mitnimmt und das Smartphone liegen lässt. Aber was, wenn er beides vergisst? Georg
Andreas S. schrieb: > Weniger spaßig dürfte es allerdings sein, der > Polizei später zu erklären warum mein Laptop sich selbst entzündet und > dabei das ganze Haus niedergefackelt hat. Diese Methode scheint aber mittlerweile mehr und mehr auf Akzeptanz zu stoßen, siehe dazu zum Beispiel FTDI.
Georg schrieb: > Guter Vorschlag, das könnte auch funktionieren, wenn er das Notebook > mitnimmt und das Smartphone liegen lässt. > > Aber was, wenn er beides vergisst? Das Smartphone kann in Form einer SmartWatch am Probanden befestigt werden.
Eine wesentlich einfachere Alternative wäre, überhaupt kein System-Passwort zu verwenden, sondern nur sensible Daten eigenständig zu verschlüsseln. Wenn der Dieb dumm genug ist, nutzt er die Betriebssysteminstallation einfach weiter ... http://www.youtube.com/watch?v=U4oB28ksiIo
Andreas S. schrieb: > Ich habe ein paar sehr billige (und teilweise auch alte) Laptops, mit > denen ich in Bibliotheken/Cafes/etc. ein wenig arbeite. Die vergesse ich > aber regelmäßig Wie muß man sich das vorstellen? Du hockst da am Rechner und arbeitest daran, dann stehst du auf und gehst, vergisst aber, daß der Rechner noch vor dir steht?
Rolf Magnus schrieb: > vergisst aber, daß der Rechner noch vor dir steht? Das tut der Rechner ja nicht mehr, sobald er aufgestanden ist. Der Rechner steht ja nicht mit auf, sondern bleibt faul liegen.
Rolf Magnus schrieb: > Wie muß man sich das vorstellen? Du hockst da am Rechner und arbeitest > daran, dann stehst du auf und gehst, vergisst aber, daß der Rechner noch > vor dir steht? So schlimm ist es zum Glück noch nicht... Da gibts verschiedene Möglichkeiten. Z.B. wenn ich in der Bücherei ein wenig schreibe und mich dann auf die Suche nach ein paar Büchern mache. Ich mache normalerweise nur ein paar Kopien, daher packe ich den Laptop meist schon mal zurück in seine Tasche. Ich hab da dann so einen Rucksack mit zwei getrennten Stauräumen, zwischen die man wunderbar diese Tasche schieben und befestigen kann. Das mache ich aber nicht immer, meist für den Fall dass ich den Laptop doch noch brauche. Dann stelle ich in einfach hinter meinen Rucksack ins Regal. Nur vergesse ich aus irgendeinem Grund manchmal, dass ich den Laptop nicht in den Rucksack gepackt habe und da dieser, vollgestopft mit Büchern, recht schwer und der Laptop doch recht leicht ist fällt mir das nicht immer gleich auf.
Tja, dann solltest Du vielleicht an Dir arbeiten, und Dir abgewöhnen, Notebook und Rucksack getrennt irgendwo hinzustellen. Vielleicht ist ja auch diese Tasche im Rucksack zu unpraktisch, wenn Du "das Notebook noch brauchst" und es dann da nicht reinpackst, scheint das ja so zu sein.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.