Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse (https://www.delphipraxis.net/195917-kopierschutz-anwendung-nicht-ueber-teamviewer-und-aehnliche-tools-bedienen-lasse.html)

Bornholdt 6. Apr 2018 18:39

Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Hallo zusammen,

folgende Situation: Software soll nur auf den Rechnern benutzt werden können, die eine Lizenz erworben haben. Wenn von anderen Rechnern zugegriffen werden soll soll die Bedienung der Software nicht funktionieren.


Per Zufall/Fehlkonfiguration (keine Ahnung warum) habe ich bei einem Rechner auf den ich mittels Teamviewer zugreife nicht die Möglichkeit eine bestimmte Anwendung zu bedienen. Ich kann sie starten, aber Maus- oder Tastatureingaben werden nicht entgegengenommen. Das brachte mich auf oben beschriebene Idee.

Hat jemand Vorstellungen, wie man das programmieren könnte? Teamviewer soll und kann ruhig gestartet werden für andere Aufgaben, das kann und will ich dem Anwender nicht verbieten, aber ich möchte unterbinden, das von X Rechnern auf die Software, für die nur 1 Lizenz gekauft wurde, zugegriffen wird im Sinne von Bedienung.

VG

tggmx 6. Apr 2018 19:57

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Hallo Bornholdt,

ich denke so wie du es dir vorstellst wird es schwierig werden. Die Sperre kann wohl nur im TV eingestellt werden und hier wirst du ja nicht für jeden Kunden deine TV-Konfiguration zwingen vorschreiben können. Fenster sind im TV z.B. auch dann gesperrt wenn eine Anwendung unter einer anderen Benutzerberechtigung gestartet wird ("als Administrator ausführen").
Bei einer Teamviewer-Einwahl kann ja auch nur ein User aktiv arbeiten. Das stellt also bzgl. deiner Lizenz eigentlich kein Problem dar. Wenn die Lizenz an den Rechner gebunden ist hast du allerdings möglicherweise ein Problem bei Remote-Desktop Zugriffen. Terminal-Sessions sollte man aber mit Delphi erkennen können.

Der schöne Günther 6. Apr 2018 20:00

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Nur als Idee: Du kannst mit einem globalen Maus/Tastatur-Hook unter Windows feststellen ob ein Input-Ereignis künstlich von einem Prozess injiziert wurde oder aus einem Hardware-Treiber kommt.


Siehe:
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

und

https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx


PS: Remote Desktop, VNC und was auch immer es noch alles gibt. Ich würde mich ernsthaft fragen ob das den Aufwand wert ist. Wenn jemand so ein Sparbrötchen ist und sich ernsthaft den Komfortverlust antut den Rechner über TeamViewer zu bedienen kauft wahrscheinlich sowieso keine 2. Lizenz.

Bornholdt 6. Apr 2018 20:11

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
@tggmx: Terminal Sessions werden identifiziert anhand des Rechnernamens und im Bedarfsfall unterbunden.

@Der schöne Günther: Problem ist das sich ziemlich viele einfach mal so unlizensiert TV aufspielen und dann andauernd auf den rechner zugreifen (von unterschiedlichen standorten, sogar unterschiedliche personen zeitversetzt) und alle munter die anwendung benutzen.

hab das schon mal erlebt das nur 2 lizenzen gekauft wurden und insg. zeit- und ortsversetzt insg. 8 Personen die software bedient haben von 16 endgeräten...

und die kennen kein RDP und finden TV dann super (also da ist nichts von wegen "antuen" sondern die sind begeistert?!? ;) )

Der schöne Günther 6. Apr 2018 21:26

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Wow, das ist schon hart. Ich glaube anscheinend zu sehr an das gute im Menschen. Software lässt sich halt meist unkomplizierter stehlen als eine Dose Bohnen aus dem Supermarkt.


Nicht dass ich schonmal Bohnen geklaut hätte

juergen 6. Apr 2018 23:18

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Hallo,

vllt. kannst du deinem Programm ein Admin-Manifest verpassen?
Je nach Benutzerechten wird der TeamViewer dann gesperrt.

Luckie 7. Apr 2018 03:11

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Schlechte Idee. Ein Programm sollte immer mit den geringst möglichen Rechten laufen.
Weitere Nachteile:
  • Mehrere Benutzer überschreiben ihren Einstellungen
  • Daten landen standardmäßig im Profilordern vom Administrator. Der Benutzer käme nicht an Die Daten dran.
  • Der Benutzer muss das Administratorpasswort kennen. Keine gute Idee.

harfes 7. Apr 2018 06:46

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Der Teamviewer kann effektiv nur über einen Proxy unterbunden werden - dann geht er aber gar nicht mehr! Auch schlecht, oder? Und dann gibt es da ja noch Konkurrenten zu TV, die ja theoretisch auch alle geblockt werden müsssten...ich denke, das ist der falsche Weg.

Das war und ist ein "heisses Eisen" mit dem wohl alle zu kämpfen haben, aber: es können ja nicht mehrere Benutzer gleichzeitig mit dem Programm arbeiten (zumal das Mehrfachstarten ja leicht zu unterbinden ist), sondern nur "hintereinander". Das schränkt die massive Nutzung zumindest etwas ein...

Hartmut

samso 7. Apr 2018 07:43

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Der Kaspersky-Virenscanner hat diese Funktion bei der Gui eingebaut (d.h. ich kann den Virenscanner nicht bedienen, wenn ich per VNC auf dem Gerät bin - äußerst nervig, wenn man aus Versehen das Fenster aufgemacht hat und es dann nicht mehr schließen kann). Prinzipiell ist es also möglich. Aber wie Kaspersky das macht - keine Ahnung.

blawen 7. Apr 2018 08:46

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Zitat:

Zitat von harfes (Beitrag 1398357)
Das war und ist ein "heisses Eisen" mit dem wohl alle zu kämpfen haben, aber: es können ja nicht mehrere Benutzer gleichzeitig mit dem Programm arbeiten (zumal das Mehrfachstarten ja leicht zu unterbinden ist), sondern nur "hintereinander". Das schränkt die massive Nutzung zumindest etwas ein...

Wenn die SW auf einem Notebook aufgespielt wird, kann dieses nacheinander auch von mehreren Benutzern eingesetzt werden. Du müsstest schon gute Argumente haben, dies unterbinden zu wollen.
Selber setze ich den TV auch für Wartungen ein, stell Dir vor, ich könnte dies nicht mehr und müsste vor Ort anwesend sein...

timog 7. Apr 2018 08:59

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Falls nur TeamViewer ausgeschlossen werden soll, kann man in den TeamViewer Logs oder im Windows Event Log schauen, ob man passende Einträge findet, die den Verbindungsaufbau bestätigen. Das ist natürlich kein genereller oder ernst zu nehmender Lösungsansatz.

StarMoney schaltet bei TeamViewer Verbindungen z.B. das Fenster innerhalb der TeamViewer Sitzung schwarz, und der Benutzer am Rechner muss erst per ShortCut die Anzeige freigeben (ein gar nicht mal so doofes Privacy Feature). Eine Erkennung geht also irgendwie (wie Der schöne Günther schon meinte z.B. über Tastatur-Hooks o.ä.), aber ob das nicht in einen Kampf gegen Windmühlen endet...?

Muss das Problem wirklich technisch gelöst werden? Wie ist in den Lizenzbedingungen denn ein "Benutzer" definiert (Stichwort: Named-User pro Standort oder Concurrent User)? Sobald "man" Kenntnis von einem Lizenzverstoß hat, kann man ja das Gespräch mit dem Kunden suchen und sagen, "Hey, das geht aber so nicht, vor dem Kauf hast Du etwas anderes angegeben". Klar, das funktioniert nur bedingt und man muss es erst mal mitbekommen und das kann auch ein unangenehmes Gespräch sein, aber irgendwie sollte es für beide Seiten fair bleiben...

mensch72 7. Apr 2018 10:05

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
..."TeamViewer uses a display mirror driver to accelerate remote viewing of the screen. Mirror drivers mirror the drawing operations of the normal screen, however, because your 3D app uses a hardware accelerated drawing surface, it is not mirrored to the mirror driver."...


Wir setzten in unserer GUI zur Realtimedarstellung von Finanzdaten intern auf OPENGL und streamen das via eigenem VLC kompatiblen Codec und internen VLC-Clients jeweils in unsere GUI-Fenster... so haben wir zumindest seit Jahren vor TeamViewer und VNC Ruhe.
Sonstig noch RemoteDesktopTop zu erkennen und blockieren ist ja einfach und allseits bekannt.

Zacherl 7. Apr 2018 10:34

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Soweit ich weiß sind die Mirror Driver seit Win7 deprecated (funktionieren meine ich sogar komplett nicht mehr). Stattdessen wurde die Desktop Duplication API eingeführt. Die könnte man auf jeden Fall hooken, um das eigene Fenster auszublenden. Nur die Inputs zu sperren dürfte schwer werden. Spätestens, wenn die RC Software ein virtuelles Eingabegerät als „richtige“ Hardware registriert. Dann hast du keine Möglichkeit mehr zu erkennen, ob es eine simulierte Eingabe ist, oder nicht.

KodeZwerg 7. Apr 2018 10:37

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Ich kenne TV nicht so intern, aber könnte man nicht prüfen ob sein Eigenes Programm ein Handle mit einem Fremdprozess hat?

Bornholdt 7. Apr 2018 11:00

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Anbei mehr Infos zum kommentar von samso, dort bezieht man sich aber nicht am VNC sondern auf TV. umso besser wenns gleich mit beiden tools (oder im idealfall generisch mit allen geht

https://support.kaspersky.com/de/5701

Es muss also gehen. Frage ist was Best Practice wär...

@timog: Selbst wenn man das in die Lizenzbedingungen/AGBs und ähnliches schreibt. Interessiert doch in der Regel keinen.

Der Ansatz von Starmoney wär das Optimum: Wenn man selber mittels dieser Tools jemanden hilft sollte die sperre per Shortcut oder ähnlichem ausschaltbar sein

Neumann 7. Apr 2018 13:27

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Das Problem bei VNC sind die Rechte. Selbst der Aufruf vom Taskmanager oder Gerätemanager bei Windows 10 führen dazu, dass sich der Rechner nicht mehr über die Fernsteuerung bedienen lässt.

Man kann dann nur noch sehen was passiert. Genauso wenn UAC-Meldungen kommen. Vielleicht ergibt sich daraus ja eine Möglichkeit. Beim Teamviever gibt es diese Einschränkungen nicht.

Bornholdt 7. Apr 2018 14:35

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Liste der Anhänge anzeigen (Anzahl: 2)
hab mal mit starmoney getestet.
ist wie von timog beschrieben...

fast alles wird geschwärzt dargestellt, ganz wenig der GUI kommt "durch". (Siehe Screenshots) durch eine tastenkombination kommt man erst an die eigentliche anwedung über TV, VNC etc. "ran" -> (Druck Taste, dann soll der Benutzer der vor dem Rechner sitzt die Rückfrage bestätigen, ob man SCREENSHOTS zulassen möchte und wenn der Konsolen-Benutzer da zustimmt geht auch teamviewer und co.) ist also letztlich eine "Screenshot Verhinder Funktion" die aber auch verhindert mit fernwartungstools zu steuern. Wenn keiner vor dem Rechner sitzt kann man sich behelfen indem man selber das geschwärzte Rückfrage Fenster ob Screenshots erlaubt werden sollen steuert (Pfeil nach Links damit wird der "Ja" Button der Rückfrage aktiv und dann Enter).

https://www.starmoney.de/forum/viewt...38556&start=15

Frage ist wie wie man es selber machen kann mit delphi selbst screenshots zu verhindern -> das wär dann scheinbar auch gleich der ansatz fernzugriff "zu verhindern". vielleicht hilft diese info noch bei der lösungsfindung. interessant ist auch, das nicht ALLES geschwärzt wird sondern ein bisschen was "durchkommt"...jedenfalls interessante diskussion und schon interessante rückmeldungen - thx )

-> https://promon.co/products/applicati...ction-desktop/ -> drittapplikationen kommen nicht in frage - das wird in starmoney benutzt

MyRealName 7. Apr 2018 16:46

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Ich verstehe nicht, warum man es nicht per TeamViewer benutzen lassen soll. Es muss doch eh eine Lizenz für den Rechner bestehen, dazu kommt, dass nicht 2 Leute die gleiche Session bedienen können, weder mit TeamViewer noch mit RemoteDesktop. Von daher sehe ich selbst da erstmal keinen Grund, den Zugriff zu beschränken, da es nicht von mehreren Personen zur gleichen Zeit genutzt werden kann.

Technisch gesehen läuft das Programm ja auf dem Rechner, für welchen es lizensiert ist. Dass er "kreativ" ist in der Nutzung bricht Deinen Nutzungsvertrag sicherlich nicht. Klar ist es unschön, weil man denkt, dass man sicherlich an 8 Lizenzen mehr verdient als an 2.

Bornholdt 7. Apr 2018 17:06

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
@Myrealname:

Ohne das wir abschweifen von der eigentlichen technischen Frage: kommt auf den Nutzervertrag an. Ist gang und gebe das das Softwarehersteller nicht wollen. Bei Starmoney steht bspw. in den lizensierungsverträgen

"Der Lizenznehmer darf das Produkt zur selben Zeit nur auf einen Computer oder bei einer Mehrplatzlizenz auf der dort erlaubten Anzahl von Computern einsetzen. Eine physikalische Übertragung des Produktes ist zulässig, jedoch keinesfalls eine elektronische, etwa innerhalb eines Netzwerkes."

VG

MyRealName 7. Apr 2018 18:55

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Zitat:

Zitat von Bornholdt (Beitrag 1398416)
@Myrealname:

Ohne das wir abschweifen von der eigentlichen technischen Frage: kommt auf den Nutzervertrag an. Ist gang und gebe das das Softwarehersteller nicht wollen. Bei Starmoney steht bspw. in den lizensierungsverträgen

"Der Lizenznehmer darf das Produkt zur selben Zeit nur auf einen Computer oder bei einer Mehrplatzlizenz auf der dort erlaubten Anzahl von Computern einsetzen. Eine physikalische Übertragung des Produktes ist zulässig, jedoch keinesfalls eine elektronische, etwa innerhalb eines Netzwerkes."

VG

Wenn ich mit TeamViewer mich auf einem Remotehost (auf welchem Dein Produkt installiert ist) einlogge, dann läuft das Programm auf diesem Rechner und nicht auf dem, wo Du dran sitzt. Da man sich aber nur 1x mit TeamViewer an diese Session verbinden kann, die Leute also das Produkt nacheinander verwenden, aber immer auf demselben Rechner, dann ist das laut den zitierten Lizenzbestimmungen doch erlaubt. Teamviewer überträgt das programm ja nicht, sondern nur den Bildschirm, das prgramm läuft physikalisch auf der CPU und im Speicher des Remotehosts, wo die Lizenz ist.

Bornholdt 7. Apr 2018 19:54

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Auslegungssache. Vermutlich hast Du recht in diesem Fall. Aber was meinen Sie denn dann mit elektronischer Übertragung deiner meinung nach? Und warum blenden Sie die Anwendung aus?


Zum Glück kann jeder Softwarehersteller selber definieren wie seine Lizenzbedingungen aussehen und es dann eindeutiger Formulieren :)

Und wenn der möchte und festhält, das - ich drück es noch präziser aus - NUR mittels der Konsole eine Anwendung bedienbar ist hat er das Recht dazu. Wie tggm ist dem 2ten Post des Threads schon gesagt hat: Die Software soll nur von dem phyischem Rechner bedient werden ortsgebunden (und am liebsten auch Personengebunden - leider kann man das noch nicht kontrollieren auch wenns viele Hersteller hinterlegen hält sich keiner dran). Vielleicht kommt ja bald Iriserkennung haha

Ich wage es auch mal zu bezweifeln, ob es wirklich "fair use" ist wenn man wie eingangs beschrieben nur 2 Lizenzen kaufe und damit dann 6 Personen arbeiten auf insg. 16 Endgeräten.

Der Lizenznehmer muss die Anwendung ja nicht kaufen.

mensch72 7. Apr 2018 20:02

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
..."Da man sich aber nur 1x mit TeamViewer an diese Session verbinden kann, die Leute also das Produkt nacheinander verwenden, aber immer auf demselben Rechner, dann ist das laut den zitierten Lizenzbestimmungen doch erlaubt."...

!NEIN!, denn z.B.:
1. Teamviewer erlaubt auch mehrere parallele Verbindungen auf einen Rechner, somit wäre/ist da kein SingleUser(View) mehr zu garantieren
2. wir arbeiten mit großen Datenmengen welche per externer HW-Lizenz genau an ein System gebunden sind. Proxy/Multiplex schießt der DB-Provider explizit aus
3. wir arbeiten mit realtime Finanzdaten und kosten regional unterschiedlich, auch das sind Proxy/Multiplex seitens des Datenprovieders und der Rechteinhaber ausgeschlossen

Aber wer es böswillig und kreativ drauf anlegt, umgeht auch unsere VLC-Codec basierte oder eine Starmoney artige (TV)Sperre... einfach eine Webcam auf den Monitor gerichtet und per USB einen HDI-Mouse/Keyboardemulator angeschlossen... schon können via des anderen Systems Remote beliebig viele sehen was los ist und auch unkontrolliert drauf zugreifen... wir erkennen sowas an bewussten leichten Differenzen unserer optischen Datenausgabe.
Per Auge fällt das niemanden auf, aber wir haben absichtlich optische unauffällige Wasserzeichen in unserer GUI, wenn jemand nur über unsere "Anzeigewerte" extern wieder etwas bei uns einspeist oder woanders einspeist erlebt er sein blaues Wunder.

97% der Kunden ist sowas völlig egal, 2% der Kunden wollen es genau wissen was wir "rein optisch" modifizieren und nicken es ab. 1% "potenzieller"Kunden lehnt unser Verfahren und somit eine weitere Zusammenarbeit mit uns ab.


Wir müssen schlicht unsere Realtimedaten zukaufen, je sicherer wir diese schützen und kontrollieren, desto billiger bekommen wir die.
Ich kann daher 100% dem Wunsch des TE zustimmen, dass seine Software eben wirklich nur auf genau einem PC ausgeführt und LOKAL BENUTZT wird:)

himitsu 7. Apr 2018 21:52

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Zitat:

Zitat von mensch72 (Beitrag 1398438)
!NEIN!, denn z.B.:
1. Teamviewer erlaubt auch mehrere parallele Verbindungen auf einen Rechner, somit wäre/ist da kein SingleUser(View) mehr zu garantieren

Aber das Programm kann dennoch nur einmal gleichzeitig benutzt werden, egal wieviele zugucken.

Und was ist bitte der Unterschied, ob jemand von entfernt zuguckt
oder ob zwei vor dem PC sitzen? Ist das denn auch verboten und wie prüft ihr das? Gewichtssensoren am Stuhl, heimliches anzapfen der Webcam, Niederfreqenzanalyse des Mikros und zählen der Herzschläge, ...

mensch72 8. Apr 2018 10:25

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
..."egal wieviele zugucken. Und was ist bitte der Unterschied, ob jemand von entfernt zuguckt"...

Zum besserem Allgemeinverständnis: Vergleichen wir es mit z.B. SKY PayTV... wenn da auf einem PC per bezahltem SKY-ABO ein Film oder ein Sportereignis live übertragen wird, findet es SKY nicht lustig, wenn man das per Teamviewer, MirrorDisplayTreiber oder WebCam selbst weiter sonstwohin verteilt.

Du hast gut erkannt, mehrere Leute vor dem Bildschirm, wo nicht jeder vom Rechteinhaber lizenziert ist die Daten realtime zu sehen oder der Nutzer im Besitz einer "Verteillizenz" ist, sind ein Verstoß gegen die Bedingungen des Datenabos und gelten schon als missbräuchliche Verbreitung... bei SKY privat OK, bei SKY ohne teuer MultiView-Abo in Kneipe schon verboten und per MultiCast in Hotels auch speziell geregelt.

Speziell bei uns ist der Unterschied, dass z.B. das "pure angucken" günstiger Börsendaten !IN REALTIME! auch wirklich pro natürliche Person direkt von&durch die DeutschenBörse lizenziert wird... wir als Softwareanbieter und Toolanbieter müssen also alles uns technisch mögliche tun, damit wir Missbrauch erschweren, sonst verstoßen wir gegen unsere Vendor-Lizenz-Auflagen.

Ich bin als Entwickler also angehalten mich bestmöglich an die Vorgaben meiner Lieferanten UND Kunden zu halten.
Ob es zum Datenschutz des Kunden zählt, das wie bei StarMoney niemand dessen Kontostand sehen kann oder es wie bei PAY-TV oder Finanzdaten um den Quellenschutz eines Rechteinhabers geht, ist mir letztendlich wurscht!


Zurück zum Thema und als Tip für den TE:
Unsere Software verhindert im Livemode bestmöglich das mehrfache Anzeigen... alternativ haben wir einen offenen (Demo)Servicemode, wo wir alles um 15..20min per internem oder externem FiFo verzögert darstellen oder verarbeiten... das ist der in unserem Umfeld übliche Weg, die harten Restriktionen abzuschwächen.
Da unsere Software eh einen Simulations/Playbackmode hat, verwenden wir eh im gesamten Programm nur unsere eigene virtuelle Uhr, so können wir ohne Livedaten am WE oder außerhalb der Arbeitszeiten jederzeit selbst beliebige historische Szenarien wiederholen. Da war ein 15..20Minuten Fifo kein sehr großer Zusatzaufwand.

Bornholdt 8. Apr 2018 13:26

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
ich fass an dieser stelle noch einmal die bisherigen kenntnisse - auch für neue threaleser zusammen:

folgende Ansätze wurde genannt:


-------------------
1. Der schöne Günther:

Nur als Idee: Du kannst mit einem globalen Maus/Tastatur-Hook unter Windows feststellen ob ein Input-Ereignis künstlich von einem Prozess injiziert wurde oder aus einem Hardware-Treiber kommt.


Siehe:
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

und

https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx
----------------------------


----------------------------
2. juergen:

vllt. kannst du deinem Programm ein Admin-Manifest verpassen?

Antwort Lucki:
Luckie
Schlechte Idee. Ein Programm sollte immer mit den geringst möglichen Rechten laufen.
Weitere Nachteile:

Mehrere Benutzer überschreiben ihren Einstellungen
Daten landen standardmäßig im Profilordern vom Administrator. Der Benutzer käme nicht an Die Daten dran.
Der Benutzer muss das Administratorpasswort kennen. Keine gute Idee.
----------------------------


-----------------------------
3. timog:
Falls nur TeamViewer ausgeschlossen werden soll, kann man in den TeamViewer Logs oder im Windows Event Log schauen, ob man passende Einträge findet, die den Verbindungsaufbau bestätigen. Das ist natürlich kein genereller oder ernst zu nehmender Lösungsansatz.
-----------------------------


-----------------------------
4. mensch72:
..."TeamViewer uses a display mirror driver to accelerate remote viewing of the screen. Mirror drivers mirror the drawing operations of the normal screen, however, because your 3D app uses a hardware accelerated drawing surface, it is not mirrored to the mirror driver."...


Wir setzten in unserer GUI zur Realtimedarstellung von Finanzdaten intern auf OPENGL und streamen das via eigenem VLC kompatiblen Codec und internen VLC-Clients jeweils in unsere GUI-Fenster... so haben wir zumindest seit Jahren vor TeamViewer und VNC Ruhe.
Sonstig noch RemoteDesktopTop zu erkennen und blockieren ist ja einfach und allseits bekannt.

Antwort zacherl:
zacherl:
Soweit ich weiß sind die Mirror Driver seit Win7 deprecated (funktionieren meine ich sogar komplett nicht mehr). Stattdessen wurde die Desktop Duplication API eingeführt. Die könnte man auf jeden Fall hooken, um das eigene Fenster auszublenden. Nur die Inputs zu sperren dürfte schwer werden. Spätestens, wenn die RC Software ein virtuelles Eingabegerät als „richtige“ Hardware registriert. Dann hast du keine Möglichkeit mehr zu erkennen, ob es eine simulierte Eingabe ist, oder nicht.
---------------------------


---------------------------
5. kodezwerg:
Ich kenne TV nicht so intern, aber könnte man nicht prüfen ob sein Eigenes Programm ein Handle mit einem Fremdprozess hat?
----------------------------

Codehunter 8. Apr 2018 20:29

AW: Kopierschutz: Anwendung nicht über Teamviewer und ähnliche Tools bedienen lasse
 
Also ich habe jetzt den Thread zweimal gelesen weil ich das Thema interessant finde. Allerdings konnte ich nirgends so eindeutig rauslesen, ob es um die unberechtigte Parallelnutzung geht in einer Art improvisiertem Terminalserver. Oder ob die verschiedenen Nutzer nacheinander das selbe Programm nutzen.

Bei Parallelnutzung gibt es ja verschiedene, recht einfache Möglichkeiten. Von einer simplen Logdatei im Ordner %PUBLIC% bis hin zur Prüfung ob mehrere Instanzen vom eigenen Programm laufen.

Du könntest auch darauf pfeifen genau zu wissen, ob tatsächlich eine Remote Session läuft. Da fallen mir ja neben Teamviewer nämlich noch eine ganze Reihe von anderen Möglichkeiten ein. Da würde mir schon reichen zu schauen ob da einschlägige Prozesse im Hintergrund laufen und dann einfach zu machen. Damit könntest du die Remote-Nutzung nacheinander unterbinden.

Muss dir aber klar sein, dass du damit jegliche Fernwartungsmöglichkeit ausschließt, also auch solche für deinen eigenen Kundensupport. Daher wäre es vllt. nicht verkehrt wenn du eine Karenzzeit vorsehen würdest, innerhalb derer eine Remote-Nutzung möglich ist (z.B. 10 Minuten)


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:07 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz