Schutz der Software
Geizhals » Forum » Programmierung » Schutz der Software (41 Beiträge, 872 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
...
Re(3): Schutz der Software
20.07.2011, 18:06:08
Dass die Anwendung auf dem Server rennt, ist ja eh eine gute Idee..
Wie wäre es, wenn du brav eine Multi-tier-Gschicht draus machst ? Wäre es so schwierig, wenn die GUI auf dem Client rennt und nur die Business Logic am Server ? Die GUI kann er dann kopieren, nur nutzt das niemand was |-D.



sollte verhindern das die Software vom Server kopiert wird.

Ich kenn jetzt die Windows-Infrastruktur zu wenig... Aber RDP ist doch so ähnlich wie VNC+Sound, oder ? Dann können eh keine Files übertragen werden, oder ? Wenn es schon Windows sein muss: Kann man den Server nicht konfigurieren, dass manche Benutzer im Kiosk-Mode oder so auf dem Server arbeiten, also nur die App nutzen können und sonst nichts haben ?


ich liefere den Source nicht aus. es sollte jedoch mehr Aufwand sein am Programm Reverse Engineering / Decompilierung zu betreiben wenn das Programm doch kopiert werden kann als selbst die Forschung zu betreiben.

Reverse Engineering/Decompilieren willst ausschließen ? Bei C-Sourcen ? Aus
mir geht es nicht darum den weltbesten hacker da auszusperren

las ich heraus, dass es eh nur um normale User geht, die du aussperren willst... Wohl falsch.

Nun denn, dann empfehle ich, den generierten Assembler-Code zu obfuscaten bzw. seeehr ungewöhnliche Konstrukte zu verwenden (zB illegal Ops mit Logik in Exception Handlern)...  Oder eben deine Programmiersprachenliste zu erweitern oder andere OS zu verwenden.

Im Endeffekt bleibe ich dabei, dass alles aus der GUI am Server laufen muss - und letztere am Client.




Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
........
Re(8): Schutz der Software
Fly
21.07.2011, 08:59:47
Mmhmmm... klingt ja toll. Vor allem nach viel Pseudosicherheit.

Erste Frage: Wer ist Dein Angreifer? Der berechtigte Benutzer der Hardware oder ein Eindringling? Falls zweiteres ist der Terz nicht notwendig, da ein Zugriff auf die Hardware ohnehin nicht verfügbar ist. Falls ersteres hast Du immer noch das Kernproblem: Irgendwo innerhalb des ganzen Systems kommt eine Schnittstelle zwischen Computer und Sicherheitsgerät. Und spätestens dort kann jemand der unbeschränkten Zugriff auf die Hardware hat das Signal abgreifen. Und standardisiert muss das Ganze auch noch sein weil die Hardware für den Rechner selbst willst ja hoffentlich nicht selbst bauen. Da kannst Du dann Fehlleitungen und Verschlüsselung innerhalb der secure hardware haben wie du lustig bist, es erhöht die Sicherheit des Gesamtsystems nicht. Was nützt mir die Stahltüre mit unknackbarem Sicherheitsschloß wenn die Wände aus Papier sind und ich sie einfach aus der Wand stemme?

Und dieses weakest Link wirst auch nicht los, außer Du baust das Ganze wirklich monolitisch zusammen und hast keine wie auch immer geartete Standardschnittstelle im System. No viel Spass.

Die Lösung dafür sehe ich darin, das Signal nutzlos zu machen ohne zugehörige "korrekte" Frage. Das ist im Endeffekt eine mathematische Lösung des Problems. Und diese Antwort "kennt" nur der SecEEProm auf dem Dongle. Den Key auszulesen erfordert den Chip zu zerlegen und per Elektronenmikroskop die gesetzten/gelöschten Leiterbahnen zu untersuchen. Viel Erfolg, wer das kann der möge es sich verdient haben das Ganze zu kopieren. Weil "einfach" das Signal zwischen EEProm und MC abzugreifen nützt ebenfalls nichts. Du kennst dann die Antwort auf eine Frage. Von 2^512 möglichen. Natürlich kann man jetzt mit viel Zeit, viel Geduld und viel Speicherplatz alle auslesen. Wer sich die Hack'n antut und es noch in diesem Jahrhundert schafft auch nur einen Bruchteil der möglichen Antworten zu erhalten, der möge es sich auch verdient haben.

Kleiner Edit noch, weil ich's grad gesehen hab das Wichtigste nicht gesagt zu haben: Der EEProm kann ein wenig mehr als "nur" Speicher zu sein, er kann im Endeffekt ver- und entschlüsseln, enthält also auch ein wenig Logik. Was das Ding tatsächlich tut ist, einen gegebenen Input gegen einen gespeicherten Key zu prüfen (Signaturprüfung) und gegen einen zweiten zu entschlüsseln. Passt die Sig nicht, kommt auf der anderen Seite Garbage raus. Und jede Antwort, egal welche, benötigt exakt die gleiche Anzahl an Taktzyklen.

Solltest Du nun trotzdem noch einen Weg kennen das zu knacken, bitte ich um Info. Schneier's Law gilt schließlich auch für mich.

________________________________________________________________________
There's a typo in the Bible.
It should read "The geek shall inherit the earth".
21.07.2011, 09:15 Uhr - Editiert von Fly, alte Version: hier
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung