Anwendungs-Software und Apps 14.501 Themen, 73.738 Beiträge

.cab-Datei knacken

UselessUser / 11 Antworten / Baumansicht Nickles

Hallo Leute,

da gerade ein paar Threads weiter unten vom "Knacken" gesprochen wird, hätte ich auch noch eine Frage:
Immer wieder habe ich es mit Setup-Programmen für die Treiberinstallation zu tun (Drucker, USB-Sticks für Win98 usw.), die dann fehlschlagen. Eine manuelle Installation ist nicht möglich, weil die erforderlichen Dateien (z. B. die .inf-Dateien) in den .cab-Archiven stecken.
Bei vielen dieser Archive erhalte ich aber mit herkömmlichen Zip-Programmen (QuickZip, ZipGenius, UltimateZip, WinZip, PowerArchiver, WinXP-Zipper) eine Fehlermeldung: "cabinet error 2". Es funktioniert einfach nicht, wenn sie einem bestimmten Standard nicht genügen, es geht aber scheinbar, wenn sich die Setup-Routine dieses Archives bedient. D. h., diese Archive sind NICHT beschädigt. Vermutlich ist da mit herkömmlicher Software nichts zu machen, deshalb muss da wohl getrickst werden.
Ein Beispiel: Die .cab-Dateien in diesem Treiber von HP (dj516ge.exe).
Klick mich.

Weiß da jemand Rat?

Thx

UselessUser

Rückmeldungen über Hilfestellungen sind sehr erwünscht:1. investiere ich Zeit, um dir zu antworten und2. möchte ich auch etwas dazulernen.
bei Antwort benachrichtigen
haegar the horrible UselessUser „.cab-Datei knacken“
Optionen

Sie SIND! "beschädigt"! Allerdings in einer Art und Weise, daß das Entpackprogramm weiß, wie...

Wie man direkt an die Innereien rankommt, kann ich Die leider auch nicht sagen, aber ein Tip: die CABs werden ja entpackt, damit die Dateien darin an ihre Zielorte kopiert werden können. Und der Ort, an dem das geschieht, ist in schöner regelmäßigkeit das Temporärverzeichnis TEMP oder TMP (als Environment.-Variablen, tatsächliche Verzeichnisse siehe Dein Gedächtnis, wie sie bei Dir wirklich heißen oder Systemsteuerung - System - Environemnt). Dort tauchen dann zwar einigermaßen kryptische Verzeichnisnamen auf wie "_is435" oder "_isrmp0.dir" u.dgl.m., aber in einem davon soltlen sie drin sein, die INFs & Co.

Kochrezept:
- Setup starten
- warten, bis die Dialoge auftauchen, was vom und wohin das Pgm installiert werden soll
- dann im Temporärverzeichnis nachsehen, ob das ein (nach Datum- und Zeitangabe) ein neuer Eintrag erstellt worden ist (vom Setup abgelegt, das gerade läuft)
- ja, und dann diese Dateien in ein separates Verzeichnis kopieren

Man kann sich die Arbeit erheblich erleichtern, indem man vor einer solchen Tat das Temporärverzeichnis erst einmal von Hand löscht (das Win paßt schon selber auf sich auf, daß die Win-eigenen Temp-Dateien der laufenden Session übrig bleiben dabei, "Zugriff verweigert"). Dann kann man auf einen Blick sehen an Datei/Verzeichnis-Neuzugängen, ob diese einfache Form des Tricks funktioniert.

Keine Garantie, daß man so ALLE Dateien erwischt, die im CAB enthalten sind!

Manchmal liest man, wenn ein Disloag auftaucht wie etwa "prüfe Dateien" oder so und dann kann man sehen, daß da viele, viele Dateien nach z.B. " K:\00875465" kopiert werden, d.h. es geht locker am Temporärverzeichnis vorbei irgendwohin, OK, dann sieh eben dort nach. Während diese Imterims-Auspack-Verzeichnisse im Temporärverzeichnis sehr häufig nach Beendigung des Setups auf der Platte verbleiben, werden in dem anderen Beipsiel diese obskuren anderen Zielverzeichnisse mitsamt Inhalt sofort nach Ende des Setup entfernt, d.h.: da ist also dann Eile angesagt - sonst sindse weck.

Dieser Trick sollte eigentlich immer funktionieren, sofern man das echte Imterims-Auspackverzeichnis auch ausfindig machen kann.

bei Antwort benachrichtigen
UselessUser haegar the horrible „Sie SIND! beschädigt ! Allerdings in einer Art und Weise, daß das...“
Optionen

Hallo Haegar,

danke, an diesen "Trick" habe ich noch gar nicht gedacht! Das wäre natürlich eine Möglichkeit, ich werde sie bei Gelegenheit einmal ausprobieren. Man könnte vielleicht auch versuchen, den Setup-Prozess zu killen, bevor das temporäre Verzeichnis wieder gelöscht wird.

MfG

UselessUser

Rückmeldungen über Hilfestellungen sind sehr erwünscht:1. investiere ich Zeit, um dir zu antworten und2. möchte ich auch etwas dazulernen.
bei Antwort benachrichtigen
haegar the horrible UselessUser „Hallo Haegar, danke, an diesen Trick habe ich noch gar nicht gedacht! Das wäre...“
Optionen

Freilich. Nur, daß man da wahrscheinlich den genau richtigen Zeitpunkt nur schwer und zufällig wird erreichen können. Es ist manchmal nur die Frage von ein paar Zehntel Sekunden, bis die zig MBs wieder verschwunden sind.

Anmerken muß ich noch, daß dieser Trick besser (bzw. überhaupt nur) funktioniert, wenn nur EINE CAB-Datei vorkommt. Setup´s mit deren mehreren könnten dahingehend Probleme verursachen, daß sie diese mehreren CABs nur der Reihe nach auspacken, d.h. obiger Trick müßte mehrfach angewandt werden. Und dann wäre die Chance erst recht minimiert, wirklich ALLE Dateien zu erwischen.

bei Antwort benachrichtigen
i.mer UselessUser „.cab-Datei knacken“
Optionen

Die erste Möglichkein ist, wie bereits gesagt, Setup ausfürhren, im ersten "klicken Sie auf Weiter" Bild nach dem Entpacken oder aber beim Fehler Popup nach den entpackten Dateien (etwa im Temp-Ordner suchen, fertig.

Hilfreich ist der File Monitor won sysinternals.com, dieser zeigt welcher prozess auf welche Dateien zugreift, (z.B. Setup.exe auf TEMP/driver.ini).
Im übrigen sind dort auch der tolle Prozess Explorer und viele andere interessante Tools zu finden.

Die zweite Möglichkeit ist ein Setup Decompiler, als ein Programm, dass Setups wieder zerlegt undteilweise sogar die Setup-Scripte zugänglich macht, was interessant ist, wenn z.B. die DLL-Datein aus dem Setup heraus integriert werden...

Diese Möglich keit ist wohl gründlicher, ist aber meist nicht erforderlich...

Decompiler gibt es für Windows Installer, Nullsoft, Wise Solutions etc...

bei Antwort benachrichtigen
UselessUser i.mer „2 Ansätze.“
Optionen

Hallo i.mer!

"Hilfreich ist der File Monitor won sysinternals.com"
Ja, der ist wirklich Klasse, habe ihn gerade wieder aus meinem Archiv gefischt!

"Decompiler gibt es für Windows Installer, Nullsoft, Wise Solutions"
Hast du dafür einen funktionierenden Link? Habe im Netz nichts g'funden.

MfG

UselessUser

Rückmeldungen über Hilfestellungen sind sehr erwünscht:1. investiere ich Zeit, um dir zu antworten und2. möchte ich auch etwas dazulernen.
bei Antwort benachrichtigen
i.mer Nachtrag zu: „2 Ansätze.“
Optionen

www.google.com und www.emule-project.net helfen (gerade selbst getestet).

bei Antwort benachrichtigen
UselessUser i.mer „www.google.com und www.emule-project.net helfen gerade selbst getestet .“
Optionen

Hallo i.mer,

habe jetzt den MakeMSI ausfindig gemacht, der scheint auch Windows Installer disassemblieren zu können. Der Download-Link auf die Seite des Entwicklers ist überall ungültig, bei eMule wird er aber angeboten.

Thx

UselessUser

Rückmeldungen über Hilfestellungen sind sehr erwünscht:1. investiere ich Zeit, um dir zu antworten und2. möchte ich auch etwas dazulernen.
bei Antwort benachrichtigen
Tom West UselessUser „.cab-Datei knacken“
Optionen

Im speziellen Fall des HP-Treibers läßt sich das Archiv mit Winrar 3.51 problemlos entpacken.

Hth

Greets
Tom West

bei Antwort benachrichtigen
UselessUser Tom West „Im speziellen Fall des HP-Treibers läßt sich das Archiv mit Winrar 3.51...“
Optionen

Hallo Tom West,

sorry, dieser Treiber besitzt gar keine .cab-Dateien! Aber auch hier gelingt mir keine manuelle Installation, weil einfach keine brauchbare .inf-Datei enthalten ist.
Wenn man das Archiv entpackt, trifft man höchstens noch auf die hpdj670c.inf, in der u. a. folgende Einträge zu finden sind:

[DJ670]
DriverFile=You_must_use_the_supplied_setup_program_to_install_this_printer!
...
[Strings]
DiskID1="HP DeskJet 670C Series Disk 1"
HP="Hewlett Packard"
Device="HP DeskJet 670C Series"
WARNING="Use setup.exe to install."

Manuelle Installation: negativ! :-(

Hier ist ein richtiges Beispiel für eine .cab-Datei:
http://www.sandisk.de/Oem/Default.aspx?CatID=1013 (unter Windows 98 Driver (.exe))
Winrar wird sicherlich die .exe-Datei entpacken können, aber anschließend noch die .cab-Dateien? Ich schätze einmal nicht ... ;-)

MfG

UselessUser

Rückmeldungen über Hilfestellungen sind sehr erwünscht:1. investiere ich Zeit, um dir zu antworten und2. möchte ich auch etwas dazulernen.
bei Antwort benachrichtigen
Tom West UselessUser „Hallo Tom West, sorry, dieser Treiber besitzt gar keine .cab-Dateien! Aber auch...“
Optionen

Um cab-Dateien, die von Installern benutzt werden, zu entpacken, besorg Dir das Utility i6comp (einfach googeln).
Ob Dir das in allen Fällen zur manuellen Inst. reicht, wird sich zeigen....


Greets
Tom West

bei Antwort benachrichtigen
UselessUser Tom West „Um cab-Dateien, die von Installern benutzt werden, zu entpacken, besorg Dir das...“
Optionen

Jau, Volltreffer!!! Funktioniert wunderbar.

Danke,

UselessUser

Rückmeldungen über Hilfestellungen sind sehr erwünscht:1. investiere ich Zeit, um dir zu antworten und2. möchte ich auch etwas dazulernen.
bei Antwort benachrichtigen