Zitat von
runger:
Das von mir gelieferte Codebeispiel benutzt einen Treiber. ( Hatte ich beschrieben ).
Es wird also der ganz normale Weg durch Windows genommen, so wie das der Printer und alle anderen Geräte auch tun. Der Treiber wird beim ersten Versuch die IO.dll zu benutzen installiert.
Das hier ist kein Peek oder Poke wie du es vielleicht von Basic gewohnt bist.
Irrtum! Dank des Treibers ist es wie Poke oder Peek. Auch wenn eine Schicht (Transition deines Calls von U-Mode in K-Mode) dazwischen existiert.
Der Treiber wird nur installiert, wenn der Benutzer Admin ist - was dir zu denken geben sollte. Admin ist die höchste Instanz im System und darf prinzipiell mehr als SYSTEM (nämlich Netzwerkzugriffe) - und kann sich eben auch SYSTEM-Rechte verschaffen.
Und nein, dies ist nicht der Weg den Drucker und andere Geräte gehen. Als wertvolle Informationsquelle darf ich dir das
DDK andienen.
Zitat von
NicoDE:
Es spricht nichts gegen die Verwendung eines Treibers. Es gibt erst dadurch ein 'Problem', wenn die Nutzung des Treiber keiner Einschränkung unterliegt.
Z.B. ACLs und andere Mechanismen.
Zitat von
NicoDE:
In diesem Falle wird es sich wohl um einen generischen Treiber handeln, der Zugriff auf alle Ports erlaubt.
Soll ich IDA mal anwerfen? Habe hier noch keine anderen Treiber gesehen als generische. Und einige Threads zu diesem Thema gibt's schon.
Zitat von
NicoDE:
Zwar wird dadurch sein Problem auf eine sehr allgemeine Weise gelöst, aber andere Software wird nicht daran gehindert unbeabsichtigte Dinge mit dem System anzustellen.
Nicht nur
die Software (also die unseres Fragestellers), sondern jegliche Software die mal eben probiert ob ein generischer Porttreiber installiert ist. Soviele gibt's nicht und die meisten "basieren auf" (lies: "sind Plagiate von") dem generischen Porttreiber aus dem
DDK. Das heißt in vielen Fällen, daß man mal die entsprechenden IOCTLs testen kann *grins*
Zitat von
NicoDE:
Sicherheit ist eine Frage des Vertrauens. Wenn er damit leben kann, dass jede Software auf seinem System potentiell alle Ports verwenden kann, dann ist dies seine Entscheidung. Ich persönlich würde dieses Risiko auf Dauer nicht eingehen (und schon gar nicht für Produktionssysteme).
Pah, Sicherheit?
Übrigens wäre dies ein Grund für große Firmen den Einsatz solcher Software abzulehnen. Insofern natürlich vom Autor ehrlich angegeben wird, wo der Haken liegt.