[Workshop] Das sichere Notebook

    • daegga
      daegga
      Bronze
      Dabei seit: 11.02.2007 Beiträge: 2.255
      Hallo erstmal.

      Dies hier soll ein kleines Projekt werden, das Notebook (bzw. den PC) so sicher wie möglich zu machen (bei erträglichen Leistungseinbußen). Es ist jeder herzlich dazu eingeladen, mitzumachen bzw. sich einzubringen.

      Konkrete Implementierung wird wahrscheinlich 2. Septemberwoche beginnen (habe vorher zu wenig Zeit und Ressourcen verfügbar). Bis dahin sollten mal Ideen gesammelt werden und das Konzept perfektioniert werden (und es kann natürlich auch vorher schon jeder das Zeug ausprobieren).
      Parallel zur Implementierung werd ich wohl eine Doku dazu veröffentlichen (wahrscheinlich step-by-step Anleitung).

      meine Hardware im Produktivsystem:
      12" Subnotebook - 1,4Ghz Centrino, 1,5 GB RAM, schwache Grafikkarte, 160GB IDE HDD, kein CD-ROM Laufwerk, boot from USB

      --> das Ganze ist darauf ausgerichtet, wenig Ressourcen zu verbrauchen, jeder mit stärkeren Rechnern kann das ganze natürlich noch weiterspinnen.

      Nun zum Grundkonzept:
      kurze Anmerkung: hier wird nicht die Sicherheit bei physischem Zugriff behandelt, sondern rein die Sicherheit online. Bios-Passwort, Festplatten-Verschlüsselung etc. ist daher ein anderes Thema und soll unabhängig von diesem Thema betrachtet werden.

      folgende 2 Grundbenutzungsszenarios gibt es:
      1. Mitschrift in der UNI (mobil) --> kein Inet benötigt
      edit: für PC-Verwender: alternativ die Verwendung für Spiele oder auch Szenario komplett auslassen... dies dann bei der Partitionierung beachten
      2. Verwendung zu Hause (wie normaler PC) --> Inet wird verwendet

      Für Szenario 1 wird ein Betriebssystem auf die HDD installiert, aber keine Netzwerktreiber (damit man auch nicht im Inet/Netzwerk sein kann, wenn man noch das Netzwerkkabel eingesteckt hat). Sicherheitsmaßnahmen sind hier eigentlich nur für physischen Zugriff notwendig.

      Für Szenario 2 will ich ein Linux Live-System mit integriertem VmWare Player benutzen, der dann VMs von der Festplatte startet (oder auch vom USB Stick etc.).


      Partitionierung der HDD:
      1. Partition: für mobile-mode/Mitschrift --> Betriebssystem der Wahl (wegen Notebook bei mir WinXP mit NHC..in Linux müsste man ewig herumfrickeln, um die Akkulaufzeit zu erreichen) --> ca. 5GB
      2. Partition: für die persistenten Festplatten der VMs (read-only mounten!) --> Größte kommt auf die geplante Anzahl der VMs an
      3. Partition --> Redo-Festplatten der VMs und eventuell Datenspeicher

      wenn man vom auf der HDD installierten OS keine zusätzliche Datenpartition benötigt, könnte man die 2. und 3. Partition als mit LVM realisieren --> dadurch kann ich die 2. Partition erweitern, wenn eine neue VM dazukommt und ich verschwende keinen Festplattenplatz, wenn ich zu groß plane.

      Verwendung als Live-System:
      Ich dachte daran, VmWare Player in DSL zu integrieren und das ganze dann auf einen USB-Stick zu spielen (sollte ca. 100MB haben). DSL dann mit "toram" Option starten, d.h. alles wird in den RAM geladen (Schnelligkeit + wir wollen ja nicht den USB-Stick shreddern).
      Partition 2 read-only einbinden, Partition 3 writeable einbinden, VmWare Player mittels Startskript automatisch laden.
      Die VM-Dateien entweder grundsätzlich auf der read-only Partition speichern oder auf der writeable Partition, muss noch überlegt werden. Das was auf die andere Partition muss, dann mittels symbolic link referenzieren.
      Eventuell noch Tools für VM-Erstellung integrieren. Aber eigentlich soll auf DSL ja nicht gearbeitet werden sondern in den VMs...also vl. eine Standard-VM erstellen mit Verwaltungswerkzeugen.
      Netzwerkverbindung würde ich NAT machen und dann im Linux per iptables filtern. Standardfilter alles auf DROP setzen und nur Port 80 ausgehend (+Antwort) freigeben, dazu diverse Filterscripts schreiben, die dann im Betrieb angewendet werden können (zB für Pokersoftware). Oder man definiert einfach schon die IP-Adressen für die VMs vorher (also unter welcher IP welche VM welchen Zweck erfüllen kann), dann halt kein DHCP für die VMs verwenden und man kann gleich einen Standard-Filter einstellen, der für jede VM genau das zulässt, was sie darf.

      Die virtuellen Maschinen:
      vorneweg: da man mehrere VMs gleichzeitig laufen lassen kann, kann man die Funktionen gut abgrenzen. man kann dann zB gleichzeitig pokern und surfen, ohne durch das surfen die sicherheit beim pokern zu gefährden.

      1. Das surf-only Betriebssystem
      von einem Image einer Live-CD booten. entweder DSL oder das Surf-Image von VmWare, das auf Ubuntu basiert. oder irgendwas anderes ^^
      2. Das Poker Betriebssystem
      Windows XP
      darauf installiert: mindterm (für SSH-Tunnel, falls man mal hinter einer bösen fremden Firewall sitzt), Proxifier (zum Leiten des Pokertraffics durch den SSH-Tunnel), Programme der benutzten Pokerrooms
      wer PT/Elephant etc. benutzt: würde die Datenbank nicht auf den VMs laufen lassen, sondern auf einem externen Server (also irgendein anderer PC zu Hause...geht halt dann unterwegs nicht, außer mit einem SSH-Tunnel bzw. VPN...kA wie da die Performance übers Inet aussieht)
      bin aber generell der Meinung, dass die Datenbank auf einen anderen PC gehört, da dies die Leistung drastisch verbessert
      3. Das Multimedia Betriebssystem
      Filme gucken, Musik hören, etc.
      soll jeder das raufmachen, was er will.
      4.-n. usw.
      was einem halt noch einfällt
      könnte man auch zu 3. dazu hängen...je nach dem, was man machen will


      Zusammenfassung fürs Erste:
      Schreibzugriff nur daruf, wo er unbedingt sein muss. Im laufenden Betrieb geschriebene Dateien sollten von Zeit zu Zeit gelöscht werden (oder auch nach jeder Benutzung ... kommt halt darauf an).
      Persisten-Disks mit der Grundinstallation (alles was man nicht mehr löschen möchte) wird einmalig erstellt, danach bleibt die read-only.
      Redo-Log-Disk kann für gewöhnlich wieder gelöscht werden, außer man benötigt seine gespeicherten Dateien bzw. Einstellungen für einen temporären Zeitraum, dann lässt man die halt fürs Erste...

      Es gibt also keine Möglichkeit, die Betriebssysteme in den VMs dauerhaft zu schädigen/infiltrieren.
      Gefahren können nur während des Betreibens einer VM temporär auftreten --> das Betriebssystem in der VM muss für kritische Anwendung genauso geschützt werden, wie wenn es als Standalone-Installation laufen würde.
      Dadurch, dass man die Aktivitäten aber auf spezialisierte VMs aufteilt, ist die Angriffsfläche aber um vieles geringer und die Aktivitäten können sich nicht gegenseitig beeinflussen.

      netter Nebeneffekt: Nie wieder neu aufsetzen!! Grundinstallation bleibt immer beim Alten :)


      Bin auf eure Vorschläge/Verbesserungen/Feedbacks gespannt und hoffe auf einige brauchbare Inputs.
  • 8 Antworten
    • elbarto132
      elbarto132
      Bronze
      Dabei seit: 24.03.2008 Beiträge: 4.622
      blablabla...
      du installierst dir windows als betriebssystem
      [x] you fail


      ubuntu + vmware + winxp in der vm und nur mit pokern
      da muss man sonst garnix machen, und is praktisch zu 100% sicher, außerdem deutlich komfortabler als dein wirrwarr
    • Zweery
      Zweery
      Global
      Dabei seit: 07.10.2006 Beiträge: 1.970
      Original von elbarto132
      blablabla...
      du installierst dir windows als betriebssystem
      [x] you fail


      ubuntu + vmware + winxp in der vm und nur mit pokern
      da muss man sonst garnix machen, und is praktisch zu 100% sicher, außerdem deutlich komfortabler als dein wirrwarr
      #2......lol...signed

      als "Tekki" zu Linux greifen....als "Nicht-Tekki" und wenn das Budget vorhanden ist -> Mac + OSX.
    • b10w
      b10w
      Bronze
      Dabei seit: 04.04.2007 Beiträge: 2.646
      So übel ist die Idee nun auch wieder nicht. Allerdings muss das System auf dem USB-Stick aus Sicherheitsgründen auch gewartet/aktualisiert werden, dann kann man gleich Linux als Basissystem installieren.

      Bzgl. Windows XP: Zeigt mir doch eine akzeptable Lösung für Linux, die Frequenz UND Voltage steuert - die gibt es m.W. nicht. Er hat ja explizit erwähnt, dass es ihm unterwegs um die Akkulaufzeit geht. Oder funktioniert NHC auch in VMs? Kann ich mir nicht vorstellen.
    • elbarto132
      elbarto132
      Bronze
      Dabei seit: 24.03.2008 Beiträge: 4.622
      http://wiki.ubuntuusers.de/Prozessorspannung_absenken
    • Zweery
      Zweery
      Global
      Dabei seit: 07.10.2006 Beiträge: 1.970
      @themenstrater:

      geht das nicht ein wenig einfacher ? (rhetorische frage)

      die "otto-normal-user" haben das ganze eh nicht verstanden und würden dieses szenario auch niemals
      hinbekommen.
    • tobe666
      tobe666
      Bronze
      Dabei seit: 24.03.2006 Beiträge: 2.005
      was bringt es mir meinen laptop zu sichern der eh nicht im inet ist und somit eh kein zugriff auf mein Geld hat?
    • Zweery
      Zweery
      Global
      Dabei seit: 07.10.2006 Beiträge: 1.970
      Original von tobe666
      was bringt es mir meinen laptop zu sichern der eh nicht im inet ist und somit eh kein zugriff auf mein Geld hat?
      @themenstarter: lol...1 minute später ist es schon soweit.....weisst was ich meine ?!
    • daegga
      daegga
      Bronze
      Dabei seit: 11.02.2007 Beiträge: 2.255
      der grundgedanke ist einfach, einen dauerhaften sicherheitszustand des systems zu haben, zu dem immer wieder zurückgekehrt werden kann, ohne wieder tausend sachen nachinstallieren zu müssen.
      auch wenn mich mal ein virus oder trojaner erwischt --> nach dem nächsten reboot ist er wieder weg. der schaden ist also begrenzt.
      wenn es einen host gibt, kann zumindest der dauerhaft infiltriert werden. durch das live-system ist auch der nur temporär und beim nächsten reboot wieder auf startzustand.

      geht es einfacher? ja natürlich. viele wege führen nach rom, aber halt auf einen anderen punkt in rom ^^ war halt mal eine idee, die mich schon länger beschäftigt... werde das mal ausprobieren.
      mir geht es aber nicht nur um das ziel, sondern auch um den weg.
      der otto-normal-user ist mir übrigens egal, der ist ja eh sicher hinter seiner zonealarm firewall :P werde halt bei interesse meine erfahrungen damit veröffentlichen, falls sich das sonst noch wer anschauen will.

      dass man mit linux auch stromsparende maßnahmen machen kann, ist mir natürlich bewusst...aber das ganze ist halt viel mehr aufwand als NHC und auch nicht so effektiv. hat generell auch zu viele wakeups. va. mit usb.


      grundsätzlich bin ich auch befürworter der linux-methode: grundsätzlich linux auf die platte, programme, windows brauchen, in eine vm. root-partition read-only, swap verschlüsseln, etc. blabla
      hier geht es halt um eine andere philosophie, die imho auf lange sicht vorteile bringt, wenn denn die leistungseinbußen nicht zu hoch sind (aber wer nicht probiert, verliert).
      wenn ich den computer wechsel --> vms rüberziehen, stick rein, migration abgeschlossen.
      genauso kann ich einfach eine sicherheitskopie meines ganzen systems machen.
      oder wenn ich einfach eine VM ganz normal zum arbeiten verwende und die Redo-Disk nicht lösche --> geht irgendmal was nicht mehr, redo-löschen, hab wieder frisch aufgesetztes system.


      irgendwie schreib ich zu lange beiträge fällt mir gerade auf -.-