Ich hab absolut null Ahnung von irgendwas, was ich da sehe. Habe auch keine Ahnung warum mir dieses Video vorgeschlagen wurde und ich es mir angeguckt habe. Ich weiß nur das ich es unfassbar interessant finde und mehr wissen will!
Es ist erschreckend, wie einfach das ist. Etwas Informationen sammeln und schon gehts los. Das war jetzt ein Shop, will gar nicht wissen, was sonst noch alles möglich ist. Obwohl, eigentlich sollte es klar sein. Vielen Dank für diesen Beitrag.
Sehr gut erklärt! Es kommt ein wenig so rüber, als ob die hier vorgestellten Sicherheitslücken immer auszunutzen sind. Das ist aber höchstens bei Hobbyprojekten von irgendwelchen Anfängern der Fall (oder Usern mit schlechten Passwörtern wie "admin123"). Kommerzielle Anwendungen kann man mit den hier genannten Methoden nicht hacken.
ja da hast du Recht. Natürlich zeige ich hier nur die Basics. Auch aus Sicherheitsgründen. Aber es geht einfach mehr um die Denkweise und darum, Lust auf das Thema IT, IT-Sicherheit und Programmieren zu machen :-)
Leider gibt es sollte Fehler auch bei kommerziellen Anwendungen. Nur werden diese dann schnell und meisten stillschweigend gefixt. Die Gründe dafür sind vielfältig. Zu geringe Zeit für ein ordentliche Programmierung / einen ordentlichen Test. Fehlendes Know-How ... Bin selber Webentwickler und kenne das aus eigener Erfahrung.
@@Programmierenlernen ein Video darüber wie man diese Sicherheitslücken schließt bei seiner eigenen Seite wäre doch nice. Also wie man Eingabefelder sicher verarbeitet.
Moin Junus, hoffe es geht ihnen bestens 😆. Wollte mich mal so bei ihnen bedanken, für ihren tollen Kanal, welch einer viel hilfreicher ist als manch andere. Echt tolle Videos die meiner Meinung nach wirklich mehr Aufmerksamkeit verdient hätten, dafür welch eine Mühe in den Videos stecken. 👍 Danke für alles, dank den Videos habe ich vor ungefähr nh Woche auch meine erste Webseite erstellt mit HTML und CSS, nun sitze ich an meinem Rechner um mich jetzt mehr mit JavaScript schlau zu machen, was auch nochmal anders ist als HTML und CSS. Naja, an diesem Sprung von so etwas einfachen zu so etwas (schwerem) muss man sich erst einmal gewöhnen. 😂 Ich gebe mein bestes und hoffe mehr dazu lernen zu können.
Tolles Video. Sehr gut erklärt.👍 Und genau darum gibt es in den meisten relationalen Datenbankmanagementsysten (RDBMS) Prepared Statements mit dem SQL-Injection nicht möglich ist. Neben der Nutzung dieser Technik sollte es sollte zum Routine gehören, Benutzereingaben immer vor Weitergabe an die DB immer zu validieren und zum anderen die Fehler der DB immer abzufangen und keines Falls so durchzureichen. Mittlerweile gibt es neben SHA256 auch SHA512 dessen Hash deutlich länger ist (512 Bits statt 256) Natürlich gibt es auch hierfür Tabellen, sodass die Länge bei einem einfachen Passwort quasi egal ist. Es gibt dann noch die Möglichkeit einen eigenen Präfix und einen sog. Salt anzugeben, sodass das Passwort schwerer zu knacken ist. Nützt allerdings nichts, wenn solche fundamentalen Fehler gemacht werden. Da waren echte Profis der Programmierung am Werk 😉 Da muss man sich dann nicht wundern, wenn die eigene E-Mailadresse Teil eines Datenlecks ist... und man nun haufenweise Spam bekommt. Leider habe ich in meiner Arbeit als Webentwickler schon einige dieser "tollen" Quellcodes gesehen und mich jedesmal wie Bolle gefreut. Mir wird schon bei dem Gedanken daran 😖.
Sehr Interesssant das ganze, und ich bin da ja absolut ein hinterwäldler, ich bastel selten mal etwas mit Phase5 Html :-))) So denn ich habe es mal aboniert, vielleicht bleibt ja etwas hängen
Es wäre mal super spannend für WordPress Webseiten. Davon existieren ja schließlich Millionen. Kannst Du dazu ein Video machen für die IT-Sicherheit? LG
Die websiten sind oft sehr sicher weil es opsn source ist dazu kommt das es halt Millionen nutzen da gibt es oft wenig Lücken das einzigste was es gibt sind zero daya exploits bei manchen Datenbanken oder kleinen Extras bei solchen Webseiten
Sehr gut erklärt. 👍 Allerdings war das ja jetzt ein sehr einfach Psswort mit einem MD5 hash. Was machst du denn bei einem komplexeren Passwort mit einer unbekannten sha256 mit gegebenenfalls noch salt hinten dran?
na, wenn RUclips dieses Video mal oben lässt 😬 Nicht, dass ich es dir nicht gönnen würde, aber es haben schon einige andere RUclipsr wegen Weniger in dieser Richtung Probleme bekommen.
Ja das Video dient nur zu Bildungszwecken. Das ist ja quasi eine Challenge, die ich hier gemeinsam mit euch mache. Es ist auch nicht das erste Video zum OWASP Juice Shop. Ich hoffe, dass ich hiermit den ein oder anderen für das Thema Coden und IT-Sicherheit begeistern kann.
@@Programmierenlernen ehrlich gesagt wundert es mich etwas, dass YT dieses Video nicht gesperrt hat, da hier aktiv gezeigt wird, wie man eine Website angreifen kann...
@@LordKhor hä, er hat doch gesagt, dass man abschalten muss, wenn man Unfug anstellen will?! Soll er noch damit drohen, den Zuschauer zu verpetzen? Ich finde diese Sicherheitsvorkehrungen absolut glaubhaft 😂😂😂
@@Dr.med-rasen naja ein anderer RUclipsr hat kurz vorher ein Video veröffentlicht, warum es nicht so klug ist, seine Passwörter im Browser zu speichern. Er hat mit seinem eigens entwickelten Trojaner gezeigt dass es relativ simpel ist, diese Passwörter abzugreifen. Er hat nicht gezeigt wie. Das Video hat kein Stück vermittelt wie man das macht wie der Trojaner funzt oder gecodet ist etc. Er hat sogar die Paragraphen genannt, nach denen man sich strafbar macht, wenn man sowas macht. Das Video wurde down genommen und erst nach mehrfacher Beschwerde wieder frei geschaltet. Da man hier explizit gezeigt bekommt wie man derartige Angriffe durchführt, war ich hakt verwundert, dass das nicht gesperrt wurde
Normalerweise sollte es Standard sein, wie man z.B. gegen Injektion sicheren Code schreiben kann und welche Codeschreibweisen man nicht machen sollte. Bei vielen Tutorials die ich gesehen hab, wurde das auch ausführlich erklärt. Das zeigt schon seine Qualität von mittlerweile vielen RUclipsrn.
Stimmt, aber die anderen Probleme sollten durch eine saubere Programmierung (z.B. Nutzung von prepared Statements, Maskierung von Benutzereingaben...) auch behoben werden. Sonst hilft das Salzen auch nicht viel.
Hi Flo! Ja wir haben das bei dir gesehen, das war schon ein absurder Bann. Aber wurde ja rückgängig gemacht Gott sei Dank. Wir haben einfach die Community-Richtlinien gecheckt und halten uns daran und hoffen, dass der Algo das auch so sieht. :-)
Die Frage ist ja auch warum überall (vor allem auf Stackoverflow) empfohlen wird, sich an Standards zu halten. Nehmen wir von mir aus JWT, nutze ich das als Token, kann man das ja ganz easy decoden. Nun nehmen wir mal den worst case an und im Token sind tatsächlich sensible Informationen (Mail-Adresse im Klartext reicht ja schon aus finde ich). Halte ich mich an die Standards (JWT) kann also jeder die Mail-Adresse (oder schlimmeres) ganz einfach aus nem Cookie auslesen. Nutze ich einen eigenen Crypter, der letztendlich auch nur Json -> $"%&"$ und zurück wandelt, aber mit nem geheimen key (evtl. in Abhängigkeit mit dem Login) usw., habe ich die gleichen Informationen, aber der Klartext lässt sich eben nicht so einfach ermitteln. Im konkreten Fall reden wir von Blazor, also einer kompilierten DLL Datei als clientseitige Webanwendung. Ich denke den Code zum decrypten findet man schon wesentlich schlechter raus, denn das würde ja maximal nur per Reverse Engineering mit entsprechendem Aufwand gehen... Dazu kommt dann noch, dass der ganze Aufwand dann nur für eine einzige Seite betrieben werden muss. Genau wie Login-Systeme im allgemeinen, man bekommt immer die Antwort "nutze die Standard-Lösung X oder Y", aber wenn man sich halbwegs auskennt mit Schwachstellen, warum kein eigenes Login-System schreiben? Bei Standard-Lösungen kann man gezielt im Quellcode nach Schwachstellen suchen und hoffen, dass es genug Seiten gibt die noch nicht geupdatet haben, das geht bei einer eigenen Lösung nicht (liegt ja auf dem Server), also fehlen dem Hacker doch jegliche Informationen darüber wie das Login-System überhaupt funktioniert. Natürlich vorausgesetzt, dass Sachen wie XSS, SQL Injections, usw. entsprechend verhindert werden.
Warum solltest du bewährte und sichere Authentifizierungsmethoden selber schreiben? Das ist ohne einen Doktor in Kryptographie immer eine schlechte Idee und selbst mit vermutlich immernoch nicht schlau. Den JWT Token bekommt man ja auch nur, wenn das System schon kompromittiert ist, da also noch einen kleinen Obfuscator einzubauen wäre die falsche Baustelle. Deswegen in der It-Sicherheit niemals "Security through obscurity".
@@pallesten Um es Hackern möglichst schwer zu machen. Ich meinte auch nicht einen eigenen Crypter zu schreiben, sondern auf gute Crypter zurück zu greifen. Es geht ja nur darum, FALLS jemand an das Cookie ran kommt, dass er damit möglichst wenig anfangen kann, oder es zumindest schwer ist. Wenn ein Script-Kiddy ein JWT Token bekommt und es in Klartext online umwandelt, bekommt es im schlimmsten Fall sensible Informationen. Wenn das Online-Tool aber nichts damit anzufangen weiß (da gecrypted), wird das Script-Kiddy vermutlich aufgeben. Man könnte genau so gut JSON -> Crypt -> JWT, und dann JWT -> Crypt -> JSON beispielsweise machen. Hat man den Standard den alle wollen, man kann aber trotzdem nichts mit den Infos anfangen. "da also noch einen kleinen Obfuscator einzubauen wäre die falsche Baustelle." Dann braucht man ja auch keine Passwörter in der Datenbank zu hashen oder gar zu salten, denn wenn ein Hacker Zugriff darauf hat, ist es egal wie viele Informationen er bekommt oder wie?
Das Video ist ja ganz nett, aber es gibt schon lange nicht mehr nur MD5 und SHA1. Alle Zeichen stehen heute auf BCrypt. Und das ist eine komplett andere Hausnummer!
Ich Suchte deine Videos abnormal krass xD Weil ich würd total gern Programmieren Lernen und in der IT branche Fuß fassen da ich als Gamer schon viel aneignen musste und mich des so gefesselt hat. Nur leider will mir keine Firma eine chance geben ausbildungstechnisch oder als Quereinsteiger
@@Programmierenlernen ich habe mich tatsächlich bereits Beworben, aber habe etwas bedenken bezüglich der Weiterbildung da ich die Finanzielle Möglichkeit schlicht weg nicht habe auf Grund meiner momentanen Abhängigkeit vom Job Center / Arbeitsamt.
ist recht interessant aber wenn moderne technologien verwendet werden ist sowas unmöglich. Ich bin selbst full stack webentwickler, schreibe .Net 6 C# backends und React Typescript frontends und ich kann garantieren dass moderne apps by default secure sind wenn man keine essentiellen fehler macht. Man braucht in der Regel nur das "Hello World" sample aus den docs zu kopieren, sei es Microsoft docs oder MSDN und man hat eine sichere app auf der man aufbauen kann. Eine gefahr durch SQL Injection ist heutzutage eher minmal und nur auf veralteten websites. Auch spannend ist die SQL Injection an der Kasse beim Supermarkt xD das war früher mal ein tatsächliches Problem aber heutzutage auch nicht mehr
Das Problem ist nem Multihash ja einfach behoben, mit dem Passwort am Ende. Ich hab aber das Gefühl das sich das Video auf sehr veraltet Sicherheitslücken bezieht. Jede der im Video aufgezeigten Lücken sind ja relativ einfach über das backend zu beheben. Trotzdem wieder sehr gutes Video, hätte mir aber von eurem Kanal gewünschtes das etwas mehr auf die Problemlösung eingegangen wird. LG
Hallo Krogie. Ich habe das Glück mit dem Entwickler vom Juice Shop zu arbeiten. Die gezeigten Sicherheitslücken sind keineswegs veraltet. Sie zählen zu den Top 10 der aktuellen Sicherheitslücken. Du wirst sehr viele Shops im Internet finden, die genau diese Sicherheitslücken haben. Klar kann man eine Sql Injection durch prepared statements verhindern. Das Problem ist jedoch dass es sehr viele unerfahrene Entwickler da draußen gibt, die mal schnell einen Shop für ihren Kumpel zusammen hacken. Jeden Tag steht ein Ahnungsloser auf dieser Welt auf und ist der Meinung dass er ein guter Entwickler sei, weil er ein Php Buch gelesen hat und erste Ergebnisse erzielt hat.
Kleiner Tipp für das Video, ihr benutzt ein ziemlich weitwinkliges Kameraobjektiv, das verzerrt das Bild sehr und sieht im Gesicht etwas komisch aus. Entweder müsst ihr noch die Objektivkorrektur in der Kamera anschalten, bzw später drüber legen (kann sein, dass ihr dafür die Firmware des Objektives updaten müsst) oder ihr nutzt ein Objektiv, dass etwas mehr tele hat (so 35mm oder 50mm). Sonst top Video
Da gehört schon mehr als Fahrlässigkeit, um solche Lücken offen zu lassen. Ich mein - hat irgendjemand schon mal ein unverschlüsseltes Token mit Passworthash gesehen? Ich nicht...
Ok ich kann nicht programmieren, aber webseiten erstellen (wenn auch nur 0815) html kann. das das schon soweit ausreicht, um relativ "einfach" in systeme einzudringen ist irgendwie beängstigend. die frage die sich mir jetzt stellt, gibt es auch eine einfache lösung, um dem problem vorzubeugen? etwa indem man sonderzeichen in eingabe felder Ausschließt und für Login Definiert, das es imemr auch Buchstaben geben muss, beziehungsweise 1 zeichen alleine nicht ausreicht, um zu verhiondern, das man einfach nur ' setzt? Das wären dann ja die einfachsten dinge, um starke angriffe im vorfeld schon abzuwehren, oder habe ichda einen gedanken fehler?
hey hätte da so ne frage also als du mit dem einfügen vo javascript angefangen hast kommt bei dir ya eine Meldung so von oben dieses Fenster da bin auf apple is das hier genauso also bin auf dem Mac und bei mir kommt nichts heißt das die Seite ist einfach gesicherter oder liegt es am gerät
Ist "html" Eine Voraussetzung fürs "hacken"? I j bin immer noch bei cxx und java... (nicht um hacking zu lernen) das Thema hacking interesiert aber. Ich wollte auch mal bei js reinschauen... da aber ist html & css Pflicht
Ich finde es klasse, dass einige von euch auch die wirklich wichtigen Dinge ansprechen. Ich habe nur das Gefühl, dass es nur eine Frage der Zeit ist, bis RUclips das Video sperrt... (So wie bei @Sempervideo und @Florian Dalwigk) Jedenfalls habe ich mir erst einmal eine Sicherung gespeichert ^^'
wieso sollte yt das Video sperren? Es verstößt doch nicht gegen die Richtlinien und dient lediglich zum Lehrzweck, mit dem man in gezeigtem Ausmaß keine grossen Schäden anrichten kann
@@darkmoded579 klar, das trifft jedoch auf alle entfernten Videos von SemperVideo ebenfalls zu. Lernen sich zu verteidigen. Trozdem wurden sie entfernt...
aber hab mal ne frage wo werden denn hacker gefragt, also in welchem job, das ist sowieso interessant, aber brauch das irgend eine firma? oder ist man dann parallel in der security, da man sowas ja kann?
@Privat e Name und wenn es eine größere anfrage ist und beides möglich ist? wie kann das htmlSC() umgangen werden, wieso ist es nicht sicher? Fanke für die Antwort :)
Also muss man in jedem Textfeld seiner Seite auf eine Funktion verweisen die SQL Code erkennt? Warum ist so etwas im frontend überhaupt möglich? Dann muss man ja beim coden immer denken wie ein hacker um Sicherheit zu haben. Bei jeder Kleinigkeit
Es sollte doch normalerweise unmöglich sein, Hashwerte zu decoden oder nicht? Man sollte doch nur in der Lage sein, zwei Hashwerte zu vergleichen. Ansonsten ist der Hashalgorithmus nicht zu gebrauchen. Also normalerweise benutzen aktuelle Websites keine kaputten Hashalgorithmen wie MD5 mehr, wodurch ein einfaches „Entschlüsseln“ nicht möglich ist oder?
Hallo Junus, Danke für das tolle Video. Warum wird eigentlich bei der sql injection direkt der Admin ausgegeben? Liegt das daran dass der Admin meist der erste User in der Datenbank ist oder gibt es hier nur einen User? Könnte das auch nicht zufällig ein anderer User sein? Gruß Daniel
Man hätte die sql expression einfach um ein "email LIKE 'admin'" erweitern können, um nur die email zurückzugeben, die die Zeichenkette "admin" enthält, wäre garantierter
ja. Am Anfang keine Bücher lernen, sondern Projekte machen. Bücher sind eher was für Fortgeschrittene. Wenn du noch sehr jung bist: mach einfach erstmal RUclips Tutorials und baue dann deine eigene App
Was soll das denn für eine DB sein, die 1 == 1 ohne Fehler interpretiert? Ansonsten schöner Einstieg für Leute, die sich noch gar keine Gedanken zu dem Thema gemacht haben, aber selbst eine Seite hosten möchten. Wer selbst Seiten entwickelt, sollte hoffentlich mit solchen Grundlagen bereits vertraut sein, sonst wird die Seite nicht lange in einem Zustand laufen, den man sich wünscht.
1 == 1 ist eine normale Expression wie in jeder Sprache auch, warum sollte die Datenbank da einen Fehler melden? UserId == 1 würde ja auch funktionieren, wenn die UserId 1 ist...
@@kanister21 Es gibt nicht nur MySQL... Offenbar ist die "==" Anfrage ja durchgegangen (evtl. MongoDB?), aber stimmt schon, die meisten Datenbanken würden nur ein "=" akzeptieren. Dachte die Frage bezog sich auf 1 = 1...
Auch bei MS SQL Server oder PostgreSQL gibt es kein == als Operator. Ich habe aber eben dann doch mal geschaut, was da für dieses Beispiel verwendet wird. Es ist sqlite3, was tatsächlich == als Vergleich akzeptiert. Aber für mehr als die DB eines hackbaren Beispiels sollte man das auch nicht wirklich verwenden. ;-) Und nein, MongoDB ist das auf keinen Fal, denn das ist eine No SQL DB.
@@Stefan-hi7jb auch SQLite unterstützt SQL Parameter, mit denen ein solcher string concatenation SQL injection Angriff komplett unterbunden wird. Und ja, Es gibt durchaus auch Gründe, die für SQLite in Produktivumgebungen sprechen. (Allerdings kaum für einen Online Shop)
Hey hast du vllt ein hack wie mann die fritzt box umgeht meine wg hat die ziemlich gut eingerichtet von leuten die IT studiert habe alles versucht (ich habe einen pc
Wieso werde ich genau bei der Eingabe von ‘ OR 1=1- - automatisch als Administrator eingeloggt? Die dazugehörige SQL abfrage würde ja dann so aussehen: SELECT … FROM users WHERE username=‘‘ OR 1=1- -… In diesem Fall werden wir auf jeden Fall eingeloggt, aber warum genau werden wir explizit als Administrator und nicht als ein anderer Benutzer eingeloggt?Es wird ja quasi nirgendwo der username administrator angegeben. Woher weiß das System also, dass man sich als Administrator einloggen will? 😅
Bitte mehr von solchen Hacking Angriffen 💪 mega interesannt!
Ja
Danke das du mir ein Realistisches Bild im Kopf gegeben hast, wie Hacking in wirklichkeit aussieht, sonst kennt man das nur in den Filmen..
Der bre will bank hacken
Sus
@@eetgribtek382 Manche Filme machen es auch sehr realistisch wie z.B Mr Robot.
Direkt nach dem Intro geliked! Hab gestern erst das Javascript Taschenrechner Tutorial nachgecodet und bin so dankbar dafür!
Freut mich zu hören! Willkommen auf unserem Kanal
Ich hab absolut null Ahnung von irgendwas, was ich da sehe.
Habe auch keine Ahnung warum mir dieses Video vorgeschlagen wurde und ich es mir angeguckt habe.
Ich weiß nur das ich es unfassbar interessant finde und mehr wissen will!
Es ist erschreckend, wie einfach das ist. Etwas Informationen sammeln und schon gehts los. Das war jetzt ein Shop, will gar nicht wissen, was sonst noch alles möglich ist. Obwohl, eigentlich sollte es klar sein. Vielen Dank für diesen Beitrag.
Sehr gut erklärt!
Es kommt ein wenig so rüber, als ob die hier vorgestellten Sicherheitslücken immer auszunutzen sind. Das ist aber höchstens bei Hobbyprojekten von irgendwelchen Anfängern der Fall (oder Usern mit schlechten Passwörtern wie "admin123"). Kommerzielle Anwendungen kann man mit den hier genannten Methoden nicht hacken.
ja da hast du Recht. Natürlich zeige ich hier nur die Basics. Auch aus Sicherheitsgründen. Aber es geht einfach mehr um die Denkweise und darum, Lust auf das Thema IT, IT-Sicherheit und Programmieren zu machen :-)
@@Programmierenlernen Das Ziel wurde definitiv erreicht bei mir
Leider gibt es sollte Fehler auch bei kommerziellen Anwendungen. Nur werden diese dann schnell und meisten stillschweigend gefixt. Die Gründe dafür sind vielfältig. Zu geringe Zeit für ein ordentliche Programmierung / einen ordentlichen Test. Fehlendes Know-How ... Bin selber Webentwickler und kenne das aus eigener Erfahrung.
@@Programmierenlernen ein Video darüber wie man diese Sicherheitslücken schließt bei seiner eigenen Seite wäre doch nice. Also wie man Eingabefelder sicher verarbeitet.
Ihr seid wirklich richtig klasse!
Ich habe einen riesengroßen Respekt vor eurem können
Danke für dieses tolle Video. Wie alle Videos 🙂 Sehr informativ.
wollte schon immer wissen wie Hacker vorgehen...DANKE🙂
Moin Junus, hoffe es geht ihnen bestens 😆. Wollte mich mal so bei ihnen bedanken, für ihren tollen Kanal, welch einer viel hilfreicher ist als manch andere. Echt tolle Videos die meiner Meinung nach wirklich mehr Aufmerksamkeit verdient hätten, dafür welch eine Mühe in den Videos stecken. 👍 Danke für alles, dank den Videos habe ich vor ungefähr nh Woche auch meine erste Webseite erstellt mit HTML und CSS, nun sitze ich an meinem Rechner um mich jetzt mehr mit JavaScript schlau zu machen, was auch nochmal anders ist als HTML und CSS. Naja, an diesem Sprung von so etwas einfachen zu so etwas (schwerem) muss man sich erst einmal gewöhnen. 😂 Ich gebe mein bestes und hoffe mehr dazu lernen zu können.
danke freut mich sehr. Ja am Anfang ist der Sprung groß. Aber du wirst sehen, mit JavaScript macht es dann auch viel mehr Spaß
@@Programmierenlernen Absolut.
Die meisten Webseiten kommen garnicht ohne Javascript aus und man kann damit so einiges anfangen.
Hast du so schnell HTML und CSS gelernt das du direkt JavaScript anwenden kannst?
@@CT--vz3mm nur bei Java Script habe ich noch meine Probleme
@@UmarMohammad1807 Ich finde CSS schon anspruchsvoll. Hast du vielleicht paar Tipps um schnell CSS zu lernen?
ich freue mich schon in 3jahren bei euch meiine weiterbildung zu machen evtl.😊👍
Ich gucke das Video nur um Sachen zu lernen damit ich anderen schaden kann danke! Ab zum nächsten Video!
Diagnose: Nach innen gestülpter Micropimmel☺
Tolles Video. Sehr gut erklärt.👍
Und genau darum gibt es in den meisten relationalen Datenbankmanagementsysten (RDBMS) Prepared Statements mit dem SQL-Injection nicht möglich ist.
Neben der Nutzung dieser Technik sollte es sollte zum Routine gehören, Benutzereingaben immer vor Weitergabe an die DB immer zu validieren und zum anderen die Fehler der DB immer abzufangen und keines Falls so durchzureichen.
Mittlerweile gibt es neben SHA256 auch SHA512 dessen Hash deutlich länger ist (512 Bits statt 256) Natürlich gibt es auch hierfür Tabellen, sodass die Länge bei einem einfachen Passwort quasi egal ist. Es gibt dann noch die Möglichkeit einen eigenen Präfix und einen sog. Salt anzugeben, sodass das Passwort schwerer zu knacken ist.
Nützt allerdings nichts, wenn solche fundamentalen Fehler gemacht werden.
Da waren echte Profis der Programmierung am Werk 😉
Da muss man sich dann nicht wundern, wenn die eigene E-Mailadresse Teil eines Datenlecks ist... und man nun haufenweise Spam bekommt.
Leider habe ich in meiner Arbeit als Webentwickler schon einige dieser "tollen" Quellcodes gesehen und mich jedesmal wie Bolle gefreut. Mir wird schon bei dem Gedanken daran 😖.
cooles Video, ich habe auch sehr viel aus euren Videos gelernt.
Dieses Video finde ich super
Danke für Ihre Bemühen
vielen danlk hab jetzt zugriff auf die pentagon akten
Cooles Video! Könntest du mal Kotlin Tutorial machen?
sehr informativ. vielen dank. mir war nicht bewusst, wie einfach sowas sein kein
Gerade erst auf diesen Kanal gestoßen. Ultraspannend und ultragut erklärt. Weiter so!:D
Wow, danke für die Aufklärung....bin aber auch geschockt, dass es so leicht geht!
deshalb mach ich diese Videos. Aufklärung ist das A und O ;-)
Das wird bei sogut wie keiner "echten" Website so leicht gehen.
Sehr interessant. Wieder was gelernt 😊
Einmal wieder VS installiert und direkt bis du auf meiner For You Page :D Aber coole Videos :)
Sehr gutes Video und gut erklärt 👍🏼
Freut mich, danke!
Eben entdeckt und direkt fan geworden Abo hast du und freue mich auf weitere Videos
Willkommen
Sehr Interesssant das ganze, und ich bin da ja absolut ein hinterwäldler, ich bastel selten mal etwas mit Phase5 Html :-)))
So denn ich habe es mal aboniert, vielleicht bleibt ja etwas hängen
Junus du machst wirklich sehr gute Videos. Ich hoffe du wirst weitere Video auf Juice Shop machen.
Es wäre mal super spannend für WordPress Webseiten. Davon existieren ja schließlich Millionen. Kannst Du dazu ein Video machen für die IT-Sicherheit? LG
Die websiten sind oft sehr sicher weil es opsn source ist dazu kommt das es halt Millionen nutzen da gibt es oft wenig Lücken das einzigste was es gibt sind zero daya exploits bei manchen Datenbanken oder kleinen Extras bei solchen Webseiten
Coole Sache! 😊 Jetzt muss ich nur noch wissen, wie ich meine Website bombenfest dagegen absichere
kommt noch ;-)
Bist der beste habe so viel dchon von dir gelernt einfach nur danke dafür
Sehr gut erklärt. 👍
Allerdings war das ja jetzt ein sehr einfach Psswort mit einem MD5 hash. Was machst du denn bei einem komplexeren Passwort mit einer unbekannten sha256 mit gegebenenfalls noch salt hinten dran?
Danke, bitte mache mehr Videos über das Thema. 😀
da kommt bald noch einiges, was richtig interessant ist ;-)
Super video
Sehr interessant! Echt cool die Infos rüber gebracht
Freut mich, danke!
na, wenn RUclips dieses Video mal oben lässt 😬
Nicht, dass ich es dir nicht gönnen würde, aber es haben schon einige andere RUclipsr wegen Weniger in dieser Richtung Probleme bekommen.
Ja das Video dient nur zu Bildungszwecken. Das ist ja quasi eine Challenge, die ich hier gemeinsam mit euch mache. Es ist auch nicht das erste Video zum OWASP Juice Shop. Ich hoffe, dass ich hiermit den ein oder anderen für das Thema Coden und IT-Sicherheit begeistern kann.
gutes video du machst immer tutorials ueber meinen Traum beruf
Krass und sehr cool 👍🏻
Hey ,ich finde gut zu wissen wie das geht aber wie kann man sich davon schützen? Sehr interessante Kanal weiter so ❤.
Sehr nice, vielen Dank :)
Mega interessant. Noch interessanter wäre, wie man sein Zeug gegen derartige Angriffe schützt
gute Videoidee
@@Programmierenlernen ehrlich gesagt wundert es mich etwas, dass YT dieses Video nicht gesperrt hat, da hier aktiv gezeigt wird, wie man eine Website angreifen kann...
@@LordKhor hä, er hat doch gesagt, dass man abschalten muss, wenn man Unfug anstellen will?! Soll er noch damit drohen, den Zuschauer zu verpetzen?
Ich finde diese Sicherheitsvorkehrungen absolut glaubhaft 😂😂😂
@@Dr.med-rasen naja ein anderer RUclipsr hat kurz vorher ein Video veröffentlicht, warum es nicht so klug ist, seine Passwörter im Browser zu speichern. Er hat mit seinem eigens entwickelten Trojaner gezeigt dass es relativ simpel ist, diese Passwörter abzugreifen. Er hat nicht gezeigt wie. Das Video hat kein Stück vermittelt wie man das macht wie der Trojaner funzt oder gecodet ist etc. Er hat sogar die Paragraphen genannt, nach denen man sich strafbar macht, wenn man sowas macht. Das Video wurde down genommen und erst nach mehrfacher Beschwerde wieder frei geschaltet. Da man hier explizit gezeigt bekommt wie man derartige Angriffe durchführt, war ich hakt verwundert, dass das nicht gesperrt wurde
Normalerweise sollte es Standard sein, wie man z.B. gegen Injektion sicheren Code schreiben kann und welche Codeschreibweisen man nicht machen sollte. Bei vielen Tutorials die ich gesehen hab, wurde das auch ausführlich erklärt. Das zeigt schon seine Qualität von mittlerweile vielen RUclipsrn.
Sehr gutes Video. Meine Webseiten habe ich zum Glück mittels htmlspecialchars geschützt🤣
Sehr interessantes Video. Vielen Dank
Sehr gut!!
Sehr Unterhaltsam :-) auch wenn ich das schon alles kannte.
PS: Passwörter sollten auch lieber gesalzen werden. ;-)
Stimmt, aber die anderen Probleme sollten durch eine saubere Programmierung (z.B. Nutzung von prepared Statements, Maskierung von Benutzereingaben...) auch behoben werden. Sonst hilft das Salzen auch nicht viel.
Gutes Video !
Spannend, dass RUclips hier ein Auge zudrückt und mir für weitaus weniger mit dem Bannhammer droht. Verrätst du mir dein Geheimnis? :)
Hi Flo! Ja wir haben das bei dir gesehen, das war schon ein absurder Bann. Aber wurde ja rückgängig gemacht Gott sei Dank. Wir haben einfach die Community-Richtlinien gecheckt und halten uns daran und hoffen, dass der Algo das auch so sieht. :-)
Die Frage ist ja auch warum überall (vor allem auf Stackoverflow) empfohlen wird, sich an Standards zu halten.
Nehmen wir von mir aus JWT, nutze ich das als Token, kann man das ja ganz easy decoden. Nun nehmen wir mal den worst case an und im Token sind tatsächlich sensible Informationen (Mail-Adresse im Klartext reicht ja schon aus finde ich). Halte ich mich an die Standards (JWT) kann also jeder die Mail-Adresse (oder schlimmeres) ganz einfach aus nem Cookie auslesen.
Nutze ich einen eigenen Crypter, der letztendlich auch nur Json -> $"%&"$ und zurück wandelt, aber mit nem geheimen key (evtl. in Abhängigkeit mit dem Login) usw., habe ich die gleichen Informationen, aber der Klartext lässt sich eben nicht so einfach ermitteln. Im konkreten Fall reden wir von Blazor, also einer kompilierten DLL Datei als clientseitige Webanwendung. Ich denke den Code zum decrypten findet man schon wesentlich schlechter raus, denn das würde ja maximal nur per Reverse Engineering mit entsprechendem Aufwand gehen... Dazu kommt dann noch, dass der ganze Aufwand dann nur für eine einzige Seite betrieben werden muss.
Genau wie Login-Systeme im allgemeinen, man bekommt immer die Antwort "nutze die Standard-Lösung X oder Y", aber wenn man sich halbwegs auskennt mit Schwachstellen, warum kein eigenes Login-System schreiben? Bei Standard-Lösungen kann man gezielt im Quellcode nach Schwachstellen suchen und hoffen, dass es genug Seiten gibt die noch nicht geupdatet haben, das geht bei einer eigenen Lösung nicht (liegt ja auf dem Server), also fehlen dem Hacker doch jegliche Informationen darüber wie das Login-System überhaupt funktioniert. Natürlich vorausgesetzt, dass Sachen wie XSS, SQL Injections, usw. entsprechend verhindert werden.
Warum solltest du bewährte und sichere Authentifizierungsmethoden selber schreiben? Das ist ohne einen Doktor in Kryptographie immer eine schlechte Idee und selbst mit vermutlich immernoch nicht schlau.
Den JWT Token bekommt man ja auch nur, wenn das System schon kompromittiert ist, da also noch einen kleinen Obfuscator einzubauen wäre die falsche Baustelle.
Deswegen in der It-Sicherheit niemals "Security through obscurity".
@@pallesten Um es Hackern möglichst schwer zu machen. Ich meinte auch nicht einen eigenen Crypter zu schreiben, sondern auf gute Crypter zurück zu greifen. Es geht ja nur darum, FALLS jemand an das Cookie ran kommt, dass er damit möglichst wenig anfangen kann, oder es zumindest schwer ist. Wenn ein Script-Kiddy ein JWT Token bekommt und es in Klartext online umwandelt, bekommt es im schlimmsten Fall sensible Informationen. Wenn das Online-Tool aber nichts damit anzufangen weiß (da gecrypted), wird das Script-Kiddy vermutlich aufgeben. Man könnte genau so gut JSON -> Crypt -> JWT, und dann JWT -> Crypt -> JSON beispielsweise machen. Hat man den Standard den alle wollen, man kann aber trotzdem nichts mit den Infos anfangen.
"da also noch einen kleinen Obfuscator einzubauen wäre die falsche Baustelle."
Dann braucht man ja auch keine Passwörter in der Datenbank zu hashen oder gar zu salten, denn wenn ein Hacker Zugriff darauf hat, ist es egal wie viele Informationen er bekommt oder wie?
interessantes Thema, danke!
Cooles Video, zieh ich mir jetzt rein 😃
Viel Spaß!
Ein Schweizer Käse hat Sicherheitslücken? Wieder was gelernt 😆
Schweizer Sicherheitslückenkäse, sehr zu empfehlen ;-)
Das Video ist ja ganz nett, aber es gibt schon lange nicht mehr nur MD5 und SHA1. Alle Zeichen stehen heute auf BCrypt. Und das ist eine komplett andere Hausnummer!
Ich Suchte deine Videos abnormal krass xD Weil ich würd total gern Programmieren Lernen und in der IT branche Fuß fassen da ich als Gamer schon viel aneignen musste und mich des so gefesselt hat. Nur leider will mir keine Firma eine chance geben ausbildungstechnisch oder als Quereinsteiger
komm doch zu uns in die Weiterbildung. Wir haben viele Gamer bei uns, die es geschafft haben (siehe letztes Video - Interview mit Tim)
@@Programmierenlernen ich habe mich tatsächlich bereits Beworben, aber habe etwas bedenken bezüglich der Weiterbildung da ich die Finanzielle Möglichkeit schlicht weg nicht habe auf Grund meiner momentanen Abhängigkeit vom Job Center / Arbeitsamt.
ist recht interessant aber wenn moderne technologien verwendet werden ist sowas unmöglich. Ich bin selbst full stack webentwickler, schreibe .Net 6 C# backends und React Typescript frontends und ich kann garantieren dass moderne apps by default secure sind wenn man keine essentiellen fehler macht. Man braucht in der Regel nur das "Hello World" sample aus den docs zu kopieren, sei es Microsoft docs oder MSDN und man hat eine sichere app auf der man aufbauen kann. Eine gefahr durch SQL Injection ist heutzutage eher minmal und nur auf veralteten websites. Auch spannend ist die SQL Injection an der Kasse beim Supermarkt xD das war früher mal ein tatsächliches Problem aber heutzutage auch nicht mehr
Top Video
Das Problem ist nem Multihash ja einfach behoben, mit dem Passwort am Ende. Ich hab aber das Gefühl das sich das Video auf sehr veraltet Sicherheitslücken bezieht. Jede der im Video aufgezeigten Lücken sind ja relativ einfach über das backend zu beheben. Trotzdem wieder sehr gutes Video, hätte mir aber von eurem Kanal gewünschtes das etwas mehr auf die Problemlösung eingegangen wird. LG
Hallo Krogie. Ich habe das Glück mit dem Entwickler vom Juice Shop zu arbeiten. Die gezeigten Sicherheitslücken sind keineswegs veraltet. Sie zählen zu den Top 10 der aktuellen Sicherheitslücken. Du wirst sehr viele Shops im Internet finden, die genau diese Sicherheitslücken haben. Klar kann man eine Sql Injection durch prepared statements verhindern. Das Problem ist jedoch dass es sehr viele unerfahrene Entwickler da draußen gibt, die mal schnell einen Shop für ihren Kumpel zusammen hacken. Jeden Tag steht ein Ahnungsloser auf dieser Welt auf und ist der Meinung dass er ein guter Entwickler sei, weil er ein Php Buch gelesen hat und erste Ergebnisse erzielt hat.
Nur für das Gute :)
Bitte mehr davon
Ich liebe deine videos
Sehr interessant
danke für das tutorial
14:43 ne ne, hacker packen den hash doch nicht in eine online Cracker, sondern nutzen hashcat dafür 😉
trotzdem gutes Video
Echte Hacker benutzen keine Open Source tools wie Hashcat.
@@testuser1235wer hat das festgelegt? Natürlich darf man als ein whitehat Hacker Hacking Tools benutzen
5:53 - admin admin funktioniert immer. Selbst bei Tesla :D
zu oft. Deshalb sollte man so ein Passwort nie benutzen.
Man müsste also immer den Pfad zum Admin unklar machen um das zu treten zu unterbinden.
Nun muss ich mein Spring Boot Service umschreiben weil ich paranoid geworden bin😂
haha ja dann hat sich das Video schon gelohnt ;-)
Nicht immer nur Zeigen, dass es Angriffe wir XSS und SQL Injection gibt, sondern auch mal erklären, wie man diese als Entwickler verhindern kann!
Hab keine Ahnung von Informatik, aber fühle mich nun klüger
Kleiner Tipp für das Video, ihr benutzt ein ziemlich weitwinkliges Kameraobjektiv, das verzerrt das Bild sehr und sieht im Gesicht etwas komisch aus. Entweder müsst ihr noch die Objektivkorrektur in der Kamera anschalten, bzw später drüber legen (kann sein, dass ihr dafür die Firmware des Objektives updaten müsst) oder ihr nutzt ein Objektiv, dass etwas mehr tele hat (so 35mm oder 50mm). Sonst top Video
danke dir für den Hinweis
Danke
Da gehört schon mehr als Fahrlässigkeit, um solche Lücken offen zu lassen. Ich mein - hat irgendjemand schon mal ein unverschlüsseltes Token mit Passworthash gesehen? Ich nicht...
für md5 hash ist mittlerweile eigentlich broken... es gibt collision attacks
true
Ok ich kann nicht programmieren, aber webseiten erstellen (wenn auch nur 0815) html kann. das das schon soweit ausreicht, um relativ "einfach" in systeme einzudringen ist irgendwie beängstigend. die frage die sich mir jetzt stellt, gibt es auch eine einfache lösung, um dem problem vorzubeugen? etwa indem man sonderzeichen in eingabe felder Ausschließt und für Login Definiert, das es imemr auch Buchstaben geben muss, beziehungsweise 1 zeichen alleine nicht ausreicht, um zu verhiondern, das man einfach nur ' setzt? Das wären dann ja die einfachsten dinge, um starke angriffe im vorfeld schon abzuwehren, oder habe ichda einen gedanken fehler?
interessant👍
hey hätte da so ne frage also als du mit dem einfügen vo javascript angefangen hast kommt bei dir ya eine Meldung so von oben dieses Fenster da bin auf apple is das hier genauso also bin auf dem Mac und bei mir kommt nichts heißt das die Seite ist einfach gesicherter oder liegt es am gerät
wie läd man dieses programm herrunter?
Software, Spiele usw. wäre schon Nice wenn man das gut kann.
Ist "html" Eine Voraussetzung fürs "hacken"? I j bin immer noch bei cxx und java... (nicht um hacking zu lernen) das Thema hacking interesiert aber. Ich wollte auch mal bei js reinschauen... da aber ist html & css Pflicht
Ich finde es klasse, dass einige von euch auch die wirklich wichtigen Dinge ansprechen. Ich habe nur das Gefühl, dass es nur eine Frage der Zeit ist, bis RUclips das Video sperrt... (So wie bei @Sempervideo und @Florian Dalwigk) Jedenfalls habe ich mir erst einmal eine Sicherung gespeichert ^^'
wieso sollte yt das Video sperren? Es verstößt doch nicht gegen die Richtlinien und dient lediglich zum Lehrzweck, mit dem man in gezeigtem Ausmaß keine grossen Schäden anrichten kann
@@darkmoded579 klar, das trifft jedoch auf alle entfernten Videos von SemperVideo ebenfalls zu. Lernen sich zu verteidigen. Trozdem wurden sie entfernt...
*Herzst* *du* *diesen* *Kommentar* *bitte*
cool
Hab jetzt noch nicht nachgeschaut, aber ist das kostenlos zu nutzen oder muss man da eine art abonnement abschließen?
Ich habe ein Problem das ich von mein Laptop das Kennwort vergessen.
Wie kann ich das ändern.
aber hab mal ne frage wo werden denn hacker gefragt, also in welchem job, das ist sowieso interessant, aber brauch das irgend eine firma? oder ist man dann parallel in der security, da man sowas ja kann?
Die meisten der attacken verhindert man doch mit htmlspecialchar() am eingabefeld oder?
@Privat e Name und wenn es eine größere anfrage ist und beides möglich ist? wie kann das htmlSC() umgangen werden, wieso ist es nicht sicher? Fanke für die Antwort :)
Also muss man in jedem Textfeld seiner Seite auf eine Funktion verweisen die SQL Code erkennt? Warum ist so etwas im frontend überhaupt möglich? Dann muss man ja beim coden immer denken wie ein hacker um Sicherheit zu haben. Bei jeder Kleinigkeit
Kleine Frage. Hab gerade in meinem Studium IT-Sec und ist das decoden von Hash values mit solchen listen nicht schwierig wegen salt and pepper?
ja, aber wird nicht immer gemacht. Sollte aber immer gemacht werden
Es sollte doch normalerweise unmöglich sein, Hashwerte zu decoden oder nicht? Man sollte doch nur in der Lage sein, zwei Hashwerte zu vergleichen. Ansonsten ist der Hashalgorithmus nicht zu gebrauchen. Also normalerweise benutzen aktuelle Websites keine kaputten Hashalgorithmen wie MD5 mehr, wodurch ein einfaches „Entschlüsseln“ nicht möglich ist oder?
ja gute Frage. Am besten du liest mal über rainbow-tables. Das wird dich interessieren
Hallo Junus,
Danke für das tolle Video.
Warum wird eigentlich bei der sql injection direkt der Admin ausgegeben?
Liegt das daran dass der Admin meist der erste User in der Datenbank ist oder gibt es hier nur einen User?
Könnte das auch nicht zufällig ein anderer User sein?
Gruß
Daniel
Junus nimmt hier eben an, dass der erste angelegte Nutzer der Admin ist. Natürlich könnte der erste Eintrag auch jedem anderen gehören.
Genau so ist es! :)
Man hätte die sql expression einfach um ein "email LIKE 'admin'" erweitern können, um nur die email zurückzugeben, die die Zeichenkette "admin" enthält, wäre garantierter
Habt ihr auch ein paar Büscher Empfehlungen zu den Thema Programmieren lernen?
ja. Am Anfang keine Bücher lernen, sondern Projekte machen. Bücher sind eher was für Fortgeschrittene. Wenn du noch sehr jung bist: mach einfach erstmal RUclips Tutorials und baue dann deine eigene App
@@Programmierenlernen ok gut danke
Du musst eine Sturmhaube aufsetzen wenn du anfängst zu hacken.
Welche Shopsysteme sind heutzutage noch so angreifbar wie im Video dargestellt? Wordpress, Shopify .. ? Oder sind diese schon besser geschützt
nein, die sind Gott sei Dank geschützt. Aber wenn du einen selbstgebastelten Shop hast, den du seit Jahren nicht upgedatet hast, dann wird es Zeit :-)
Was soll das denn für eine DB sein, die 1 == 1 ohne Fehler interpretiert? Ansonsten schöner Einstieg für Leute, die sich noch gar keine Gedanken zu dem Thema gemacht haben, aber selbst eine Seite hosten möchten. Wer selbst Seiten entwickelt, sollte hoffentlich mit solchen Grundlagen bereits vertraut sein, sonst wird die Seite nicht lange in einem Zustand laufen, den man sich wünscht.
1 == 1 ist eine normale Expression wie in jeder Sprache auch, warum sollte die Datenbank da einen Fehler melden?
UserId == 1 würde ja auch funktionieren, wenn die UserId 1 ist...
@@Rick_Jagger falsch. In MySQL gibt es kein == als Ausdruck
@@kanister21 Es gibt nicht nur MySQL... Offenbar ist die "==" Anfrage ja durchgegangen (evtl. MongoDB?), aber stimmt schon, die meisten Datenbanken würden nur ein "=" akzeptieren. Dachte die Frage bezog sich auf 1 = 1...
Auch bei MS SQL Server oder PostgreSQL gibt es kein == als Operator. Ich habe aber eben dann doch mal geschaut, was da für dieses Beispiel verwendet wird. Es ist sqlite3, was tatsächlich == als Vergleich akzeptiert. Aber für mehr als die DB eines hackbaren Beispiels sollte man das auch nicht wirklich verwenden. ;-) Und nein, MongoDB ist das auf keinen Fal, denn das ist eine No SQL DB.
@@Stefan-hi7jb auch SQLite unterstützt SQL Parameter, mit denen ein solcher string concatenation SQL injection Angriff komplett unterbunden wird. Und ja, Es gibt durchaus auch Gründe, die für SQLite in Produktivumgebungen sprechen. (Allerdings kaum für einen Online Shop)
Moin, welche Software benutzt ihr zum cutten? :)
Adobe Premiere Pro :)
@@Programmierenlernen Danke tolles video übrigens
Hey hast du vllt ein hack wie mann die fritzt box umgeht meine wg hat die ziemlich gut eingerichtet von leuten die IT studiert habe alles versucht (ich habe einen pc
Wieso werde ich genau bei der Eingabe von ‘ OR 1=1- - automatisch als Administrator eingeloggt? Die dazugehörige SQL abfrage würde ja dann so aussehen:
SELECT … FROM users WHERE username=‘‘ OR 1=1- -…
In diesem Fall werden wir auf jeden Fall eingeloggt, aber warum genau werden wir explizit als Administrator und nicht als ein anderer Benutzer eingeloggt?Es wird ja quasi nirgendwo der username administrator angegeben. Woher weiß das System also, dass man sich als Administrator einloggen will? 😅
wir haben gehofft das der erste eintrag in der db der admin ist
wie kommt man auf die seite?
Das sind so Kleinigkeiten, da muss man erstmal drauf kommen. Krass.
Geht das auch bei Seiten die Sicher sind oder nur bei Unsicheren? Hab bisher noch nie eine Ungesicherte Gesehen.
Das sind doch alles dinge, die seit Jahrzehnten bekannt und gelöst sind.
Ich bekomme nur bei Vorschau den HTML code`. Was mache ich falschxD?
Wie kann man das alles in Macbook machen?
Make a 1 hour video of one nice tuto from google
Meine eigenen 👌👌🤣