OllyDBG Problem mit einfachstem CrackMe...

10/01/2014 19:26 CrankStar™#1
Hi,

habe mir eben eine kleine CrackMe mit VB.NET geschrieben.
Serienschlüssel als String gespeichert, TextBox-Abfrage.

Aber egal, welches CrackMe-Tutorial ich auf YouTube durchschaue - es geht einfach nicht...funktioniert auch nicht mit CrackMe aus YT-Videos.

Problem liegt bei der Suche nach den Abfrage-Strings.

Bei OllyDBG "Search for -> All referenced text strings".
Nirgends bekomme ich da was zu sehen ("Item not found"), egal, welche CrackMe/welchen Text/String...

Als Administrator natürlich auch gestartet.
10/01/2014 19:33 ​Tension#2
Lad die mal hoch, ich kann rein gucken (falls das erlaubt ist?)
Ich würde dir aber raten nicht so sehr auf VB zu setzen beim Cracken.
10/01/2014 19:35 CrankStar™#3
Mir gehts nur darum, das mal so anfangsweise anzuschauen ^^

[Only registered and activated users can see links. Click Here To Register...]

Aber wie gesagt, auch bei CrackMe aus dem Internet finde ich da nix (wenn ich das nach den ganzen Vid-Tuts mache).

Ziel-String ist 'serial'.
10/01/2014 20:30 ​Tension#4
Entweder mein Olly hat zu viele Plugins oder seine Tage, kann die .exe jedenfalls nicht vernünftig laden..
Hab es deshalb mal in IDA geladen und man kommt zu der Compare Funktion ohne Probleme weil der Name halt "Button1_Click(..)" ist.
10/01/2014 20:41 CrankStar™#5
mir gehts nur darum, mir mal das thema anzuschauen und nicht darum, was möglichst sicheres zu programmieren ^^

und da hätte mich das eben va in bezug auf ollydbg bezogen, aber dann werd ich mal weiterschauen, was da los ist...
10/02/2014 00:12 tolio#6
das klingt so als sollte sich jemand mal informieren wo der unterschied zwischen managed und nativ ist

ändere in der datei mit einem hex editor deiner wahl beim offset 0xdf5 die beiden bytes 0x33 0x0D zu 0x26 0x26, ist ein einfacher weg die datei zu cracken ;)
10/02/2014 00:28 snow#7
#moved
10/02/2014 14:13 CrankStar™#8
wieso .net languages?
hier gehts nur rein um das problem, dass ich keine strings in ollydbg auslesen kann und nicht speziell um mein crackme.
kann mir auch zehn andere crackmes in anderen sprachen ausm inet ziehen, geht trotzdem nicht ^^

Quote:
ändere in der datei mit einem hex editor deiner wahl beim offset 0xdf5 die beiden bytes 0x33 0x0D zu 0x26 0x26, ist ein einfacher weg die datei zu cracken
c&p kann ich auch, hilft mir aber nix, wenn ich mir das thema mal anschauen und auch verstehen will ^^
10/02/2014 17:00 M‎‎#9
Soviel ich weiß kann man managed Anwendungen nicht in OllyDBG debuggen.
10/02/2014 17:57 tolio#10
Quote:
Originally Posted by CrankStar™ View Post
wieso .net languages?
Quote:
Originally Posted by tolio View Post
das klingt so als sollte sich jemand mal informieren wo der unterschied zwischen managed und nativ ist


Quote:
Originally Posted by CrankStar™ View Post
c&p kann ich auch, hilft mir aber nix, wenn ich mir das thema mal anschauen und auch verstehen will ^^
musst bei dem ansatz doch nichts kopieren, du könntest einfach mal rausfinden was die bytes bedeuten, ist nicht sonderlich schwer, einfach mal die opcodes googlen
12/11/2014 13:47 iTeX-#11
wDein schlüssel ist "serial" ?
ernsthaft ? :D

naja also erstmal was grundlegendes:
- vb & C# sind .NET sprachen und werden vom .net compiler erstellt.
Diese programme sind "managed" also das gegenteil / was anderes als "nativ".
Der ganz ganz große Nachteil von managed software ist, dass man sie ohne probleme dekompilen kann. sprich den kompletten code sehen kann. native programme sind meisst von einem C oder C++ compiler in maschinen code compiled und erstmal nicht mehr von decompilern lesbar. IDA und Olly können solche programme aber in Assembler code übersetzen, welcher zwar schwerer zu lesen ist , aber ein cracken leichter macht.

Also : wenn du schon in VB oder c# programmieren willst, und deinen code vor anderen geheim halten willst merk dir eins. es geht nicht.
wenn jemand mit wille und erfahrung deinen code sehen will dann schafft er das auch.
Du kannst diesen leute den weg zum ziel aber erschweren , indem du gewisse maßnahmen ergreifst, deinen IL code ein wenig zu verschlüsseln .
Entweder per Obfuscator oder Crypter.

Sicherer wäre es per PHP ein lizenssystem zu schreiben und dann zu deiner software zu parsen.

Gruß
itex


EDIT: sorry habe nicht alle posts im thread gelesen , also wenn es dir rein darum geht zu wissen wie du dieses Programm cracken kannst :

- OllyDBG -> Das mit den text strings kannst du vergessen, du musst etwas machen, was die funktion umgeht oder direkt auf die funktion umleiten, welche das enthält, was zb die variable Registered auf true setzt , was im falle einer erfolgreichen aktivierung per serial getan werden würde ( nicht in deinem programm aber allgemein zB.)So , also dafür brauchst du ein paar grundlegende ASM befehle wie JNZ oder JMP usw . Dein ziel ist es also die messagebox REGISTRIERT anstelle von UNGÜLTIGER KEY anzeigen zu lassen.
Dann suche in Olly die stelle an der die messagebox angezeigt werden sollte, und ändere das JNZ in ein JMP um, also (JNZ = Springe wenn ungleich in JMP = Springe egal was ist ) .
Heisst in deinem Fall springe weiter egal welcher serial eingegeben wurde.

Dann kannst du die änderungen in das programm laden und speichern.
Fertig
12/23/2014 17:12 »x«#12
Wenn es um .NET handelt, würde ich an deiner stelle einen Decompiler und Reflexil verwenden.
Und anstatt OllyDbg, wäre [Only registered and activated users can see links. Click Here To Register...] mir lieber.
12/23/2014 17:32 dready#13
Zum debuggen von .NET Code gibts Windbg mit Plugin. (SOS wenn ichs recht im Kopf hab)
Zum analysieren des Codes IDA.

Wenn dir das zuwenig an Lernerfahrung bringt, folge Tolios rat und schau dir die Specs des IL Bytecodes an, ist ein gutes Stück einfacher als ASM dank der Informationsfülle.