Es ist: 20.01.2017, 19:00 Hallo, Gast! (AnmeldenRegistrierenSicherer Login)


Antwort schreiben 
HILFE Sentinel HASP Dongle umgehen
08.01.2017, 22:44
Beitrag: #1
HILFE Sentinel HASP Dongle umgehen
Hallo,

ich bin in besitz einer Software welches mittels einem HASP Dongle (USB Dongle) gesichert ist.

Sprich ich kann die Software nur mit dem richigen "USB Stick" welcher als Dongle (key etc) gilt starten/benutzen.

Die Software ist zwar bereits installiert, aber ich kann diese leider nicht starten, aufgrund des fehlenden Dongles.

Meine frage ist es nun ist es möglich das Programm OHNE Dongle zum laufen zu bekommen?

Mir ist bekannt das wenn man den richtigen dongle besitzt diesen auslesen und lokal kopieren kann, leider bin ich nicht im Besitz des richtigen dongles....

Also ist es möglich OHNE Dongle das zum laufen zu bekommen?

p.s würde dafür auch was springen lassen

Vielen Dank

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.01.2017, 12:05 (Dieser Beitrag wurde zuletzt bearbeitet: 11.01.2017 12:07 von skullteria.)
Beitrag: #2
RE: HILFE Sentinel HASP Dongle umgehen
Kommt drauf an was für Sicherheitsmechanismen verwendet werden...
z.B. encoded code, welcher erst on the fly mit dem richtigen Key decoded wird... Arschkarte.
Wenn du Glück hast ist es so, dass der Dongle lediglich einen normalen Key ersetzt den man eingeben muss. Jetzt musst du dich nur mit dem cracken von software beschäftigen.
Viel Spaß.

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.01.2017, 19:35
Beitrag: #3
RE: HILFE Sentinel HASP Dongle umgehen
Okay, denke das mit dem Hasp umgehen wird kläglich scheitern umsonst sichert man seine software damit.....


Accestuner Race von COBB heist das Programm.

Das gabs früher in abgespeckter version 4free, welches ich ebenfalls besitze.
Nur ist dort eine "seriennummer/device Nr" hinterlegt, mit dem man nur Maps/software für dieses "seriennummer/device Nr" schreiben kann.



Ich hab das hier mal bereitgestellt:
http://s000.tinyupload.com/?file_id=0260...7516874768


Das Bild zeigt die Seriennummer für welches "Device" ich die Maps schreiben kann, jedoch müsste ich diese ändern. (auf meine Device Nummer)

[Bild: 29.jpg]

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.01.2017, 11:32
Beitrag: #4
RE: HILFE Sentinel HASP Dongle umgehen
Wenn das Programm scheiße ist und du glück hast, könnte cheat engine funktionieren.
Einfach nach dem Wert im Programm suchen und den Wert auf den neuen umschreiben.
Kompliziertere Angriffe wird wohl niemand hier so auf die schnelle erklären können.

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
14.01.2017, 15:18
Beitrag: #5
RE: HILFE Sentinel HASP Dongle umgehen
Hab jezt probier den Wert zu suchen aber irgendwie durchblicke ich das programm nicht so ganz.

Hat jemand von euch Erfahrung mit dem Umgang von Cheatengine und könnte mir ev kurz helfen ob das möglich wäre?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
15.01.2017, 11:26
Beitrag: #6
RE: HILFE Sentinel HASP Dongle umgehen
Ich bezweifle dass es sich bei der Serial nur um einen normalen String handelt, daher kann man mit Cheatengine nicht viel machen.

Lad mal das ganze Programmverzeichnis hoch. Das Programm installiert bei mir nicht, da ich die AccessManager Software nicht drauf hab.

Grüße

Gamehacking, Security and Programming
Easysurfer's Blog
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.01.2017, 11:15
Beitrag: #7
RE: HILFE Sentinel HASP Dongle umgehen
Accessport Mannager installed:
http://s000.tinyupload.com/?file_id=3235...7919446126

Accesstuner race installed:
http://s000.tinyupload.com/?file_id=0703...1560625380

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.01.2017, 23:40
Beitrag: #8
RE: HILFE Sentinel HASP Dongle umgehen
Ok, ich werde hier keine Lösung präsentieren sondern Dich motivieren mit RE zu beschäftigen. Ist ein ziemlich hübsches Target (auch wenn die C++ Std calls nerven ...)

Die Analyse des Programms beginnt immer mit IDA Pro. Hier verschafft man sich einen groben Überblick was abgeht. Beim reinladen sticht sofort folgendes ins Auge:
[Bild: c2ac3ca904.png]
Das blaue Oben zeigt die CODE Section an, bzw auch das was IDA als Code identifiziert hat. Alles andere (Braun und Schwarz) sind nicht Daten die IDA nicht zuordnen kann, also quasi wirre Bytes. Das dieser Bereich so groß ist, ist ungewöhnlich. Wo ist der ganze Code des Programms ? Behalten wir das mal im Hinterkopf.

Bei der WinMain geht dein Windows-Programm quasi los. Scrollen wir ein bisschen durch den Code (Der HexRays Decompiler ist hier praktisch) und es finden sich eine Menge "LoadStringA"-Befehle. Diese laden einen String aus einer Ressource in einen Speicherbereich, der im Anschluss zum Anzeigen einer MessageBox übergeben wird. Wichtig ist hier die UID (die StringID), die sich in der Resource-Table befindet. Das Tool ResourceHacker kann diese Strings hübsch darstellen. Dort suchen wir uns die passende StringID raus und kommen so an den String der dargestellt wird. Beispielsweise:
PHP-Code:
LoadStringA(v420x6Cu, &v41256); 
Hier wird der String mit der ID 0x6C in einen Buffer der Größe 256 geladen, 0x6C entspricht 108d . Laut unser Resource-Table also:
[Bild: 0a3cabb387.png]
"ERROR: License file corrupted"

Weiter oben wir auch die License.ini eingelesen (Es wird mit den Flags "rb" geöffnet, für read und binary) und im Anschluss an eine Funktion übergeben. Wenn die fehlschlägt bekommen wir die Fehlermeldungen aus der Resource-Table zu Gesicht. Wenn nicht wird das Programm gestartet.
[Bild: 6b3f0fa1da.png]
So, wo wird die Lizenz jetzt verifiziert ? Der eigentliche Lizenzcheck scheint in der Zeile der Überprüfung mit "License file corrupted" zu stehen. Mhh, hier wird ein Funktionszeiger aufgerufen (Variable v65). Und dieser Funktionszeiger kommt aus einer anderen komischen Funktion:
PHP-Code:
v65 sub_404040(v68"PZX5");
        
v66 sub_404040(v68"X5CC");
        
v69 sub_404040(v68"X5PZ"); 
Hier werden also dynamisch irgendwelche Funktionen geladen die es noch nicht gibt. Und nun ist die Frage woher die kommen. Jetzt denkt man wieder an den Anfang, an die Daten die IDA nicht auslesen konnte. Das passiert oft bei kompremierten oder verschlüsselten Daten, die natürlich keinen Sinn für IDA ergeben. Hier wird also eine weitere Bibliothek zur Laufzeit entpackt/entschlüsselt und geladen. Und in dieser Bibliothek stecken unsere ganzen Lizenzchecks! Verifizieren wir das ganze. Die Funktionen zum dynamischen Laden der Funktionen "PZX5, [...]" haben ein weiteres Argument, v68. Und das wird ein wenig weiter oben geladen.
[Bild: 5c9c279590.png]
Hier werden die übergebenen Bytes geprüft, ob es sich um ein PE File (Windows Executable oder DLL) handelt. Wenn ja, wird die Bibliothek in den Speicher geladen. Uns interessiert garnicht woher diese Daten kommen, ob sie nun dreifach entschlüsselt und dann noch gemischt werden. Wir ziehen einfach all diese Daten aus dem Speicher. Mit dem Debugger breaken wir in der obigen Funktion. Laut IDA müsste sich die zusätzliche Bibliothek in a1 befinden, also ganz oben im Stack bei dem Funktionsaufruf, in dem Fall in [EBP+8]. Und siehe da, wir haben eine schöne Binary im Speicher gefunden.
[Bild: 8f75623a26.png]
Diese wird komplett auf die Festplatte geschrieben und bekommt die Endung DLL.
Beim anschauen der Strings dieser DLL findet man spannende Sachen, wie z.B. "gehu3en7charAka5Decrypt License Failed" oder "Failed to get serial from license file". Hier wird also die Lizenz entschlüsselt und Deine gesuchte Serial ausgelesen. Und auch die Exports von "PZX5, [...]" finden sich in der Export-Table dieser DLL. Die Lizenz-Check Funktion wird mit großer Wahrscheinlichkeit "PZX5" sein.
[Bild: b0c3b98141.png]
Damit ist für heute Schluss, schaue mal ob Du die Schritte bis hierhin nachvollziehen kannst. Wenn ja, lade die gedumpte Bibliothek hier hoch.

Grüße

Gamehacking, Security and Programming
Easysurfer's Blog
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Thank given by |xratzrattillox|, Tom
18.01.2017, 09:19
Beitrag: #9
RE: HILFE Sentinel HASP Dongle umgehen
Hammer ! Erst mal vielen Dank für deine Ausführliche Aufschlüsslung und Mühe.

Aber eine gültige Lizent wäre ja bereits vorhanden bzw das Programm "accestuner race" läuft ja auch einwandfrei, jedoch nur für das eine Device mit der Nummer "V2 03316"

Vielleicht noch eine Beschreibung wie das ganze funktioniert.
Also es gibt ein Device names cobb v2 / v3 welches aus einer Hardware besteht (kleines Kästchen mit usb Anschluss und OBD Anschluss fürs Auto).
Dies dient dazu das man die Files welche man mit "accestuner race/pro" geschrieben hat auf das Fahrzeug flashen/übertragen kann. (dient als Flasher)

Das Device hat eine Seriennummer z.b "V2 03316" nun braucht man halt auch die richtige software "accestuner race/pro" mit der richtigen Device seriennummer, sonst funktioniert die Übertragung von Device auf das Auto nicht. Da wahrscheinlich die Seriennummer in der Map, welche mit der Accestuner race/pro software geschrieben worden ist mit hinterlegt wird und beim Übertragen vom Device Auf das Auto abgefragt wird.)

Besäse man ein funktionierendes "accestuner pro" Software könnte man beim erstellen einer Map am Schluss die Cobb device nr angeben für welches die Map bestimmt sein soll. zb. V2 0154

Btw. Ich besitze leider keine so umfangreichen Kentnisse wie du sie hast, deswegen kann ich leider auch nicht alles nachfolziehen.

Hier noch ein Bild wo die Device Nr im Programm sichtbar ist.
[Bild: 7dmyqxeh.jpg]

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Gestern, 10:47
Beitrag: #10
RE: HILFE Sentinel HASP Dongle umgehen
[Bild: x32dbg.jpg]

nur wie kann ich wie von dir gezeigte out.dll generieren?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Gestern, 14:35
Beitrag: #11
RE: HILFE Sentinel HASP Dongle umgehen
Sehr gut dass Du bis hierhin gekommen bist. Die Adresse wo die DLL geladen ist, befindet sich zu dem Zeitpunkt in [ebp+8]. Dieses wird aber in der Zeile
PHP-Code:
mov eaxdword ptr ss:[ebp+8
in das EAX Register kopiert. Das EAX Register siehst Du oben rechts und hat den Wert: 0x01350020 . Darauf machst Du nun Rechtsklick und "Follow In Dump". Dann wird der Speicherbereich dieser Adresse in das linke untere Dumpfenster geladen. Du solltest einen "MZ" Anfang in diesem Fenster sehen, damit hast Du eine PE Binary.

Nun kopierst Du ab dieser Stelle die DLL bis zum Ende dieser Speichersektion (Das Dump-Fenster hört dann irgendwann auf mit runterscrollen). Diese markierten Daten schreibst Du nun über "Binary->Save to File" (oder so ähnlich) auf die Festplatte, sollten ca. 55MB sein. Dieses lädst Du hoch.

Gamehacking, Security and Programming
Easysurfer's Blog
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  [S] Hilfe beim "Cracken" von Prog easysurfer 23 21.603 13.12.2016 21:22
Letzter Beitrag: Eumel_1
  Porsche Durametric USB (Dongle Protection) Hilfe BlackSky 16 26.879 01.04.2016 17:58
Letzter Beitrag: d7fSMcFi
  Software Protection (PC Guard) Unpacking *Hilfe* BlackSky 17 23.546 28.11.2015 11:37
Letzter Beitrag: hqflash
  Bitte um Hilfe - Programm Staircon freischalten dori22 3 4.869 13.02.2015 22:50
Letzter Beitrag: CRC32
  Hilfe: ProCall 5 cracken caldicot 3 5.749 06.08.2014 16:54
Letzter Beitrag: reverserUser
Thumbs Up Visual Restaurant (Serial JMP) Problem HILFE BlackSky 5 5.129 12.09.2013 11:31
Letzter Beitrag: f00bar
  suche kleine re hilfe GeTTeX 0 2.856 22.07.2013 20:30
Letzter Beitrag: GeTTeX
  Hilfe bei eigenem KeyGenMe. zucker 2 3.440 13.02.2013 00:09
Letzter Beitrag: zucker
  Reversing Hilfe Lopus 10 10.802 15.06.2011 17:01
Letzter Beitrag: Rastajan
  Mal wieder Hilfe beim Patchen easysurfer 6 8.374 11.06.2011 10:29
Letzter Beitrag: easysurfer

Gehe zu:


© Back2Hack.cc | Powered by MyBB | Design by Cwis | Top | RSS | Kontakt