Hacking Mac App Store

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Hacking Mac App Store

    So, ein freundlicher Mit-Foren-Nutzer hat mir mal eine App aus dem Mac App Store zugesandt. Ich habe hier noch 10.6.4, also kein App Store.

    Die Anwendung bekomme ich trotzdem zum laufen:
    1) In der Info.plist LSMinimumSystemVersion von 10.6.6 auf 10.6.4
    2) Mit eingenem (self-signed) lokalen Zertifikat neu signieren
    3) Im gdb starten und auf ein exit(0255) warten. Addresse merken, an dem exit(0255) gerufen wird, in ein "ret" patchen
    4) Anwendung läuft
    5) Bei Bedarf: Binary permanent patchen und neu signieren.

    War jetzt nicht so aufwändig, das herauszufinden, habe aber noch nicht alles getestet. Wenn das alles an "Sicherheit" von Seiten Apple war, na dann...

    Hier gibt es ja Personen, die eigene Software im Mac App Store haben(?) Kann mir von denen jemand eine "Raubkopie" zukommen lassen (ist ja rechtmässig, wenn ihr mir die schickt). Ich würde gerne sehen, ob ich die auch so einfach bei mir "illegal" zum laufen bekomme.

    Vielen Dank!
    C++
  • Ja aber das war doch klar - da verschwendet man doch keinen Gedanken drum…

    Ich habe mir die Mühe erst gar nicht gemacht da groß was zu schreiben - einfache Abfrage und fertig damit die Apps nicht wirklich von jedem verschickt werden können und wer meint er muss, der tut doch eh - egal was du anstellst…
    Warum Boshaftigkeit unterstellen, wenn Unvermögen als Erklärung vollkommen ausreicht.
  • Naja, wäre schon gewesen wenn Apple hier ein wenig mehr Aufwand betrieben hätte.

    Selbst würde ich allerdings nie mehr als ein 1-2h in einen Registrierungs oder Kopierschutzs eines Programmes investieren.
    Ist doch vergebliche Liebesmühe.

    Ein Cracker wird auch dann die App knacken, wenn ich Wochen oder Monate darin investieren würde.
    Mehr als Zeit verschwenden kann man damit nicht.

    Eine einfache E-Mail + Name --> Seriennummer Generierung, die Joe Average davon abhält das Programm an tausend Andere weiterzugeben reicht völlig.
  • Tobse001 schrieb:

    Selbst würde ich allerdings nie mehr als ein 1-2h in einen Registrierungs oder Kopierschutzs eines Programmes investieren.
    Ist doch vergebliche Liebesmühe.

    Es hängt aber auch davon ab, was Du schützen möchtest. Bei einer geknackten Programmversion entsteht Dir pro Nutzer ein einmaliger Schaden. Wenn Du über Deine App beispielsweise Zeitschriften- oder Buchinhalte vertickst, entsteht pro Nutzer ein kontinuierlicher Schaden. Die perfekte Sicherung wird es wahrscheinlich nicht geben. Aber ein Verfahren, wo es Eingriffsmöglichkeiten gegen Leuten, die es zu toll treiben, sollte auch nicht zu schwer sein.
    „Meine Komplikation hatte eine Komplikation.“
  • Tobse001 schrieb:

    Eine einfache E-Mail + Name --> Seriennummer Generierung, die Joe Average davon abhält das Programm an tausend Andere weiterzugeben reicht völlig.

    Ich würde da eher zu einer Lösung raten, die Joe Average davon abhalten, aus einschlägigen Foren einfach nur eine korrekte Seriennummer kopieren zu brauchen. Beispielsweise einfache public key Kryptographie und ein 1024bit Key als extra Datei an den legitimen Anwender gesendet. Für beide Seiten ist der Aufwand nur minimal größer, aber Joe Average muss sich dann zum Raubkopieren entweder einen Patch oder die vollständig gecrackte Version ziehen. Und das schreckt sicherlich noch mehr ab (man muss schliesslich Software aus "dubiosen" Quellen installieren, wo niemand weiss, was da alles geändert wurde...) Meine Meinung :)

    Gut, ist vielleicht auch etwas zweischneidig. Der Mac App Store scheint es ja im Prinzip genauso zu machen, nur scheinbar zu einfach zu umgehen. Aber andererseits muss man auch hier die "Raubkopien" als Ganzes beziehen, anstelle sich einfach nur irgendwo eine korrekte SN# zu organisieren, ohne unvertraute Software auf den Rechner zu lassen.
    C++
  • zerm schrieb:

    muss sich dann zum Raubkopieren entweder einen Patch oder die vollständig gecrackte Version ziehen. Und das schreckt sicherlich noch mehr ab (man muss schliesslich Software aus "dubiosen" Quellen installieren, wo niemand weiss, was da alles geändert wurde...) Meine Meinung :)

    Meinst Du? Wenn ich mir angucke, wie viele Leute mit einem iPhone + Jailbreak rumlaufen, habe ich da so meine Zweifel an der Urteilskraft von John Doe bzgl. der Herkunft von Software.
  • Tobse001 schrieb:

    Naja, wäre schon gewesen wenn Apple hier ein wenig mehr Aufwand betrieben hätte.

    Selbst würde ich allerdings nie mehr als ein 1-2h in einen Registrierungs oder Kopierschutzs eines Programmes investieren.
    Ist doch vergebliche Liebesmühe.

    Ein Cracker wird auch dann die App knacken, wenn ich Wochen oder Monate darin investieren würde.
    Mehr als Zeit verschwenden kann man damit nicht.

    Eine einfache E-Mail + Name --> Seriennummer Generierung, die Joe Average davon abhält das Programm an tausend Andere weiterzugeben reicht völlig.



    Was mich beunruhigt ist, dass die verstreute Szene, jeder 2. Entwickler probiert doch irgendetwas anderes aus und macht es einfach so unübersichtlich, jetzt zusammen gefasst wird, deren Schutz dann aber einfach wie 'zerm' gezeigt hat, lachhaft ist.
    Der Prozess kann doch für alle Apps automatisiert werden, und wenn manches nicht geht, gibt es ja noch diese Hilfsanbieter zum Bedienen des gdb.

    Joe Average hat damit dann nichts zu tun, außer dass er weiss, was man wo umsonst kriegen kann
    I would be embarrassed if they did not spy on me.
  • zerm schrieb:

    Tobse001 schrieb:

    Eine einfache E-Mail + Name --> Seriennummer Generierung, die Joe Average davon abhält das Programm an tausend Andere weiterzugeben reicht völlig.
    Beispielsweise einfache public key Kryptographie und ein 1024bit Key als extra Datei an den legitimen Anwender gesendet. Für beide Seiten ist der Aufwand nur minimal größer, aber Joe Average muss sich dann zum Raubkopieren entweder einen Patch oder die vollständig gecrackte Version ziehen.
    Das nennt sich im einfachsten Fall z.B. AquaticPrime, das wir auch tatsächlich verwenden. Aber wie verhinderst Du, dass freiheitsliebende Nutzer anstatt der Seriennummer einfach gleich die ganze Lizenzdatei weitergeben? Da lässt sich beliebig aufrüsten, indem man dann z.B. noch zusätzlich mit Online-Aktivierung anfangen könnte, worauf meinem Freund, dem Cracker, aber garantiert auch wieder etwas einfällt.

    Zwischenzeitlich muss man sich eben doch irgendwann fragen, wie sehr man seine legitimen Kunden eigentlich ärgern will.
  • Peter Maurer schrieb:

    zerm schrieb:

    Tobse001 schrieb:

    Eine einfache E-Mail + Name --> Seriennummer Generierung, die Joe Average davon abhält das Programm an tausend Andere weiterzugeben reicht völlig.
    Beispielsweise einfache public key Kryptographie und ein 1024bit Key als extra Datei an den legitimen Anwender gesendet. Für beide Seiten ist der Aufwand nur minimal größer, aber Joe Average muss sich dann zum Raubkopieren entweder einen Patch oder die vollständig gecrackte Version ziehen.
    Das nennt sich im einfachsten Fall z.B. AquaticPrime, das wir auch tatsächlich verwenden. Aber wie verhinderst Du, dass freiheitsliebende Nutzer anstatt der Seriennummer einfach gleich die ganze Lizenzdatei weitergeben? Da lässt sich beliebig aufrüsten, indem man dann z.B. noch zusätzlich mit Online-Aktivierung anfangen könnte, worauf meinem Freund, dem Cracker, aber garantiert auch wieder etwas einfällt.

    Zwischenzeitlich muss man sich eben doch irgendwann fragen, wie sehr man seine legitimen Kunden eigentlich ärgern will.

    Naja, AquaticPrime kann man, wenn ich mich recht erinnere, einfach mal in der "Raubkopie" ersetzen und schon isses fertig. Muss man halt auch etwas aufpassen. Man kann auch einfach sich vor OpenSSL hängen, dann hilft das schöne Obfuscating der Keys auch nichts...Hab mich aber länger nicht mit beschäftigt.
    Wenn ein Nutzer dann aber die Lizenzdatei weitergeben will steht ja sein Name drin, kann man also Rückverfolgen. Wer das nur an seine Freunde weitergibt, da kann man eher nichts tun, und sollte es auch nicht, weil es ja auch einfach der zweite Rechner des legitimen Benutzers sein könnte.
    C++
  • hertzchen schrieb:

    Ich habe mir die Mühe erst gar nicht gemacht da groß was zu schreiben - einfache Abfrage und fertig damit die Apps nicht wirklich von jedem verschickt werden können und wer meint er muss, der tut doch eh - egal was du anstellst…

    Nach dem kurzen Rumrobben im Store bleib ich bei dem Vertriebsweg 'Entwickler-Homepage'.
    Ich werde dann zwar die Möglichkeit des zentral gesammelten Updatens nicht haben, aber irgendwas ist ja immer.
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • zerm schrieb:

    Peter Maurer schrieb:

    zerm schrieb:

    Tobse001 schrieb:

    Eine einfache E-Mail + Name --> Seriennummer Generierung, die Joe Average davon abhält das Programm an tausend Andere weiterzugeben reicht völlig.
    Beispielsweise einfache public key Kryptographie und ein 1024bit Key als extra Datei an den legitimen Anwender gesendet. Für beide Seiten ist der Aufwand nur minimal größer, aber Joe Average muss sich dann zum Raubkopieren entweder einen Patch oder die vollständig gecrackte Version ziehen.
    Das nennt sich im einfachsten Fall z.B. AquaticPrime, das wir auch tatsächlich verwenden. Aber wie verhinderst Du, dass freiheitsliebende Nutzer anstatt der Seriennummer einfach gleich die ganze Lizenzdatei weitergeben? Da lässt sich beliebig aufrüsten, indem man dann z.B. noch zusätzlich mit Online-Aktivierung anfangen könnte, worauf meinem Freund, dem Cracker, aber garantiert auch wieder etwas einfällt.

    Zwischenzeitlich muss man sich eben doch irgendwann fragen, wie sehr man seine legitimen Kunden eigentlich ärgern will.

    Naja, AquaticPrime kann man, wenn ich mich recht erinnere, einfach mal in der "Raubkopie" ersetzen und schon isses fertig. Muss man halt auch etwas aufpassen. Man kann auch einfach sich vor OpenSSL hängen, dann hilft das schöne Obfuscating der Keys auch nichts...Hab mich aber länger nicht mit beschäftigt.
    Wenn ein Nutzer dann aber die Lizenzdatei weitergeben will steht ja sein Name drin, kann man also Rückverfolgen. Wer das nur an seine Freunde weitergibt, da kann man eher nichts tun, und sollte es auch nicht, weil es ja auch einfach der zweite Rechner des legitimen Benutzers sein könnte.

    Wenn man AquaticPrime als Framework einsetzt, dann macht dies natürlich wenig Sinn. Ich habe den AquaticPrime Source bei Tables direkt ins Programm compiliert.

    Klar kann ein Cracker dann immer noch eine gecrackte Version des Programms erstellen, aber dies lässt sich wohl nur, wenn überhaupt, mit sehr hohem Aufwand verhindern.