Hallo,
wir hatten gestern über dieses Thema gesprochen.
Hat jemand da ggf. Code rumliegen?
TIA!
Bernhard
Hallo..
Ich möchte persönliche Informationen im web ablegen/editieren und mittels jedem Browser (lynx muss nicht unbedingt sein) zugreifen können. Am bequemsten währe natürlich webseite aufrufen -> via PW authentifizieren -> daten angezeigt bekommen / editieren -> fertig.
Kriterien sollen sein: 1.) niemand ausser dem PW inhaber darf an die Informationen rankommen können.
2.) Zugriff ohne zusätzliche HW/SW (nur belibiger browser) von überall auf der Welt aus möglich
3.) auch super wenn keine Rückstände auf dem client computer zurückblieben
Als Hardware hab ich einen Vserver in einem RZ mit nem Lenny64bit drauf. Was würdet Ihr dafür verwenden?
grüße, rob
Hallo Rob!
1.) niemand ausser dem PW inhaber darf an die Informationen rankommen können. 2.) Zugriff ohne zusätzliche HW/SW (nur belibiger browser) von überall auf der Welt aus möglich
Apache2 und PHP5 installieren HTTPS einrichten für die verschlüsselte Verbindung und die Authentifizierung des Servers HTTP-AUTH einrichten für die Authentifizierung des Clients mittels Passwort
Jetzt brauchst du noch ein Script zur Verwaltung deiner Daten. Für eine einzelne Textdatei ist das in fünf Minuten zusammengehackt, eine Bilderverwaltung oder Dateiverwaltung ist aufwändiger. Was genau willst du verwalten und willst du wirklich nur alleine an deine Daten? Brauchst du eine Versionskontrolle? Ziemlich sicher findet sich etwas Fertiges.
Thomas
Hallo Thomas,
Apache2 und PHP5 installieren HTTPS einrichten für die verschlüsselte Verbindung und die Authentifizierung des Servers HTTP-AUTH einrichten für die Authentifizierung des Clients mittels Passwort Jetzt brauchst du noch ein Script zur Verwaltung deiner Daten. Für eine einzelne Textdatei ist das in fünf Minuten zusammengehackt, eine Bilderverwaltung oder Dateiverwaltung ist aufwändiger.
mit php mir was zusammen proggen ist überhaupt kein Problem, versionsverwaltung mit sql währ sicher auch kein Problem. Die wichtigste Frage ist für mich die Sicherheit, denn davon hab ich keine Ahnung!! (Ich progge mein Zeugs auf nem W2000server + XAMPlite in Standardkonfiguration ;) ) In deinem Vorschlag könnte doch immer noch der Sysadmin (oder ein böser hxx0r) an meine Dateien ran, oder?
Was ich im Moment als Sicher ansehe währe ein ein trueCrypt container mit textdateien drin. Problem ist, wie komme ich per browser in den TC-Container rein und wie schreib ich per browser in die Dateien? ;)
Was genau willst du verwalten und willst du wirklich nur alleine an deine Daten?
das es nur um das festhalten wichtiger Gedanken geht, reicht der Kreis der Leute die von mir das PW gesagt bekommen würden .. (dann müsste ich sie aber umbringen ;) ).
danke und gruss, rob
Hallo Rob!
In deinem Vorschlag könnte doch immer noch der Sysadmin (oder ein böser hxx0r) an meine Dateien ran, oder?
Bei meinem Vorschlag mit HTTP-Auth ja.
Was ich im Moment als Sicher ansehe währe ein ein trueCrypt container mit textdateien drin. Problem ist, wie komme ich per browser in den TC-Container rein und wie schreib ich per browser in die Dateien? ;)
Es gibt Implementationen von Verschlüsselungsalgorithmen in Javascript. Die sind unglaublich lahm und deshalb nicht besonders beliebt. Aber bei deinem kleinen Umfang machbar. Nur musst du dem JS-Programm vertrauen, denn das könnte ein Admin ja manipulieren. Von daher kannst du zwar die Daten auf dem Server vor _jedem_ anderen schützen, müsstest allerdings mit einer vertrauenswürdigen Software entschlüsseln, bearbeiten und wieder verschlüsseln. Außer einem USB-Stick mit JavaScript-Programm drauf sehe ich gerade keine Möglichkeit.
das es nur um das festhalten wichtiger Gedanken geht, reicht der Kreis der Leute die von mir das PW gesagt bekommen würden .. (dann müsste ich sie aber umbringen ;) ).
Ja, gut. Das müsste akzeptabel sein. Kollateralschäden und Schwund halt. Irgendwas ist ja immer.
Thomas
Apache2 und PHP5 installieren HTTPS einrichten für die verschlüsselte Verbindung und die
und ein ordentlich ausgestelltes Zertifikat, damit du sicher bist wenn du deine Daten anvertraust (sonst werden die ganzen men_in_the_middle noch ausgerottet :-) )
andreas
Jap, sehr wichtig!
Grimnin Fridyson schrieb:
und ein ordentlich ausgestelltes Zertifikat, damit du sicher bist wenn du deine Daten anvertraust (sonst werden die ganzen men_in_the_middle noch ausgerottet :-) )
Ich hab mein Plan geändert da das mit den Zugriffen auf trucryt alles sehr hässlich wird.
also mein plan zur zeit: apache + mysql + php - ganz simples gui -> zugang nur über https (-> wie geht das? davon habsch keene ahnung ;D ) - einträge in der db per AES (256bit) verschlüsseln (schlüsseleingabe in gui) - das apache verzeichnis per htacces sichern
was meint ihr dazu?
dank und grüße, rob
Hallo Rob!
und ein ordentlich ausgestelltes Zertifikat, damit du sicher bist wenn du deine Daten anvertraust (sonst werden die ganzen men_in_the_middle noch ausgerottet :-) )
Erstens muss das erstmal einer machen und zweitens kann er den Fingerprint manuell prüfen. Das Zertifikat muss nicht sein.
also mein plan zur zeit: apache + mysql + php
- ganz simples gui -> zugang nur über https (-> wie geht das? davon
habsch keene ahnung ;D )
- einträge in der db per AES (256bit) verschlüsseln (schlüsseleingabe
in gui)
- das apache verzeichnis per htacces sichern
Aufs Backup kann keiner zugreifen, aber dein Passwort könnte ein Admin natürlich abfangen.
Für HTTP und HTTPS erstellt man in Apache2 zwei verschiedene VirtualHosts. Der eine mit SSL auf Port 443, der andere ohne auf Port 80. Wenn du HTTP nicht willst, zimmerst du halt nur den für HTTPS.
Die Datei .htaccess kannst du dir sparen und direkt in der Konfiguration von Apache die Authentifikation unterbringen: http://httpd.apache.org/docs/2.0/howto/auth.html
Ein Tipp: Bau erstmal alles ohne HTTPS zusammen, das erleichtert die Fehlersuche. Zum Schluss stellst du bei "Listen" den Port 443 ein, pfriemelst die Schlüssel zusammen, meinetwegen zertifiziert, und schreibst die entsprechenden Direktiven in den VirtualHost.
Thomas
Tag,
du hast dann aber immer noch das Problem das die Daten unverschlüsselt auf der Platte liegen und jeder der Zugriff auf das Filesystem hat, diese immer noch lesen kann (ja man kann auch das absichern, aber selbst dann darf root immer noch lesen).
Lustige Idee: leg deine Daten als BLOB in die DB :-) eventuell kann MySQL ja sogar damit umgehen wenn die Daten nicht zu groß sind. Das wäre dann so ne art "security by obscurity" :)
MfG Maddin
-----Ursprüngliche Nachricht----- Von: lug-dd-bounces@mailman.schlittermann.de [mailto:lug-dd- bounces@mailman.schlittermann.de] Im Auftrag von streber Gesendet: Freitag, 27. März 2009 11:47 An: Linux-User-Group Dresden Betreff: Re: AW: Daten ablegen für Paranoide
Jap, sehr wichtig!
Grimnin Fridyson schrieb:
und ein ordentlich ausgestelltes Zertifikat, damit du sicher bist
wenn
du deine Daten anvertraust (sonst werden die ganzen men_in_the_middle noch ausgerottet :-) )
Ich hab mein Plan geändert da das mit den Zugriffen auf trucryt alles sehr hässlich wird.
also mein plan zur zeit: apache + mysql + php
- ganz simples gui -> zugang nur über https (-> wie geht das? davon
habsch keene ahnung ;D )
- einträge in der db per AES (256bit) verschlüsseln (schlüsseleingabe
in gui)
- das apache verzeichnis per htacces sichern
was meint ihr dazu?
dank und grüße, rob
Lug-dd maillist - Lug-dd@mailman.schlittermann.de https://ssl.schlittermann.de/mailman/listinfo/lug-dd
Hi Maddin,
Hä... hab ich was übersehen? Welche Daten liegen noch auf der Platte? (ausser der GUI mit dem DB connector includes).
Meine infos würd ich mittels mysql oder php crypt-funktionen verschlüsselt in der DB ablegen. Als Schlüssel dient die Eingabe meines PW in der GUI. Meinst Du das das PW irgendwo nich liegen muss damit die kommunikation mit der DB richtig klappt?
Deine Idee mit dem Blob muss eh sein, denn sie sind ja verschlüsselt ;)
danke und gruß, rob
-------- Original-Nachricht --------
Datum: Fri, 27 Mar 2009 16:19:28 +0100 Von: "Maddin" mailingliste@megamaddin.de An: "'Linux-User-Group Dresden'" lug-dd@mailman.schlittermann.de Betreff: AW: AW: Daten ablegen für Paranoide
Tag,
du hast dann aber immer noch das Problem das die Daten unverschlüsselt auf der Platte liegen und jeder der Zugriff auf das Filesystem hat, diese immer noch lesen kann (ja man kann auch das absichern, aber selbst dann darf root immer noch lesen).
Lustige Idee: leg deine Daten als BLOB in die DB :-) eventuell kann MySQL ja sogar damit umgehen wenn die Daten nicht zu groß sind. Das wäre dann so ne art "security by obscurity" :)
MfG Maddin
-----Ursprüngliche Nachricht----- Von: lug-dd-bounces@mailman.schlittermann.de [mailto:lug-dd- bounces@mailman.schlittermann.de] Im Auftrag von streber Gesendet: Freitag, 27. März 2009 11:47 An: Linux-User-Group Dresden Betreff: Re: AW: Daten ablegen für Paranoide
Jap, sehr wichtig!
Grimnin Fridyson schrieb:
und ein ordentlich ausgestelltes Zertifikat, damit du sicher bist
wenn
du deine Daten anvertraust (sonst werden die ganzen men_in_the_middle noch ausgerottet :-) )
Ich hab mein Plan geändert da das mit den Zugriffen auf trucryt alles sehr hässlich wird.
also mein plan zur zeit: apache + mysql + php
- ganz simples gui -> zugang nur über https (-> wie geht das? davon
habsch keene ahnung ;D )
- einträge in der db per AES (256bit) verschlüsseln
(schlüsseleingabe
in gui)
- das apache verzeichnis per htacces sichern
was meint ihr dazu?
dank und grüße, rob
Lug-dd maillist - Lug-dd@mailman.schlittermann.de https://ssl.schlittermann.de/mailman/listinfo/lug-dd
Lug-dd maillist - Lug-dd@mailman.schlittermann.de https://ssl.schlittermann.de/mailman/listinfo/lug-dd
Hi Maddin,
Hä... hab ich was übersehen?
Nein. Scheinbar habe ich das übersehen das du die Daten ehh schon in der DB speichern möchtest, bzw. war es für mich aus dem Kontext nicht erlesbar ;)
Welche Daten liegen noch auf der Platte? (ausser der GUI mit dem DB connector includes).
Meine infos würd ich mittels mysql oder php crypt-funktionen verschlüsselt in der DB ablegen. Als Schlüssel dient die Eingabe meines PW in der GUI. Meinst Du das das PW irgendwo nich liegen muss damit die kommunikation mit der DB richtig klappt?
Deine Idee mit dem Blob muss eh sein, denn sie sind ja verschlüsselt ;)
danke und gruß, rob
MfG Maddin
Hi,
1. bitte einen neuen Mail-Thread anfangen wenn es ein neues Thema gibt - nicht einfach nur "Reply" klicken.
On Thursday 26 March 2009, punk@streber24.de wrote:
Hallo..
Ich möchte persönliche Informationen im web ablegen/editieren und mittels jedem Browser (lynx muss nicht unbedingt sein) zugreifen können. Am bequemsten währe natürlich webseite aufrufen -> via PW authentifizieren -> daten angezeigt bekommen / editieren -> fertig.
Soweit so möglich.
Kriterien sollen sein: 1.) niemand ausser dem PW inhaber darf an die Informationen rankommen können.
Machbar, wenn Du spezielle Software (nicht Browser) verwendest.
Ansonsten gilt: alles was der Browser sendet kann an irgendeiner Stelle gelesen werden (spätestens wenn der Server gehackt ist).
2.) Zugriff ohne zusätzliche HW/SW (nur belibiger browser) von überall auf der Welt aus möglich
Entweder 1 oder 2.
3.) auch super wenn keine Rückstände auf dem client computer zurückblieben
Nur bedingt möglich. Stichwort "Keylogger".
Als Hardware hab ich einen Vserver in einem RZ mit nem Lenny64bit drauf. Was würdet Ihr dafür verwenden?
Ein Notizbuch in der Hosentasche. Ernsthaft.
Was Deine Idee mit AES256 angeht: a) AES128 reicht vollkommen für nahezu alle Anwendungen b) bist Du Dir sicher, dass Du AES sicher einsetzt? Was exakt wäre Dein Protokoll? (Zufallsquelle, Sicherung des Schluessels, Erzeugung des Schluessels, Cipher-Mode, ...)
Ok, beschreibe mal bitte Dein Threat-Model. Gegen wen willst Du Dich alles schützen? Bitte ankreuzen:
[ ] Computer-Illiteraten (Kollegen/Bekannte) [ ] Computer-Illiteraten (Verwandschaft oder enge (Ex-)Freunde) [ ] Skript-Kiddies [ ] Organisiertes Verbrechen (Spam-Bot-Farmer) [ ] Organisiertes Verbrechen (Erpresser) [ ] versierte Hacker, die es auf Dich abgesehen haben (egal ob Ex-Freund(in) oder schon-immer-Feind) [ ] NSA/Mossad/BND/$GEHEIMDIENST
Welche Vektoren willst Du absichern?
[ ] Man-in-the-middle (Lauscher am Netz) [ ] Trojaner (zB. Keylogger) im Client [ ] Trojaner im Server [ ] Typ, der Dir über die Schulter schaut [ ] Server-Platten-Dieb [ ] Laptop-Dieb
Konrad
Hi Konrad,
Konrad Rosenbaum schrieb:
Hi,
- bitte einen neuen Mail-Thread anfangen wenn es ein neues Thema gibt -
nicht einfach nur "Reply" klicken.
besser so? ;)
On Thursday 26 March 2009, punk@streber24.de wrote:
Hallo..
Ich möchte persönliche Informationen im web ablegen/editieren und mittels jedem Browser (lynx muss nicht unbedingt sein) zugreifen können. Am bequemsten währe natürlich webseite aufrufen -> via PW authentifizieren -> daten angezeigt bekommen / editieren -> fertig.
Soweit so möglich.
Aha, beispiel?
Kriterien sollen sein: 1.) niemand ausser dem PW inhaber darf an die Informationen rankommen können.
Machbar, wenn Du spezielle Software (nicht Browser) verwendest.
Ansonsten gilt: alles was der Browser sendet kann an irgendeiner Stelle gelesen werden (spätestens wenn der Server gehackt ist).
Ok, ich hatte grade dazu ein paar Ideen, Nachricht auf mehreren Servern verteilen und mutierende Schlüssel. Aber im worstcase phreakt jemand Dein Monitor. Oder auf dem Internetcafé Rechner sitzt ein vnc den eine Kamera im Hinterzimmer abfilmt. ;-)
2.) Zugriff ohne zusätzliche HW/SW (nur belibiger browser) von überall auf der Welt aus möglich
Entweder 1 oder 2.
Lehrerzitat erste Stunde Programmierunterricht in der Schule: "grundsätzlich ist erstmal alles möglich"
Als Hardware hab ich einen Vserver in einem RZ mit nem Lenny64bit drauf. Was würdet Ihr dafür verwenden? Ein Notizbuch in der Hosentasche. Ernsthaft.
Und was würde ich daraus über Verschlüsselung lernen?
Was Deine Idee mit AES256 angeht: a) AES128 reicht vollkommen für nahezu alle Anwendungen b) bist Du Dir sicher, dass Du AES sicher einsetzt? Was exakt wäre Dein Protokoll? (Zufallsquelle, Sicherung des Schluessels, Erzeugung des Schluessels, Cipher-Mode, ...)
Ehrlich? Also ich bin auf dem Gebit absoluter Laie und verstehe nicht was Du mich da grade fragst. Aber dieses Projekt mache ich ja genau aus dem Grund das zu ändern. Also Antworte ich mal so gut ich atm. kann. a) bin ich nur paranoid oder verfolgt mich wirklich jemand? b) im Moment befinde ich mich noch in der Planungsphase, was sind die Kriterien für einen sicheren Einsatz von AES? Reicht der Zugriff per https + .htaccess + apache auth? b^1) der Schlüssel liegt allein in meinem Gedächtniss und besteht aus 24 oder mehr Zeichen
[ ] Computer-Illiteraten (Kollegen/Bekannte) [ ] Computer-Illiteraten (Verwandschaft oder enge (Ex-)Freunde) [ ] Skript-Kiddies [ ] Organisiertes Verbrechen (Spam-Bot-Farmer) [ ] Organisiertes Verbrechen (Erpresser) [ ] versierte Hacker, die es auf Dich abgesehen haben (egal ob Ex-Freund(in) oder schon-immer-Feind) [x] NSA/Mossad/BND/$GEHEIMDIENST
Ich will mich nicht wichtiger machen als ich bin, weil ich nicht glaube/hoffe das es mal soweit kommt. Aber ich bin politisch aktiv, hab meine eigene Meinung und sammel gern Informationen zu relevanten Themen.Mein persönliches Tagebuch geht ausserdem niemanden was an. Damit erübrigt sich auch Deine nächste Frage, "Welche Vektoren willst Du absichern?" denn die Antwort lautet, alles und jeder. vereinfacht gesagt das was atm. in meinem Gedächtnis ist will ich auslagern und intern vernetzen. Und niemand ausser mir hat das recht das zu sehen.
Nun klingt das alles nat. sehr drastisch, dessen bin ich mir bewusst. Bitte nicht vergessen, das ist ein lernprojekt. 100% Sicherheit ist nie Möglich, das ist klar. Aber ich möchte das alles was im Rahmen bleibt versucht haben. Und vorallem auch die Grenzen kennen lernen.
Vielen Dank erstmal schon für Deine erste interessante Meldung, und gruß, rob
On Friday 27 March 2009, Robert wrote:
Ich möchte persönliche Informationen im web ablegen/editieren und mittels jedem Browser (lynx muss nicht unbedingt sein) zugreifen können. Am bequemsten währe natürlich webseite aufrufen -> via PW authentifizieren -> daten angezeigt bekommen / editieren -> fertig.
Soweit so möglich.
Aha, beispiel?
Bis hier hin ist es simpelstes PHP. (Siehe PHP Doku, Stichworte $PHP_AUTH_*, HTML-Forms, $_POST)
Kriterien sollen sein: 1.) niemand ausser dem PW inhaber darf an die Informationen rankommen können.
Machbar, wenn Du spezielle Software (nicht Browser) verwendest.
Ansonsten gilt: alles was der Browser sendet kann an irgendeiner Stelle gelesen werden (spätestens wenn der Server gehackt ist).
Ok, ich hatte grade dazu ein paar Ideen, Nachricht auf mehreren Servern verteilen und mutierende Schlüssel.
Interessante Idee. Sie bricht leider an der Stelle zusammen wo Du den Aufwand für Dich und den Angreifer gegenüberstellst:
Du: *recht schwierige Implementation *wesentlich komplexere Algorithmen *Du musst alle Server gleichzeitig oben halten oder Algorithment finden, die toleranter sind (gibt es, sind nicht trivial) *nicht per Pure-Web machbar (braucht Spezialsoftware)
Angreifer: *muss n statt 1 Hosts abfragen
Aber im worstcase phreakt jemand Dein Monitor. Oder auf dem Internetcafé Rechner sitzt ein vnc den eine Kamera im Hinterzimmer abfilmt. ;-)
Genau.
Egal was Du tust, Du musst volle Kontrolle über die benutzten Clients haben. Wenn es auch nur ein paar Stunden sind, die Du den Client aus den Augen verlierst, dann könnte schon ein Keylogger drauf sein.
2.) Zugriff ohne zusätzliche HW/SW (nur belibiger browser) von überall auf der Welt aus möglich
Entweder 1 oder 2.
Lehrerzitat erste Stunde Programmierunterricht in der Schule: "grundsätzlich ist erstmal alles möglich"
Dein Lehrer hat über reine Programmieraufgaben gesprochen. Im Bereich der Security gibt es leider mehr Dinge, die beweisbar nicht gehen, als solche die beweisbar gehen.
Siehe oben.
Als Hardware hab ich einen Vserver in einem RZ mit nem Lenny64bit drauf. Was würdet Ihr dafür verwenden? Ein Notizbuch in der Hosentasche. Ernsthaft.
Und was würde ich daraus über Verschlüsselung lernen?
Dass sie nicht die einzige Lösung ist.
Was Deine Idee mit AES256 angeht: a) AES128 reicht vollkommen für nahezu alle Anwendungen b) bist Du Dir sicher, dass Du AES sicher einsetzt? Was exakt wäre Dein Protokoll? (Zufallsquelle, Sicherung des Schluessels, Erzeugung des Schluessels, Cipher-Mode, ...)
Ehrlich? Also ich bin auf dem Gebit absoluter Laie und verstehe nicht was Du mich da grade fragst.
Dann die Empfehlung: programmiere nichts selbst was Du als kritisch betrachtest - die Wahrscheinlichkeit für Fehler ist zu hoch.
Aber dieses Projekt mache ich ja genau aus dem Grund das zu ändern. Also Antworte ich mal so gut ich atm. kann. a) bin ich nur paranoid oder verfolgt mich wirklich jemand?
Antwort unbekannt.
Nur soviel: bewahre bei allem einen kühlen Kopf und den nötigen Abstand. Die paranoidesten Lösungen sind oft auch die unsichersten (weil das Verhalten eines panischen Individuums vorhersagbar ist).
b) im Moment befinde ich mich noch in der Planungsphase, was sind die Kriterien für einen sicheren Einsatz von AES? Reicht der Zugriff per https + .htaccess + apache auth?
Autsch. Du verwechselst gerade Cipher mit Protokoll. Das sind unterschiedliche Schichten. Bitte beachte die Literaturhinweise unten.
b^1) der Schlüssel liegt allein in meinem Gedächtniss und besteht aus 24 oder mehr Zeichen
Alles was Du Dir merken kannst hat zu wenig Zufall für Dein Level von Paranoia.
[ ] Computer-Illiteraten (Kollegen/Bekannte) [ ] Computer-Illiteraten (Verwandschaft oder enge (Ex-)Freunde) [ ] Skript-Kiddies [ ] Organisiertes Verbrechen (Spam-Bot-Farmer) [ ] Organisiertes Verbrechen (Erpresser) [ ] versierte Hacker, die es auf Dich abgesehen haben (egal ob Ex-Freund(in) oder schon-immer-Feind) [x] NSA/Mossad/BND/$GEHEIMDIENST
Wandere aus. Mars z.B. ...oder Tau Ceti.
Ich will mich nicht wichtiger machen als ich bin, weil ich nicht glaube/hoffe das es mal soweit kommt. Aber ich bin politisch aktiv, hab meine eigene Meinung und sammel gern Informationen zu relevanten Themen.Mein persönliches Tagebuch geht ausserdem niemanden was an. Damit erübrigt sich auch Deine nächste Frage, "Welche Vektoren willst Du absichern?" denn die Antwort lautet, alles und jeder. vereinfacht gesagt das was atm. in meinem Gedächtnis ist will ich auslagern und intern vernetzen. Und niemand ausser mir hat das recht das zu sehen.
Lösung: persönlicher Laptop, mit Truecrypt oder einem vergleichbaren Tool verschlüsselt. Sehr lange Passphrase. Den Laptop nie aus den Augen lassen (wg. Hardware-Keylogger). Aufpassen dass wirklich ALLE Partitionen verschlüsselt sind (auch swap!!). Den Laptop ausschalten wenn er nicht gebraucht wird (Suspend to RAM ist böse).
Es gibt Folien, die den Sichtbereich von Laptops einschränken.
Vermeide Netzwerke, oder benutze zumindest eine paranoide Firewall-Einstellung.
Vermeide proprietäre Betriebssysteme (Windows ist böse) und Programme (Skype ist böse).
Pass auf wo Du die Daten zwischeslagerst - es sollte mindestens das selbe Sicherheitslevel herrschen.
Ganz nebenbei: die Erpresser oder einen Geheimdienst mit schlechter Laune kannst Du nicht ausschließen: http://www.xkcd.org/538/
Nun klingt das alles nat. sehr drastisch, dessen bin ich mir bewusst. Bitte nicht vergessen, das ist ein lernprojekt. 100% Sicherheit ist nie Möglich, das ist klar. Aber ich möchte das alles was im Rahmen bleibt versucht haben. Und vorallem auch die Grenzen kennen lernen.
Bevor Du kritische Daten Deinen eigenen Experimenten anvertraust: besorge Dir passende Literatur(*) und probiere es an harmlosen Daten aus - lass die Programme von Experten begutachten.
(*) Z.B. Bruce Schneier: "Beyond Fear", "Applied Cryptography", etc.pp.
Wo wir gerade dabei sind: http://xkcd.com/177/ (wenn Du darüber lachen kannst, dann hast Du die Grundlagen verstanden)
Konrad
Hallo.
On Saturday 28 March 2009 11:32:28 Konrad Rosenbaum wrote:
Lösung: persönlicher Laptop, mit Truecrypt oder einem vergleichbaren Tool verschlüsselt. Sehr lange Passphrase. Den Laptop nie aus den Augen lassen (wg. Hardware-Keylogger). Aufpassen dass wirklich ALLE Partitionen verschlüsselt sind (auch swap!!). Den Laptop ausschalten wenn er nicht gebraucht wird (Suspend to RAM ist böse).
Dem schließe ich mich an, wenn du hinreichend paranoid bist solltest du davon absehen, deine Daten auf einem potentiell kompromittierten System zu öffnen. Dazu würde ich noch vorschlagen die Bootpartition (Der einzige Teil den du nicht verschlüsseln kannst und damit manipulierbar ist) auf einen USB-Stick auszulagern, den kann man tendenziell leichter im Auge behalten.
Vermeide Netzwerke, oder benutze zumindest eine paranoide Firewall-Einstellung.
Dazu hätte ich selber mal eine Frage: @Konrad: gibt es ein gutes Tutorial zur Einrichtung von iptables, als ich das zuletzt versucht hab kam ich danach selbst nicht mehr ins Netzwerk ;(
Als Passwort solltest du etwas zufälliges nehmen, dazu gibt es pwgen. Wobei ich mich durch diese Diskussion auf die Idee gekommen bin mal die Entropie dieser Passwörter zu bestimmen, auf die einfache Art mit einem Komprimierungsprogramm (gzip -n -9 ). Ich dazu ein 2MB großes "Passwort" komprimiert um Fehler durch einen eventuellen gzip Header klein zu halten (gibt es einen?).
Das Ergebnis: (pwgen -s -y ) liefert etwa 6,6 Bit Information pro Byte bzw. pro Zeichen. Dabei enthält der Zeichensatz Groß-, Kleinbuchstaben, Ziffern und einige Sonderzeichen. Das Passwort wir zufällig generiert, also kann man es sich kaum merken. (pwgen -y ) liefert nur etwa 4,6 Bit, dafür kann man sich das PW aber merken.
Bei letzterem bräuchtest du also 28 Zeichen für 128 Bit Sicherheit,bei 256 Bit entsprechend 56.
Jeffrey
Ich habe da leider noch etwas wichtiges vergessen: Das Ergebnis dieser "Entropiemessung" hängt von der Kombination aus Daten und Komprimierungsalgorithmus ab. Also besonder paranoide können von dem Wert noch ein halbes bis ein Bit abziehen. z.B. Bescheinigt (lzma -9 ) (pwgen -y ) nur 4,3 Bit Information pro Zeichen Der wahre Wert liegt immer etwas darunter.
Jeffrey
On Saturday 28 March 2009 14:24:00 Jeffrey Kelling wrote:
Das Ergebnis: (pwgen -s -y ) liefert etwa 6,6 Bit Information pro Byte bzw. pro Zeichen. Dabei enthält der Zeichensatz Groß-, Kleinbuchstaben, Ziffern und einige Sonderzeichen. Das Passwort wir zufällig generiert, also kann man es sich kaum merken. (pwgen -y ) liefert nur etwa 4,6 Bit, dafür kann man sich das PW aber merken.
Bei letzterem bräuchtest du also 28 Zeichen für 128 Bit Sicherheit,bei 256 Bit entsprechend 56.
Jeffrey
On Saturday 28 March 2009, Jeffrey Kelling wrote:
Vermeide Netzwerke, oder benutze zumindest eine paranoide Firewall-Einstellung.
Dazu hätte ich selber mal eine Frage: @Konrad: gibt es ein gutes Tutorial zur Einrichtung von iptables, als ich das zuletzt versucht hab kam ich danach selbst nicht mehr ins Netzwerk ;(
Ich kenne keines. Man sollte während der Experimente zumindest direkten (Tastatur-) Zugriff auf die eigene Maschine haben.
Als Passwort solltest du etwas zufälliges nehmen, dazu gibt es pwgen. Wobei ich mich durch diese Diskussion auf die Idee gekommen bin mal die Entropie dieser Passwörter zu bestimmen, auf die einfache Art mit einem Komprimierungsprogramm (gzip -n -9 ). Ich dazu ein 2MB großes "Passwort" komprimiert um Fehler durch einen eventuellen gzip Header klein zu halten (gibt es einen?).
Pack einfach mal eine 0-byte-Datei und schau wie groß das Ergebnis ist.
Das Ergebnis: (pwgen -s -y ) liefert etwa 6,6 Bit Information pro Byte bzw. pro Zeichen. Dabei enthält der Zeichensatz Groß-, Kleinbuchstaben, Ziffern und einige Sonderzeichen. Das Passwort wir zufällig generiert, also kann man es sich kaum merken.
Das halte ich für sehr hoch geschätzt. -sy klingt in etwa nach dem selben Zeichensatz, wie base64. Selbst wenn es ein paar mehr sind, ist das Maximum ca. 6,1 bit.
(pwgen -y ) liefert nur etwa 4,6 Bit, dafür kann man sich das PW aber merken.
Auch das klingt hoch - ich würde 3-3,5 bit ansetzen.
Bei letzterem bräuchtest du also 28 Zeichen für 128 Bit Sicherheit,bei 256 Bit entsprechend 56.
Aufgabe für Leute die schon alles können: merke Dir ein 28 Zeichen langes zufälliges Passwort. Aller 3 Monate ein Neues. Viel Glück.
In anderen Worten: Passworte sind eine unzuverlässige Authentifikationsform.
Je eher Systeme per default mehrere Authentifikationsquellen kombinieren, umso besser.
Ganz nebenbei wir haben die Wahl: *"etwas, das Du weißt" (Passworte, Erinnerungsfragen, ...) *"etwas, was Du bist" (Biometrie) *"etwas, das Du besitzt" (verschiedenste Token)
Unter den radikaleren Cryptographen auch bekannt als: etwas, das Du vergessen hast, das Du mal warst oder das Du verloren hast.
Konrad
Am 28. März 2009 16:22 schrieb Konrad Rosenbaum konrad@silmor.de:
On Saturday 28 March 2009, Jeffrey Kelling wrote:
Vermeide Netzwerke, oder benutze zumindest eine paranoide Firewall-Einstellung.
Dazu hätte ich selber mal eine Frage: @Konrad: gibt es ein gutes Tutorial zur Einrichtung von iptables, als ich das zuletzt versucht hab kam ich danach selbst nicht mehr ins Netzwerk ;(
Ich kenne keines. Man sollte während der Experimente zumindest direkten (Tastatur-) Zugriff auf die eigene Maschine haben.
Dazu folgender Tipp: Cronjob, der aller XX Minuten die iptables auf einen definierten Zustand zurücksetzt.
Robert
Hallo,
On Saturday 28 March 2009 16:22:24 Konrad Rosenbaum wrote:
Pack einfach mal eine 0-byte-Datei und schau wie groß das Ergebnis ist.
Peinlich... Also die 20B (gzip) bzw. 18B (lzma) sind vernachlässigbar gegen 1,1MB, verfälschen also die Messungen nicht sehr.
Das Ergebnis: (pwgen -s -y ) liefert etwa 6,6 Bit Information pro Byte bzw. pro Zeichen. Dabei enthält der Zeichensatz Groß-, Kleinbuchstaben, Ziffern und einige Sonderzeichen. Das Passwort wir zufällig generiert, also kann man es sich kaum merken.
Das halte ich für sehr hoch geschätzt. -sy klingt in etwa nach dem selben Zeichensatz, wie base64. Selbst wenn es ein paar mehr sind, ist das Maximum ca. 6,1 bit.
Neben Buchstaben und Ziffern verwendet pwgen 31 Sonderzeichen (nach meiner Zählung), macht 93 Zeichen also 6,54 Bit, die bei Verwendung eines hinreichend guten Zufallsgenerators auch erhalten bleiben. Um den Wert zu messen bräuchte man natürlich einen idealen Kopressionsalgorithmus.
(pwgen -y ) liefert nur etwa 4,6 Bit, dafür kann man sich das PW aber merken.
Auch das klingt hoch - ich würde 3-3,5 bit ansetzen.
Wahrscheinlich ist hier der Messfehler auch größer, durch die von pwgen absichtlich eingebauten Redundanzen ist die Abhängigkeit des Ergebnisses vom Algorithmus größer.
Je eher Systeme per default mehrere Authentifikationsquellen kombinieren, umso besser.
Ganz nebenbei wir haben die Wahl: *"etwas, das Du weißt" (Passworte, Erinnerungsfragen, ...) *"etwas, was Du bist" (Biometrie) *"etwas, das Du besitzt" (verschiedenste Token)
Es gibt Registrierkassen bei denen Authentifikation über einen Schlüssel läuft. Gibt es sowas auch für Rechner, als USB Gerät?
Unter den radikaleren Cryptographen auch bekannt als: etwas, das Du vergessen hast, das Du mal warst oder das Du verloren hast.
Das mit dem Vergessen hat aber den Vorteil, dass sich damit das Passwort vor Behörden schützen lässt. Ausgenommen vllt Geheimdienste...
Jeffrey
[gekürzt]
Es gibt Registrierkassen bei denen Authentifikation über einen Schlüssel läuft. Gibt es sowas auch für Rechner, als USB Gerät?
http://de.wikipedia.org/wiki/SecurID
jetzt neu mit usb :-)
oder nutze blauzahn von deinem Handy :-)
andreas
Konrad Rosenbaum konrad@silmor.de (Sa 28 Mär 2009 16:22:24 CET):
On Saturday 28 March 2009, Jeffrey Kelling wrote:
Vermeide Netzwerke, oder benutze zumindest eine paranoide Firewall-Einstellung.
Dazu hätte ich selber mal eine Frage: @Konrad: gibt es ein gutes Tutorial zur Einrichtung von iptables, als ich das zuletzt versucht hab kam ich danach selbst nicht mehr ins Netzwerk ;(
Ich kenne keines. Man sollte während der Experimente zumindest direkten (Tastatur-) Zugriff auf die eigene Maschine haben.
Oder sowas wie:
#! /bin/bash # © 2008 Heiko Schlittermann hs@schlittermann.de # $Id: firestart 3589 2008-01-21 21:21:24Z heiko $ # $URL: https://svn.schlittermann.de/is/firestart/trunk/firestart $
tmp=$(getopt -n $(basename 0) -o hm -l help,man -- $@) eval set -- $tmp while true; do o="$1"; shift case "$o" in -h|--help) pod2usage -verbose 0 $0; exit 0 ;; -m|--man) pod2usage -verbose 2 $0; exit 0 ;; --) break ;; esac done
SCRIPT=${1-/etc/network/firewall} TMOUT=${2-10} TMPFILE=$(mktemp)
function die() { echo "$(basename $0): $@" >&2; exit 1; } function save() { echo -n "saving firewall to $1... " >&2 iptables-save >$1 echo "ok" >&2 } function restore() { test -f $1 || return echo -en "\nrestoring firewall rules from $1... " >&2 iptables-restore <$1 echo "ok" >&2 rm -vf $1 }
trap "test -f $TMPFILE && restore $TMPFILE" EXIT
test -f $SCRIPT || die "$SCRIPT not found"
save $TMPFILE
unset REPLY
if $SCRIPT; then read -t $TMOUT -p "OK? (yes/no) (timeout: ${TMOUT}s): " \ && test "$REPLY" == "yes" \ && echo "new firewall is active now" >&2 \ && rm $TMPFILE \ && exit 0 fi
restore $TMPFILE
# if it's not set, the read timed out and we want to # read the response now test "${REPLY+set}" || read -t 5
exit 1
=head1 NAME
firestart - simple wrapper for safe firewall start
=head1 SYNOPSIS
firestart [filename [timeout]] firestart {-h|--help} | {-m|--man}
=head1 DESCRIPTION
This script just saves the current firewall state, starts the new one and waits for user input. If this input doesn't appear, the old state is restored. Same if the used doesn't confirm the new settings.
The I<timeout> is the time (seconds) to wait for user input after starting the firewall (default: 10). The I<filename> is the name of the firewall script, it has to be executable (default: F</etc/network/firewall>).
=head1 OPTIONS
=over 4
=item B<-h>|B<--help>
Short help.
=item B<-m>|B<--man>
Man page
=back
=head1 AUTHOR
Heiko Schlittermann
=cut
On 27.03.09 Robert (punk@streber24.de) wrote:
Konrad Rosenbaum schrieb:
Hi,
- bitte einen neuen Mail-Thread anfangen wenn es ein neues Thema
gibt - nicht einfach nur "Reply" klicken.
besser so? ;)
Du hast doch sicher auch einen Nachnamen. Oder widerspricht das Deinem Sicherheitsdenken?
[Threat-Model]
[x] NSA/Mossad/BND/$GEHEIMDIENST
Ich will mich nicht wichtiger machen als ich bin, weil ich nicht glaube/hoffe das es mal soweit kommt. Aber ich bin politisch aktiv, hab meine eigene Meinung und sammel gern Informationen zu relevanten Themen.
Ich weiß ja nicht, was Du unter "politisch aktiv" verstehst: Reinkarnation von "9/11"? Bei sowas sollte man sich absichern, das ist richtig. Im Übrigen wundert mich, daß Du es vorziehst unverschlüsslte E-Mails zu versenden: weder blackhole noch google werfen einen PGP-Key von Dir aus.
H"wenn schon paranoid dann richtig"mar
lug-dd@mailman.schlittermann.de