![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #61 | |
| Erfahrener Benutzer Registriert seit: 18.08.2005
Beiträge: 108
| Zitat:
Träumen muss natürlich erlaubt sein, aber rumschlagen müssen wir uns trotzdem mit der Realität, und da ist es ein Gebot der Höflichkeit, dass auch ich als Betreiber das Passwort des Benutzers nicht kenne, aus offensichtlichen Gründen. | |
| | |
| | Nach oben #62 | ||
| n00b -.- Registriert seit: 10.11.2005
Beiträge: 318
| Zitat:
Zitat:
__________________ Alle wollen doch nur mein Bestes. Aber sie werden es nicht kriegen! | ||
| | |
| | Nach oben #63 | |
| me pro ok? Registriert seit: 07.09.2005 Ort: Pulheim bei Köln
Beiträge: 964
| Zitat:
__________________ Gedanken aus Draht stricken einen Zaun. | |
| | |
| | Nach oben #64 | ||||
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
| Zitat:
Zitat:
Zitat:
BTT: Zitat:
Je länger der Hash desto weniger Kollisionen gibt es, denke ich. Daher wäre SHA-512 das sicherste, aber obs notwendig ist, ist eine andere Frage
__________________ I did it my way - Senseless-Blog | ||||
| | |
| | Nach oben #65 | ||
| n00b -.- Registriert seit: 10.11.2005
Beiträge: 318
| Zitat:
edit: Zitat:
edit2; tut mir leid wenn ich ein bissel aggressiv und dumm argumentier, aber ich hab hier so ne krise, wem soll ich eher glauben, euch oder ihm?
__________________ Alle wollen doch nur mein Bestes. Aber sie werden es nicht kriegen! Geändert von Bookworm (30.07.2006 um 18:08 Uhr) | ||
| | |
| | Nach oben #66 |
| me pro ok? Registriert seit: 07.09.2005 Ort: Pulheim bei Köln
Beiträge: 964
|
Du vielleicht nicht. Aber glaub mir, es gibt genug "bösartige" (ich unterstelle das einfach mal
__________________ Gedanken aus Draht stricken einen Zaun. |
| | |
| | Nach oben #67 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
SQL Injections laufen über normale Eingabeformulare wie Loginformulare... Nachzulesen was das ist geht via Google! Sollte man kennen...
__________________ I did it my way - Senseless-Blog |
| | |
| | Nach oben #68 | |
| Christian Mühlroth Registriert seit: 04.09.2005 Ort: Nürnberg
Beiträge: 561
| Zitat:
Warum? Ganz einfach. Er kennt deinen Hashalgorhitmus (z.B. mit Salt) nicht.
__________________ http://www.ChrisDiary.De | |
| | |
| | Nach oben #69 | |||
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.129
| Zitat:
Zitat:
Zitat:
| |||
| | |
| | Nach oben #70 | |
| Erfahrener Benutzer Registriert seit: 18.08.2005
Beiträge: 108
| Zitat:
Zweitens sollte man, wenn man die Interessen anderer (der Passwort-Ausdenker) derart holzköpfig missachtet, nur noch für den eigenen Keller programmieren und nie wieder jemand anders mit seiner Software belästigen. Gibt halt Leute, die halten Datenschutz für überflüssig, ausser es geht um ihre eigenen Daten. (Passwörter fallen AFAIK nicht unter den Datenschutz, aber trotzdem) PS: "Prollfaktor"? DAS SCHREIBEN SICHERER SOFTWARE IST PFLICHT UND KEIN VERFICKTER SCHWANZLÄNGENVERGLEICH! | |
| | |
| | Nach oben #71 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
Bookworm, du hast hier in ein Bienennest gestochen und Blasphemie betrieben. Du solltest dringend dein Wissen über Sicherheitsthemen kräftig ausbauen und nachlesen.
__________________ I did it my way - Senseless-Blog |
| | |
| | Nach oben #73 | ||||
| Neuer Benutzer Registriert seit: 05.08.2006
Beiträge: 1
|
So, dann will ich mich auch mal mit einklinken. Ich bin der von Bookworm angesprochene Zitat:
Gleich mal vorneweg: Dies ist genau genommen eine relativ hypothetische Diskussion auf Basis einiger Gedankengänge, die ich mir mal gemacht hab. Meine eigenen Passwörter sind gehasht, allerdings vor allem aus den bereits angesprochenen moralischen Gründen: Ich will nicht in die Verlegenheit kommen, die Passwörter anderer Leute zu kennen. Allerdings bin ich immer noch auf der Suche nach wirklich stichhaltigen Argumenten, warum eine Verschlüsselung oder ein Hashing von Passwörtern wirklich sinnvoll sein soll. Auf die, die hier genannt wurden, geh ich später noch ein. Aber erst mal folgendes: Wenn mans auf die Spitze treibt, könnte man sogar argumentieren, dass solche Sachen "gefährlich" sind. Denn sie gaukeln dem Benutzer eine Sicherheit vor, die nicht wirklich existiert. Wenn ich also Otto-normal-Nutzer davon höre, dass die Passwörter "verschlüsselt" gespeichert werden, dann gehe ich natürlich davon aus, dass das auch sicher ist. Also insbesondere, dass niemand, auch nicht der Betreiber, meine Passwörter lesen kann. Zumindest für den Betreiber gilt das jedoch nicht: Ich muss dem einmal glauben, dass er die wirklich verschlüsselt. Daneben muss ich ihm auch glauben, dass er die Passwörter, die im Klartext bei ihm ankommen, nicht irgendwie mitschneidet. Genauso gut kann ich ihm doch auch glauben, dass er Passwörter, die im Klartext in der Datenbank stehen, nicht liest, oder? Auf der anderen Seite glaube ich dann natürlich auch, dass kein Hacker an meine Passwörter rankommen wird - denn sie sind ja verschlüsselt. Also wähne ich meine Passwörter absolut sicher. Und weil die eh niemand jemals kennen kann kann ich doch auch für jede Seite das gleiche Passwort verwenden, richtig? Wenn man wüsste, dass die Passwörter im Klartext gespeichert werden, sähe dieser Gedankengang vielleicht ganz anders aus... Inbesondere wirklich wichtige Passwörter wären dann definitiv Einzelstücke. Ich gebe zu, dies alles klingt ziemlich an den Haaren herbeigezogen. Ist es vermutlich auch... Aber darüber nachdenken kann man trotzdem mal... Nun aber zu den Argumenten für Verschlüsselung / Hashing: Zitat:
Allerdings, wenn es einmal so weit gekommen ist, dann brauche ich die Passwörter doch gar nicht mehr im Klartext zu kennen. Oder kann mir einer ein Szenario nennen, bei dem es über eine SQL-Injektion möglich ist, die Passwörter auszulesen, gleichzeitig aber kein Schreibzugriff auf die Datenbank möglich sein soll? Mir fallen nur sehr wenige Anwendungen ein, die nur lesend auf ne Datenbank zugreifen müssen, und die verwenden mit ziemlicher Sicherheit keine Passwörter. Bei allem anderen sollte sich auch irgendwie ein UPDATE mit reinmogeln lassen... Damit kann man dann tun und lassen, was man will. Und ob das jetzt sofort geht, weil man das Passwort direkt in der Hand hat, oder einen kleinen Umweg bedarf spielt dann eigentlich keine Rolle mehr, die Kacke is dann auf jeden Fall am Dampfen... Und selbst wenn man das Passwort wirklich im Klartext kennen will: Auch das ist dann doch möglich, solange der Algorithmus, der sich um die Passwörter kümmert, nicht wirklich verdammt gut ist. Viele Scripte sind frei verfügbar, da scheiden Späße wie doppeltes Hashen schon mal aus. So was wirkt nur, wenn man nix davon weiß... Salt... Is ne schöne Sache, machts auf jeden Fall komplizierter. Wenn man jedoch die Passwörter alle auslesen kann... Nun, was hindert mich daran, mich in dem System zu registrieren und zu gucken, was aus meinem gewählten Passwort wird? So lang der Salt nur die Länge eines durchschnittlichen Passworts hat, dauert es selbst per Brute Force nicht so lang, auf den Salt zurückzuschließen. Zitat:
Wobei sich auch hier die Frage stellt, was nützen mir die Zugangsinformationen zu irgendwelchen unbedeutenden Forenaccounts? Ok, vielleicht sind ein paar bedeutende dabei, aber da bin ich der Meinung, wer überall das gleiche Passwort verwendet, ist selber Schuld. Und würde es vielleicht nicht tun, wenn er wüsste, dass die Passwörter im Klartext gespeichert werden. Aber lassen wir das... Zitat:
Worauf ich hinaus will: Wirklich sichere Software lässt keine Lücke, über die man an die Passwörter rankommt. Entsprechend sollte es auch nicht notwendig sein, diese zu verschlüsseln. Natürlich ist 100%ige Sicherheit Wunschdenken... Und noch ein letzter Gedanke: Die größte Gefahr liegt mMn auch nicht unbedingt in der Datenbank, sondern eher in der Art, wie die Passwörter nach der Eingabe behandelt werden. Zum Server werden sie im Klartext übertragen, entsprechend lassen sie sich da (das notwendige Know-How vorausgesetzt) auch auslesen. Oder die unsäglichen Cookies, die die Zugangsinformationen speichern... Könnte man wohl auch böse Sachen mit anstellen, wenn mans drauf anlegt... Das waren so ein paar meiner Gedanken zu diesem Thema. Und jetzt die Frage: Wo genau liegt der gewaltige Sicherheitsgewinn, wenn ich zig verschachtelte Hashing- und Verschlüsselungsalgorithmen über meine Passwörter laufen lasse? Von den moralischen Gründen mal abgesehen... (Und abgesehen von der Tatsache, dass sich der Prozessor über solche Sachen immer freut und bei wirklich vielen Benutzern elends langsam wird... Ein System, das nicht reagiert, kann man natürlich auch nicht angreifen... Ich hoffe einfach mal auf eine schöne, sachliche Diskussion zu diesem Thema. Sprich ohne ein "du hast doch keine Ahnung, wovon du redest" und "es ist sicherer so. Punkt." | ||||
| | |
| | Nach oben #74 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.129
|
Wenn SQL-Injections möglich sind, dann ist das ein Bug in der Software. Das ist ne Sache, die passieren kann - sollte sie natürlich nicht. Wenn die Passwörter verschlüsselt sind, dann wird die Gefahr zumindest verringert - sozusagen als extra Fangnetz. Warum es besonders aufwendig sein soll, einen Salt mit einzubinden, weiß ich leider auch nicht. Den brauche ich pro Installation einmal zu generieren. Ob der Benutzer das Dingen selbst aussucht, oder ob ich nen Timestamp nehme oder den nochmal per md5 verschlüssel (damit ich nicht nur zahlen habe und das ganze länger ist), ist dabei egal. Was du außerdem nicht vergessen darfst: Wenn man so vorgeht, wie du es vorgeschlagen hast, dann musst du zweimal eine Brute-Force Attacke ausführen. Einmal, um den Salt zu finden, und einmal, um das tatsächliche Passwort zu bestimmen. Davon abgesehen bezweifle ich, dass ich jedesmal ein neues Passwort benutzen würde, wenn ich nicht wüsste, ob es geheim bleibt. Diese Gewissheit habe ich auch jetzt nicht. Wenn ich dem Anbieter nicht vertraue (d.h. einen Grund habe, ihm zu misstrauen) nehme ich üblicherweise tatsächlich ein anderes Passwort, aber dazu muss ich eben erst einen Grund haben. Ich für meinen Teil kann mir einfach keine 2000 Passwörter merken. Geht einfach nicht und ich gehe sehr stark davon aus, dass andere damit noch größere Probleme haben würden. Ich hab irgendwie 5 oder 6 verschiedene Passwörter, die ich verwende. Und eben das ist das tolle: Ich weiß es nicht mehr! Ich muss jedesmal raten, welches Passwort ich denn nun für diese Seite, dieses Programml, angegeben habe. Ziemlich blöd. So, jetzt nochmal zum Thema SQL-Injections: Wie gesagt sind das Bugs. d.h. nur weil ein SELECT-Query angreifbar ist, muss das nicht auch für die INSERT/UPDATE/DELETE-Queries gelten. Insofern ist es tatsächlich eine gewisse Extra-Sicherheit, die hier geboten wird. Eines sollte dir klar sein: Es ist unmöglich, ein 100% sicheres Programm zu schreiben, wenn es um Datenverarbeitung geht. Selbst wenn du alle möglichen technischen Dinge abdeckst, gibt es immer noch den Faktor "Mensch". Alles, was du tun kannst, ist, es einem möglichen Einbrecher so schwer wie möglich zu machen. Und das geht eben dadurch, dass du soviele Barrieren wie möglich aufbaust. Selbst wenn er durch die ersten 5 durchkommt, vielleicht gibt er bei der sechsten auf. Um über Cookies dran zu kommen müsstest du vorher aber erstmal nen XSS-Bug enttarnen. So... ich muss zugeben, ein paar Teile deines Beitrages überflogen zu haben. Also ist nur ein kurzer Kommentar. |
| | |
| | Nach oben #75 | ||||
| Benutzer Registriert seit: 20.08.2005
Beiträge: 91
| Zitat:
Aber es wurde bereits festgestlellt: verschlüsseln !=zerhashen (...wegen ich würd Themen nicht vergfolgen: hab halt nicht immer direkt Zeit meinen Senf dazu zu geben) Deshalb wäre hier ein Beispiel bei dem verbergen sicherer (nicht sicher!) ist: Durch den Hash kann nicht auf das Passwort geschlossen werden, wenn aber jemand den Code kennt ist eine Verschlüsselung aber geknackt. (Das mal als Erklärung für WarrenFaith, wenn auch verspätet) Zitat:
(Klingt politisch, ist aber sachlich korrekt) Wo also der "erfahrere" grad ne Geschichte am schreiben ist will ich auch mal nicht nachstehen. Hab grad so nen Fall: - Ein Kunde möchte das nur angemeldete Gäste Bilder einer Singlebörse betrachten können Kein Problem also, ich muß nur einfügen: Userverwaltung, Login, Rechtesystem Immer noch kein Problem, für das angepeilte Budget für mich gerne machbar. ABER: - Die Passwörter des vorliegenden Scripts sind im Klartext gespeichert, es ist kein Schutz gegen MySQL Injektion vorhanden. - Das Script soll von Kunden mit mehreren tausend Benutzern zum Einsatz kommen (Das das Script nicht modern ist, noch was ganz anderes) Ich habe das der Kundschaft erstmal so geschildert. (Dabei besteht immer die Gefahr vom Kunden mißverstanden zu werden: Klar kann ich die gewünschten Funktionen eben mal einfügen für den veranschlagten Preis, ich kann aber so keine "saubere Arbeit" abliefern und erfahrungsgemäß denkt der Kunde: "Jetzt will er mir Folgeaufträge abschwatzen bevor überhaupt das scheiß Login funktioniert." Ich hab schon Depressionen deswegen gehabt. Es ist so einfach so: - Entweder zahlt der Kunde mahr als hundert euro, oder aber er bekommt Schrott. Das ist sogar bei mir so. Das ist sogar bei Nutten so. Oder Du bekommst einen gefälschten Aidstest aus Afrika vorgezeigt. Es ist oft schwer zu vermitteln das dabei das Kundeninteresse vertreten werden soll. (Eine Programmierergewerkschaft in Deutschland hat den Betastatus noch nichtmal erreicht...) Trotzdem muß man dem Kunden sagen das Softwaresicherheit ein Thema für ihn sein sollte. Nicht nur bei Webanwendungen - es gibt Studien die davon ausgehen das ca. 90% ALLER (privater/kommerzieller...) PCs mit Spionagesoftware verseucht sind. Es ist furchtbar: Fast immer wenn ich jemanden auf die Sicherheitschwachstellen in seinem System hinweise, fühlt der Betroffene sich persönlich angegriffen. Aber es ist klar: Es werden immer die Kosten mit dem Nutzen relativiert - viele denken dabei zu kurzfristig. Zitat:
Es ist sicherer so. Punkt. mfg Till - md5 kiffen und Gehirne zerhacken, davon wir der Ben schlau. Zitat:
mfg Till EDIT: - Sehr schade, das wär für mich aber ein Thema mit dem Titel "Softwareethik" gewesen. Bald hab ich keine Lust mehr hier. Vorletzte Warnung. Geändert von Homepagespeicher (05.08.2006 um 21:21 Uhr) | ||||
| | |
| | Nach oben #76 | ||||
| Erfahrener Benutzer Registriert seit: 18.08.2005
Beiträge: 108
| Zitat:
Es muss nicht immer die SQL-Injection sein. Zitat:
Zitat:
| ||||
| | |
| | Nach oben #77 |
| Johannes Schlichenmaier Registriert seit: 26.08.2005 Ort: Mannheim
Beiträge: 403
|
Ähm..... Der Thread hat zwar schon nen Bart aber ich hab mal nen Vorschlag: Wir wollen ja den Usern und Gästen hier was bieten. Und ich denke man kann auch ohne Kristallkugel sagen dass die meisten (PHP-)Programmierer sich in Sachen Passwortverschlüsselung/-hashing auf ziemlich dünnem Eis gegeben. Das mag daran liegen, dass die Programmierer die nötigen Funktionen nicht kennen oder dass sie sich unsicher über deren Anwendung sind. Daher mein Vorschlag: Wollte einer, der sich damit ausgekennt (ich denke, die gibt es hier in diesem Forum) und sich dafür interessiert nicht ein Tutorial über die Verschlüsselung (von Passwörtern) [in PHP] schreiben, dass Unbedarfte an das Thema heranführt? Das wäre vllt. nicht schlecht und Waq und andere müsste vielleicht nicht immer die gleichen Schlachten schlagen? Jojo
__________________ In the beginning was the word and the word was content-type: plain/text heute code ich, morgen debug ich und uebermorgen cast ich die koenigin auf int |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| PHP Sicherheit und Sicherheitslücken | java² | PHP-Programmierung | 4 | 27.09.2006 13:04 |
| md5 und andere Verschlüsselungen | Leo | PHP-Programmierung | 8 | 11.03.2006 14:46 |
| md5 | am82 | Allgemeine Java-Programmierung | 4 | 09.12.2005 08:29 |
| Datenbank und Sicherheit | sparrow | Datenbanken | 23 | 05.11.2005 17:45 |
| Sicherheit beim Programmieren | schifti | Plauderecke | 2 | 22.04.2005 09:42 |