3 Antworten

Das ist Müll, sowohl stilistisch, als auch inhaltlich.
Mal ehrlich: Wie kommt man auf die Idee, es sei eine gute Idee, diese musikalische Folter hochzuladen?

Und mit "Hacken" hat das auch nichts zu tun.

Aber zum Inhalt:

Das erste Programm ist DnSpy: https://github.com/dnSpy/dnSpy
Das ist ein Decompiler und Debugger (leider nicht mehr aktiv gepflegt). Damit kann ich mir den Code (nicht den Original-Code, aber so in etwa) von einem .NET Programm (nutzt man meist mit C#, im Video nutzt er VB.NET, as Ergebnis ist das Selbe) anschauen, verändern und den Ablauf untersuchen (debuggen), ohne den Original-Code zu haben. Hat mir schon ein paar Mal sehr geholfen, weil ich damals ein altes Projekt meiner Firma pflegen musste, für das die Firma aber den Quellcode nicht mehr hatte. Hacker können das nutzen, um ein Programm zu untersuchen und Sicherheitslücken zu suchen. Bei .NET ist das aber nichts besonderes, es gibt diverse Decompiler (ich nutze meist ILSpy), das interessante an DnSpy ist, dass es das Programm direkt bearbeiten, starten und debuggen kann, das gibt's nicht so oft. Mit Hacken an sich hat das aber nichts zu tun.

Jedenfalls hat er da im Code eine fest hinterlegte WebHook-URL gefunden. Damit kann ein beliebiges Programm Nachrichten in Discord-Kanäle schreiben, z.B. um live über irgendetwas bestimmtes zu informieren. Die Behauptung ist ja, dass das Programm Passworter klaut und an diesen Discord-Kanal verschickt.

Und zum Schluss schreibt er ein minimales VB.NET-Programm in Visual Studio 2010 (such nach C#, VB.NET ist die selbe Familie, aber quasi tot), was einen DELETE-Request an den Server mit dieser WebHook-URL schreibt. Dafür braucht man aber kein Programm programmieren, es gibt auch Tools zum Download (z.B. Postman). Das ist auch nichts besonderes das "DELETE" ist nichts anderes, als ein harmloser Hinweis an den Server "Bitte lösche doch diese Ressource". Ob der Server das auch tut, das kann sich der Server selber überlegen und ein gut entwickelter Server (wovon ich bei Discord ausgehe) wird da eine Rechteprüfung davor haben, die dann antwortet: "Nö, bitte vorher authentifizieren, sonst mach ich hier gar nichts".

Ich vermute Mal, er hat hier irgendwas außerhalb manipuliert, weil Discord hätte sicher nicht zugelassen, dass er den WebHook ohne Authentifizierung löschen kann.

Ein kleines Detail sieht man, was mich etwas stutzig macht:
Er schreibt erst "WebRequest.Create", doch dann ist es plötzlich "webRequest.Create". Das kann von Visual Studio kommen, der korrigiert die Schreibweise automatisch. Allerdings würde ich erwarten, dass es dann groß geschrieben wird, weil die originale Klasse "WebRequest" heißt und nicht "webRequest". VB.NET unterscheidet da nicht, also ist beides richtig, aber Visual Studio würde vermutlich nicht automatisch die klein geschriebene Version einsetzen.
Ich vermute daher, dass er also gar nicht die offizielle WebRequest-Klasse nutzt, sondern eine eigene Variante, die etwas anderes tut, als das, was im Video zu sehen ist. Dann wäre es auch korrekt, dass Visual Studio von "WebRequest" zu "webRequest" korrigiert, weil die tatsächliche Klasse mit einem kleinen "w" beginnt.
Der Code dafür muss auch nicht im Projekt liegen, man kann z.B. irgendwo in einem darüber liegenden Ordner (sieht man nicht) eine Directory.Build.props-Datei erstellen, darin kann man dann diese Code-Datei versteckt referenzieren und jedes Projekt würde das automatisch verwenden.
Das ist aber auch nichts besonderes, sondern ein von Microsoft sorgfältig dokumentiertes Feature, was in sehr vielen Projekten verwendet wird.

Oder mit anderen Worten:
Der im Video gezeigte Code soll angeblich den Discord-WebHook löschen, tut aber effektiv gar nichts. Den WebHook könnte er auch selber in DnSpy vorher rein geschrieben haben (ist wie gesagt sehr einfach), dann hat er auch die Berechtigungen, eben diesen WebHook auch wieder zu löschen. Das macht er dann nicht über das Programm (oder doch, dann aber mit Authentifizierung im versteckten Code), sondern über manuell im Browser.
Dann sieht es aus, als hätte sein Programm den WebHook gelöscht - hat's aber nicht.

By the way:

Das Video ist 3 Jahre alt, aber er arbeitet mit Visual Studio Express 2010? Es gibt längst Version 2022, die ganze Express-Produktlinie gibt's nicht mehr, das heißt jetzt "Community" und ist technisch beinahe identisch zu "Professional". Und dann auch noch VB.NET, was seit gefühlt ewig tot ist und eigentlich nur noch von solchen Videos am "Leben" gehalten wird. Ja, offiziell ist es nicht abgekündigt, aber das ist typisch Microsoft, die kündigen nicht ab, die lassen einfach still und heimlich sterben. Und das gezeigte Windows Forms ist auch quasi tot.

Also ein in jeder Hinsicht wirklich furchtbar schlechtes Video.

Woher ich das weiß:Berufserfahrung – C#.NET Senior Softwareentwickler

sm0ke420  21.04.2025, 22:05

Du kannst Discord Webhooks tatsächlich löschen mit einem einfach Delete Request, zumindest ging es früher mal, wie es jetzt ist müsste man mal ausprobieren aber dass es ging weiß ich, Discord Webhooks wurden zu derzeit auch tatsächlich viel für Stealer Malware genutzt.

Palladin007  21.04.2025, 22:10
@sm0ke420

Ernsthaft? Ohne Authentification oder dass der Admin dieses Recht für alle freigeben musste?

Finde ich ziemlich problematisch.
Wenn's heute nicht mehr geht, gut, aber eine Firma, die etwas derart grob fahrlässiges einmal gemacht hat, würde ich generell in Frage stellen.

sm0ke420  21.04.2025, 22:23
@Palladin007

Ja das ging ehrlich, 2022 immer Skids geärgert die Webhooks für die Logs bei Phishing Seiten, Stealern & co genutzt haben in denen ich eine simple Delete Request gesendet habe.

Aber das Discord in Sachen Sicherheit problematisch ist ist nicht neues, beispielsweise kannst (oder konntest) du auch easy an per PMs versendete Bilder kommen, zwar nicht gezielt aber es ging, da discord immer nen Link pro Bild erstellt hat den man ohne Berechtigungen aufrufen kann, da konntest du einen oft genutzten Dateinamen nehmen und einfach File IDs die Discore beim Upload generiert brute forcen.

sm0ke420  21.04.2025, 22:25
@sm0ke420

In diecord webhooks konnte man auch ohne Permissions reinschreiben und Nachrichten versenden, sogar mit Wunsch absendernamen und Profilbild.

Palladin007  21.04.2025, 23:19
@sm0ke420

2022 ist nachdem das Video veröffentlicht wurde - würde also passen.

Dass die Nutzung generell ohne Authentifizierung geht, ist aber normal und gängige Praxis für automatisierten Zugriff, der Link ist sozusagen die Authentifizierung. Allerdings würde ich erwarten, dass die Möglichkeiten über diesen Link sehr begrenzt sind - also dass auch kein Delete geht, oder der Admin es zumindest erst erlauben müsste.
Dass man dabei den Absendernamen und Profilbild mitgeben kann, ist aber wieder problematisch, hier würde ich erwarten, dass beides der Admin einstellt und bei der Nutzung des Links dann immer die vom Admin eingestellten Daten verwendet werden.

Bzgl. Bilder ist auch problematisch, aber da kann ich die Hintergründe verstehen. Bei eingebetteten Ressourcen (also wie bei den Bildern) kann man keine Authentication-Header mitgeben, man müsste also auf Cookies ausweichen, was dann aber zu Problemen führen kann, je nach Browser-Einstellung. Oder man wickelt das, was normalerweise der Browser macht (Bild hunterladen, cachen und einbetten) komplett selber im eigenen JavaScript ab, aber das ist aufwändiger und weniger erprobt, als einfach ein <img> zu schreiben. Oder man erstellt zur richtigen Zeit einen kurzlebigen Einmal-Link, die Erstellung erfordert Authentifizierung, der Einmal-Link nicht. Das ist am aufwändigsten, aber ein guter Mittelweg. Allerdings ist bei Discord nicht wirklich klar, wie lange dieser Link leben müsste, da das Bild ja nicht nur heruntergeladen, sondern eine unbekannte Zeit angezeigt werden und jederzeit neugeladen können werden muss.
Das macht's natürlich nicht besser, aber ich kann's zumindest verstehen ^^
Würde mich ehrlich gesagt auch interessieren, wie sie das Problem gelöst haben (wenn sie es gelöst haben). Wir haben bei unseren Projekten kaum Bilder, die eine Authentifizierung brauchen, für Download-Links arbeiten wir aber mit einem Einmal-Link, da ist das auch gut machbar.

Da ist absolut gar nichts passiert. Außer ein Cringe Video von einem Kind, was es geschafft hat Virtual Express 2010 zu installieren.

Woher ich das weiß:Berufserfahrung – Fachinformatiker

Wenn du Hacking-Tutorials nicht verstehst bist du wohl einfach nicht dazu bestimmt Hacker zu sein.


Palladin007  21.04.2025, 18:15

Das ist kein "Hacking-Tutorial" und hat auch nicht einmal entfernt etwas damit zu tun.