| Cryptography & Encryption Ver- und Entschlüsselung, Algorithmen, Kryptoanalyse ? Kryptographie in der Praxis. Blowfish, Triple-DES, XOR u.a. |
Diskussion: TCP Nutzdaten Dekodieren im Forum Cryptography & Encryption, in der Kategorie Security Area; Hallo Liebe Hackerboard Community! Ich versuche momentan ein Programm so zu ändern, dass ich es auch im offline modus verwenden ...
![]() |
| | #1 (permalink) |
| Registriert seit: 02.10.07 ![]() Likes: 0 | Hallo Liebe Hackerboard Community! Ich versuche momentan ein Programm so zu ändern, dass ich es auch im offline modus verwenden kann... das heißt: Ich habe einen Loopback Adapter etc und Verbinde es quasi mit meinem selbst gebauten Server (mit Delphi gecodet). Nun muss mein Server natürlich auch genau die Pakete an den Client schicken, die ich mit Wireshark (hoffe kennt ihr) ausfindig machen konnte. Das is nun auch nicht weiter das Problem. Nur wenn der Client den Server nach einer Art Bestätigung der ID fragt, wird es problematisch, da ich dieses TCP Paket verändern muss. Ich habe hier 8 Zeichenfolgen (alle normalerweie 128 zeichen lang), die absolut das selbe in dem client anrichten aber komplett unterschiedlich sind... da ich so eine Dekodierung noch nie gesehn habe frage ich mich, ob vllt hier einer mir sagen kann nach welchem Algorithmus ich suchen muss. Hier einmal die zeichen nur für ein Paket (die anderen 7 lass ich ma weg^^): Code: ?L¸?Ä???_???B??¤âBÎë]???q?-J?0??Ž?l]VîU?01??Ö&Ç? ??F?:Elâ?Š'Ç?}E?Ö? u?3}?O??Ý yq@???f? ?D;%M?eÜJß??uÔ Vielen Dank für eure Hilfe im Vorraus :D mfg Innos |
| | |
| | #2 (permalink) |
| Guest Likes: | und woher genau bekommst du diese BINAEREN daten da in deinem Post? |
|
| HaBOT | |
| |
| | #3 (permalink) | |||
| Registriert seit: 25.11.05 ![]() Likes: 0 | Zitat:
Und da dein Betriebssystem den SrcPort willkürlich wählt, ist das ganz normal eine TCP-Verbindung wo du Daten senden und empfangen kannst. Zitat:
Zitat:
Oder sind deine einkommenden Daten verschlüsselt? Dann sind sie natürlch jedes Mal unterschiedlich. Hast du Dinge wie NetworkByteOrder beachtet? Und was meinst du damit, nach welchem Algorithmus du suchen musst? Wenn du den Verschlüsselungsalgorithmus meinst, der das sein könnte, suche evtl. mal in der Binary, ob da noch irgendwelche Strings drin sind (zB. AES oder DES oder TWOFISH oder MD5 oder SHA-1) Mit dem Output alleine kann man wenig anfangen. Man müsste mindestens noch den Input kennen und evtl noch, was das Progamm da so ungefähr macht. | |||
| | |
| | #4 (permalink) |
| Themenstarter Registriert seit: 02.10.07 ![]() Likes: 0 | ok thx erstmal für die antworten (war scho verzweifelt )der client ist eine fremde anwendung die normalerweise, wenn man eine ID eingibt den Server anfragt, ob diese ID berechtigt ist. So jetzt is aba mein Programm der Server´, der ihm diese Bestätigung schicken soll. Ich änder dabei nicht den Header sondern nur den Data File oder die nutzdaten, die man an so ein TCP Paket anhängen kann. Ich sende in Delphi meine Nutzdaten so (Header beachte ich gar nich... geht automatisch): Code: ServerSocket1.Socket.Connections[0].SendText('blablabla'); 1. Eigenschaft: egal wie lang die ID ist, es sind immer 128 Zeichen in dem Bestätigungs String 2. Eigenschaft: der Bestätigungs String für immer die selbe ID (bigman213) ist immer anders, aber der client erkennt auch nur die kleinste änderung also muss da doch iwie ein system sein ?( und 3. muss ich in dem Bestätigungs String meine ID reinschreiben^^ nur dazu muss ich ja auch den algo wissen achso diesen Bestätigungs String für die ID bigman213 habe ich mit wireshark rausbekommen (wenn ich die verwende und auch in meinen client bigman213 reinschreibe geht auch alles... nur meine ID funzt net dafür muss ich den String verändern) ... nur wiiieee ![]() @menace thx ertsma ich versuche AES, DES, TWOFISH, MD5, SHA-1 kennt ihr vllt ein Programm um solche Algos einmal durchzugehen? EDIT: ich gebe in den client eine ID >>> client sendet an Server diese ID >>> Server sendet Bestätigungs String mit der ID verschlüsselt >>> Client startet /fürht aufgaben aus Edit2: um rechtliche Konsequenzen brauche ich mir bei diesem Client keine Sorgen machen (also dass ich eine ID Bestätigung "fälsche", da dieses Prog niemand benutzt und niemand wegen 2-3 ? son aufstand macht^^ mir gehts aba um den praktischen Hintergrund 1. Offline das Prog zu nutzen und 2. mit anderen IDs (eigentlich nur 1) |
| | |
| | #5 (permalink) |
| Moderator ![]() Registriert seit: 30.03.04 ![]() Likes: 14 | Hallo, alle (guten) Verschlüsselungsalgorithmen können jeden Geheimtext generieren, sprich, man kann nicht unterscheiden, ob nun AES, Twofish, Blowfish etc. verwendet wurde, weil wie gesagt jeder dieser Algorithmen einen vorgegeben Geheimtext generieren könnte. Außerdem sind die heutigen Algorithmen so ausgelegt, dass man den Geheimtext nicht mehr von Zufallsdaten auseinander halten, irgendwelche statistischen Mittel entfallen. Nur vom Ciphertext auf den Algorithmus zu schließen ist so gut wie unmöglich, selbst wenn man den Klartext hat, bringt einen das nicht sehr viel weiter. Was du machen musst, ist das Programm zu dekompilieren und somit versuchen Rückschlüsse auf den Algorithmen zu ziehen. Wobei man bei solchen Texten/Packeten eigentlich ___nie___ das ASCII-Resultat analysiert, sondern sich immer die Daten im Hex-Format anguckt. Evt. sind die Daten auch so aufgebaut: Timestamp | ID-Client | .... | Response Der Timestamp mag vermutlich bei jedem aufruf variieren, aber ID-Client und Response können z.B. gleich bleiben, soetwas sieht man aber erst, wenn man die Hex-Strings zweiter Packete vergleicht. |
| | |
| | #6 (permalink) |
| Themenstarter Registriert seit: 02.10.07 ![]() Likes: 0 | meinst du, dass die zeichenkette "vom-Client-an-Server" gleich der Zeichenkette "Server-an-Client" sein könnte? nein^^ es ist nicht so... der client sendet : 16665bigman213 und der server antworten mit einem 1049 Byte großen Data file mit einer Zeichenkette von 128 Zeichen (im gegensatz zum client, bleibt die größe immer gleich) außerdem habe ich auch mal mit einem Hex Editor den Client angeschaut. Nur leider sehe ich da auch nur solceh komischen Zeichen und nicht iwelche leserlichen Zeilen ich guck mir jetzt aber mal die Hex-Strings genauer an, wobei ich aber nicht glaube, dass sie gleich sind, da ja auch die ASCII-Strings unterschiedlich sind und die folgen doch aus deren Hex-Strings oder? |
| | |
| | #7 (permalink) |
| Senior Member | ich glaube er meinte du sollt die tcp pakete mitn hex editor anschauen!
__________________ cu Chakky we are dreaming in digital we are living in realtime we are thinking in binary we are talking in IP welcome to our world |
| | |
| | #8 (permalink) | ||
| Registriert seit: 25.11.05 ![]() Likes: 0 | Zitat:
Zitat:
Und du sollst, wie die Vor-Schreiber schon gesagt haben, nicht den Client im Hexeditor erstmal anschauen, sondern die Daten. Und dort nach Mustern wie einem Header oder Footer suchen. Das Programm solltest du trotzdem untersuchen, um die Art des Algorithmus(a/symmetrische Verschlüsselungsfunktion, HMAC) zu erkennen (das geht nur händisch, dafür gibt es keine automatisierten Programme. Wenn du glück hast, verwendet die Person einen symmetrischen Schlüssel und den solltest du dann aus dem Programm extrahieren können. Wenn du das alles noch nie gemacht hast: Viel Spass, das wird einiges an Frickelei. | ||
| | |
| | #9 (permalink) | |
| Senior Member | Zitat:
*ich les weiterhin interessiert mit
__________________ cu Chakky we are dreaming in digital we are living in realtime we are thinking in binary we are talking in IP welcome to our world | |
| | |
| | #10 (permalink) |
| Themenstarter Registriert seit: 02.10.07 ![]() Likes: 0 | äh xD ja^^ naja thx für eure hilfe ich werd ma mit dem Hex Editor mehr arbeiten |
| | |
| | #11 (permalink) |
| Registriert seit: 15.10.04 ![]() Likes: 0 | WireShark kann doch Pakete auch direkt hexadezimal anzeigen, das sollte für deine Zwecke doch ausreichen, oder? Natürlich folgt der String den du da hast aus den hexadezimalen Werten, allerdings kann man eventuell in der Hex-Ansicht ein sonst verborgenes System erkennen. Beispiel: Die Zahl 2 als ASCII-Character wird als ein Byte mit Hex-Wert 0x32 kodiert. Der Hex-Wert 2 (0x02) hingegen ist ein nicht sichtbares Steuerzeichen in ASCII. Siehe auch http://asciitable.com/ |
| | |
![]() |
| | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| .otrkey dekodieren | games1024 | Music- & Filmbox | 1 | 14.07.09 19:05 |