Und schon wieder ich... =)
Ist es möglich, herauszufinden, welcher Benutzer gerade auf einem PC, der sich im Netzwerk befindet, eingeloggt ist? Alle PCs sind in einer Domäne und sind Windows-Rechner... und ich habe die IP-Adresse, den Rechnernamen und die MAC-Adresse... kriegt man das hin?!
Und wenn ja.. 8) ... gibt es Klassen dazu?! Ich finde nix zu dieser Thematik... vll. liegt es auch daran, dass es gar nicht geht?! 😁
WMI ?
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Ich glaube nicht, dass das möglich sein dürfte. Denn wenn es realisierbar wäre, wäre das eine ziemliche Sicherheitslücke im Windowssystem, wenn man die Systemvariable USERNAME auslesen könnte.
Die SystemVariable USERNAME kannst Du selbstverständlich auslesen 🙂
string strUser=Environment.UserName;
Wo da allerdings ein SecurityLeak sein soll musste mir erklären
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Klar kannst du die Variable auslesen, lokal ist das auch gar kein Sicherheitsrisiko. 🙂
Wenn du dies aber per remote oder ähnlichen machst, sprich übers Netzwerk so wie er es hier vorhat, ist das doch ein deutliches Leak. Welches ja zb. auch in Java nicht durchgeführt wird.
Lokal ist das kein Problem. Aber übers Netz von einem fremden Rechner darf das nicht gehen.
Original von schmalhans
Wenn du dies aber per remote oder ähnlichen machst, sprich übers Netzwerk so wie er es hier vorhat, ist das doch ein deutliches Leak. Welches ja zb. auch in Java nicht durchgeführt wird.Lokal ist das kein Problem. Aber übers Netz von einem fremden Rechner darf das nicht gehen.
Remote wird man den Account sicher auslesen können (wenn man dazu berechtigt ist).... ohne Berechtigung darf es nicht gehen, da stimme ich dir zu.
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Genau das meinte ich. Wusste wir sind uns einig. 🙂
Obwohl ich sagen muss, dass es selbst wenn es über Berechtigungen abläuft nicht wirklich sicher ist. Also Fan davon bin ich nicht.
Trotzdem würde es mich interessieren wie man das realisiert. Weißt du da zufällig ne Quelle?
WMI remote wäre sicher mal die erste Anlaufstelle
Dann wären auch API-Funktionen mit WNet**** eine Suche Wert und und und...
Man muss hier klar unterscheiden: Wenn ich als Domain-Admin Info's brauche dann müssen diese auslesbar sein.... dem Betreiber eines WebServers dürfen solche Angaben jedoch nicht in die Hände fallen (WebBrowser-JavaScript und so)... wobei nur der UserName alleine ist ja auch kein sooo grosses Leak
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Hab mal an der selben Frage ziemlich lang gesessen und kam (mit VB) zu keinem Ergebnis. Bisher hat nur der weg funktioniert ein Client Program auf allen rechnern in der Domäne auszuführen, daß den Username verschickt wenn man anfragt...
Nachtwinds Ansatz, ging mir auch durch den Kopf.
Der Username selbst ist keine soooo große Lücke. 🙂
Aber ich denke wenn man den mal hat und da das PW von ca. 85% der deutschen Büroangestellten "geheim" ist, ist es dann nicht mehr so schwer. 😉
Ne, ne, du hast schon recht, das es ein D-Admin lesen können sollte. Finde nur solche Remotes immer recht heikl. Bin nich der größte Fan von.
Also "Fan" bin ich auch nicht von sowas... 😉
Aber hier geht es speziell um ein Programm, was auch nur die Leute bekommen, die ohnehin DomänenAdmins sind... also soll auf keinen Webserver laufen und auch keine "normalen" User im Netz bekommen.
Ich würde gerne auslesen können, welcher User gerade auf einer Maschine arbeitet, welches OS installiert ist, vll. auch noch das System an sich....
... und wenn jemand Ideen hat, nur her damit... denn soooo viel weiter bin ich noch nicht... 8)
Schon gesehen ?
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Nee, noch nicht 🙂 👍
Danke, du bist ein Schatz! =)
... wenn ich damit herumprobiert habe, werde ich mal meine Erfahrungen hier schildern...
Wenn der Remote-Rechner in einer Domäne ist... wieso kann ich mich dann nicht als lokaler Admin anmelden? Wenn ich die WMI-Funktionen anspreche, MUSS ich Domänen-Admin sein.... aber die Begründung leuchtet mir nicht so ganz ein, also warum es nicht auch ein lokaler Admin "tut"... weiß jemand eine Erklärung über diese Sicherheitslogik?!
ganz einfach:
domänenuser und lokale benutzer sind ein grosser unterschied.
als lokaler admin kannst du auslesen wer sich lokal angemeldet hat.
aber nochmal zum thema auslesen.
das .NET framework hat ja paar nette assemblies um mit der ADS zu kommunizieren (System.DirectoryServices). ich denke es muss einen weg geben direkt beim domänenserver anzufragen wer an welchem rechner eingelogt ist. allerdings geht das mit 100%ger sicherheit auch nur als domänenadmin.
Original von schnecke
Danke, du bist ein Schatz! =)
Wow schon wieder Dein Schatz 👍
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Hallo... ich nochmal 🙂
Also das mit den Systeminfos läuft soweit, der Link von Programmierhans war gold wert... einfach DLL einbinden, die man auf der Seite runterladen kann und schon geht's los. 🙂
Aber nun noch was anderes dazu: Kann ich auch irgendwie feststellen, welche Programme auf einem Remoterechner installiert sind?! Alle installierten Programme stehen ja in dieser schönen Software-Liste in der Systemsteuerung... kommt man da irgendwie ran? Oder über die Registry?! 🤔
Hallo Schnecke!
Ich weiß nicht ob das geht, vielleicht kann man aber das "Programm" "appwiz.cpl" über Remote laufen lassen?
Lokal kann man so vorgehen: Start -> ausführen -> "appwiz.cpl" eingeben 😉
Ciao
Norman-Timo
A: “Wie ist denn das Wetter bei euch?”
B: “Caps Lock.”
A: “Hä?”
B: “Na ja, Shift ohne Ende!”
Original von norman_timo
"appwiz.cpl"
Ja, der Aufruf ist schon mal gut 🙂
Aber das startet ja die Ansicht für die Software-Übersicht... ich hätte am Liebsten einfach nur eine Textausgabe, also kein ganzes Fenster... sondern sowas wie:
string[] installedPrograms = GetProgrames("192.168.1.1");
... das ist natürlich Wunschdenken, denn ich könnte mir nicht vorstellen, dass es möglich ist, einfach so ein Programm auf einem Remoterechner zu starten... ich könnte den ganzen Rechner ja sonst hacken... 😉
Man könnte bestimmt auf einem Server einen Thread laufenlassen, der Client-Anfragen entgegegennimmt - aber ich habe keinen Server zur Verfügung... 🙁
hm ich weiss ja nicht ob dir das was hilft, aber vielleicht reicht es ja schon wenn du die msinfo32.exe aufrufst
*edit*
versuch mal rundll-Aufrufe
Signatur:
Die Signatur wird unter Ihren Beiträgen dargestellt.
😁 😮 ?( 8) 😭 8o :] 🙁 =) X( 🙂 😜 😉 :rolleyes: 👶 :evil: 👅
Smilies find ich doof =]
Was meinst du mit rundll-Befehlen?!
Und wie kann ich das auf einem Remoterechner ausführen?!
Dein bisheriger Code läuft doch schon mit WMI
Musst das Teil nur noch erweitern dass per WMI noch mehr ausgelesen wird
Referenz der Möglichkeiten (was es in WMI gibt) http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/installed_applications_classes.asp
Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...
Ja, er läuft schon per WMI 🙂... ich wollte nur ne andere Möglichkeit haben für das OS, denn eine WMI-Anfrage auf einem Linux-Server verläuft natürlich ins Leere...
... und die installierten Programme kann ich mir per WMI nicht anzeigen lassen, zumindest habe ich dafür keine Auslese-Funktion gefunden...