Το PsExec είναι ένα φορητό εργαλείο από τη Microsoft που σας επιτρέπει να εκτελείτε διαδικασίες εξ αποστάσεως χρησιμοποιώντας τα διαπιστευτήρια οποιουδήποτε χρήστη. Είναι λίγο σαν ένα πρόγραμμα απομακρυσμένης πρόσβασης, αλλά αντί να ελέγχεται ο υπολογιστής με ένα ποντίκι, οι εντολές αποστέλλονται μέσω της γραμμής εντολών.
Μπορείτε να χρησιμοποιήσετε το PsExec όχι μόνο για να διαχειριστείτε τις διεργασίες στον απομακρυσμένο υπολογιστή, αλλά και για να ανακατευθύνετε την έξοδο της κονσόλας μιας εφαρμογής στον τοπικό σας υπολογιστή, κάνοντάς το να φαίνεται σαν να εκτελείται τοπικά η διαδικασία.
Δεν απαιτείται λογισμικό στον απομακρυσμένο υπολογιστή για να λειτουργήσει το PsExec, αλλά υπάρχουν μερικά πράγματα που πρέπει να έχετε υπόψη σας εάν το εργαλείο δεν λειτουργεί σωστά την πρώτη φορά που το δοκιμάζετε.
Πώς να ρυθμίσετε το PsExec
Εάν το PsExec είναι φορητό και δεν χρειάζεται να αντιγραφεί στον απομακρυσμένο υπολογιστή, τι είδους εγκατάσταση χρειάζεται πραγματικά;
Το εργαλείο λειτουργεί μόνο υπό συγκεκριμένες συνθήκες. Δηλαδή, όταν η κοινή χρήση αρχείων και εκτυπωτών είναι ενεργοποιημένη τόσο στον τοπικό όσο και στον απομακρυσμένο υπολογιστή και όταν το απομακρυσμένο μηχάνημα έχει ρυθμίσει σωστά το κοινόχρηστο στοιχείο $admin για να παρέχει πρόσβαση στον φάκελο \Windows\.
Μπορείτε να ελέγξετε ξανά ότι η κοινή χρήση αρχείων και εκτύπωσης είναι ενεργοποιημένη κοιτάζοντας στις ρυθμίσεις του Τείχους προστασίας των Windows:
- Εισαγάγετε firewall.cpl στο παράθυρο διαλόγου Εκτέλεση. Ένας τρόπος για να ανοίξετε το Run είναι μέσω της συντόμευσης πληκτρολογίου WIN+R.
-
Επιλέξτε Να επιτρέπεται μια εφαρμογή ή δυνατότητα μέσω του Τείχους προστασίας των Windows από την αριστερή πλευρά του παραθύρου.
Αυτό μπορεί να διαβαστεί ως Να επιτρέπεται μια εφαρμογή ή δυνατότητα μέσω του τείχους προστασίας του Windows Defender ανάλογα με τον τρόπο ρύθμισης του υπολογιστή σας, αλλά είναι η ίδια επιλογή.
-
Βεβαιωθείτε ότι το Κοινή χρήση αρχείων και εκτυπωτή έχει ένα σημάδι επιλογής στο πλαίσιο Ιδιωτικό στα δεξιά του. Εάν δεν το κάνει, βάλτε ένα σημάδι σε αυτό το πλαίσιο και επιλέξτε OK.
Εάν δεν μπορείτε να αλλάξετε τις ρυθμίσεις του τείχους προστασίας επειδή είναι γκριζαρισμένες, επιλέξτε Αλλαγή ρυθμίσεων στο επάνω μέρος του παραθύρου.
- Μπορείτε πλέον να πραγματοποιήσετε έξοδο από οποιεσδήποτε ανοιχτές ρυθμίσεις του Τείχους προστασίας των Windows.
Με το τείχος προστασίας των Windows τώρα ρυθμισμένο σωστά για το PsExec, δεν θα έχετε πρόβλημα πρόσβασης στο κοινόχρηστο στοιχείο $admin στον απομακρυσμένο υπολογιστή, εφόσον ισχύουν τα ακόλουθα:
- Και οι δύο υπολογιστές ανήκουν στην ίδια ομάδα εργασίας
- Γνωρίζετε τον κωδικό πρόσβασης για τον λογαριασμό ενός διαχειριστή στον απομακρυσμένο υπολογιστή
Δείτε αυτό το σεμινάριο στο Wintips.org εάν χρειάζεστε βοήθεια για να κάνετε αυτά τα πράγματα ή εάν τα έχετε κάνει σωστά, αλλά αργότερα, αφού προσπαθήσετε να χρησιμοποιήσετε το PsExec όπως περιγράφεται παρακάτω, λαμβάνετε ένα σφάλμα "απαγορεύεται η πρόσβαση".
Πώς να χρησιμοποιήσετε το PsExec
Πριν χρησιμοποιήσετε το PsExec για την εκτέλεση απομακρυσμένων εντολών, πρέπει να κάνετε λήψη του προγράμματος και να τοποθετήσετε τη Γραμμή εντολών με τρόπο ώστε να μπορείτε να χρησιμοποιήσετε σωστά το εργαλείο.
Κατεβάστε και ανοίξτε το
- Κατεβάστε το PsExec στον υπολογιστή που θα εκτελεί τις απομακρυσμένες εντολές. Διατίθεται δωρεάν από τη Microsoft στο Sysinternals ως μέρος του PsTools.
-
Εξαγωγή των αρχείων από τη λήψη του PsTools.zip. Μπορείτε να το κάνετε κάνοντας δεξί κλικ στο αρχείο ZIP και επιλέγοντας Extract All. Κάθε εξαγωγή αρχείων τρίτου μέρους θα λειτουργήσει επίσης.
-
Ανοίξτε το φάκελο όπου βρίσκονται τα εξαγόμενα αρχεία και από τη γραμμή πλοήγησης στο επάνω μέρος του φακέλου, διαγράψτε ό,τι υπάρχει και πληκτρολογήστε cmd.
Ένας άλλος τρόπος για να το κάνετε αυτό, τουλάχιστον σε ορισμένες εκδόσεις των Windows, είναι να κάνετε Shift+Δεξί κλικ σε ένα κενό χώρο στο φάκελο PsTools και επιλέξτε Άνοιγμα παράθυρο εντολών εδώ.
Αυτό θα ανοίξει τη γραμμή εντολών σε αυτόν τον φάκελο, ώστε να μπορείτε να εκτελέσετε εντολές μέσω του PsExec.
- Με τη γραμμή εντολών τώρα ανοιχτή στο φάκελο που περιέχει το PsExec.exe, μπορείτε να αρχίσετε να εισάγετε εντολές στο απομακρυσμένο μηχάνημα.
Κατανόηση της Σύνταξης
Όπως κάθε εργαλείο γραμμής εντολών, το PsExec λειτουργεί μόνο όταν ακολουθείται επακριβώς η σύνταξή του. Μόλις κατανοήσετε πώς να πληκτρολογείτε εντολές με τον τρόπο που τις κατανοεί το εργαλείο, μπορείτε να ελέγξετε το πρόγραμμα από οποιαδήποτε Γραμμή εντολών.
Έτσι πρέπει να εισάγονται οι εντολές PsExec:
psexec [ υπολογιστής [, υπολογιστής2 [, …] | @file\][- u όνομα χρήστη [- p κωδικός πρόσβασης][- n s][- r όνομα υπηρεσίας][- h][- l][- s |- e][- x][- i[session][-c εκτελέσιμο [-f |-v ][-w κατάλογος][- d][- ][- a n, n
Αυτό μπορεί να φαίνεται περίπλοκο και μπερδεμένο, αλλά μην ανησυχείτε! Υπάρχουν μερικά παραδείγματα στο κάτω μέρος αυτής της σελίδας που μπορείτε να χρησιμοποιήσετε για να εξασκηθείτε.
Η παραπάνω σύνταξη χρησιμοποιείται για την εκτέλεση οποιουδήποτε από τα ακόλουθα ορίσματα εντολών PsExec:
Επιλογές εντολών PsExec | |
---|---|
Παράμετρος | Επεξήγηση |
- a | Διαχωρίστε τους επεξεργαστές στους οποίους μπορεί να εκτελεστεί η εφαρμογή, με κόμμα, όπου το 1 είναι η χαμηλότερη αριθμημένη CPU. Για παράδειγμα, για να εκτελέσετε την εφαρμογή σε CPU 2 και CPU 4, θα πρέπει να εισαγάγετε: - a 2, 4 |
- c | Αντιγράψτε το καθορισμένο εκτελέσιμο αρχείο στο απομακρυσμένο σύστημα για εκτέλεση. Εάν παραλειφθεί, η εφαρμογή πρέπει να βρίσκεται στη διαδρομή συστήματος στο απομακρυσμένο σύστημα. |
- η | Μην περιμένετε να τερματιστεί η διαδικασία (μη διαδραστική). |
- e | Δεν φορτώνει το προφίλ του καθορισμένου λογαριασμού. |
- f | Αντιγράψτε το καθορισμένο πρόγραμμα ακόμα κι αν το αρχείο υπάρχει ήδη στο απομακρυσμένο σύστημα. |
- i | Εκτελέστε το πρόγραμμα έτσι ώστε να αλληλεπιδρά με την επιφάνεια εργασίας της καθορισμένης περιόδου λειτουργίας στο απομακρυσμένο σύστημα. Εάν δεν έχει καθοριστεί περίοδος λειτουργίας, η διαδικασία εκτελείται στην περίοδο λειτουργίας της κονσόλας. |
- η | Εάν το σύστημα προορισμού είναι Windows Vista ή νεότερο, εκτελέστε τη διαδικασία με το ανυψωμένο διακριτικό του λογαριασμού, εάν είναι διαθέσιμο. |
- l | Εκτέλεση της διαδικασίας ως περιορισμένος χρήστης (απογυμνώνει την ομάδα διαχειριστών και επιτρέπει μόνο τα δικαιώματα που έχουν εκχωρηθεί στην ομάδα χρηστών). Στα Windows Vista, η διαδικασία εκτελείται με χαμηλή ακεραιότητα. |
- n | Καθορίζει το χρονικό όριο (σε δευτερόλεπτα) για τη σύνδεση με απομακρυσμένους υπολογιστές. |
- p | Καθορίζει τον προαιρετικό κωδικό πρόσβασης για το όνομα χρήστη. Εάν παραλειφθεί, θα σας ζητηθεί να εισαγάγετε έναν κρυφό κωδικό πρόσβασης. |
- r | Καθορίζει το όνομα της απομακρυσμένης υπηρεσίας για δημιουργία ή αλληλεπίδραση. |
- s | Εκτελεί την απομακρυσμένη διαδικασία στον λογαριασμό συστήματος. |
- u | Καθορίζει το προαιρετικό όνομα χρήστη για σύνδεση σε απομακρυσμένο υπολογιστή. |
- v | Αντιγράφει το καθορισμένο αρχείο μόνο εάν έχει μεγαλύτερο αριθμό έκδοσης ή είναι νεότερο από αυτόν στο απομακρυσμένο σύστημα. |
- w | Ορίζει τον κατάλογο εργασίας της διαδικασίας (σε σχέση με τον απομακρυσμένο υπολογιστή). |
- x | Εμφανίζει τη διεπαφή χρήστη στην ασφαλή επιφάνεια εργασίας Winlogon (μόνο για τοπικό σύστημα). |
- προτεραιότητα | Καθορίζει -χαμηλό, -κάτω από το κανονικό, -πάνω από κανονικό, -υψηλό ή -πραγματικό χρόνο για την εκτέλεση της διαδικασίας με διαφορετική προτεραιότητα. Χρησιμοποιήστε το -φόντο για εκτέλεση με χαμηλή μνήμη και προτεραιότητα εισόδου/εξόδου στα Windows Vista. |
υπολογιστής | Κατευθύνει το PsExec να εκτελέσει την εφαρμογή στον καθορισμένο απομακρυσμένο υπολογιστή. Εάν παραλειφθεί, το PsExec εκτελεί την εφαρμογή στο τοπικό σύστημα και εάν έχει καθοριστεί μπαλαντέρ (), το PsExec εκτελεί την εντολή σε όλους τους υπολογιστές στον τρέχοντα τομέα. |
@file | PsExec θα εκτελέσει την εντολή σε καθέναν από τους υπολογιστές που αναφέρονται στο αρχείο. |
cmd | Όνομα εφαρμογής προς εκτέλεση. |
επιχειρήματα | Ορίσματα προς επιτυχία (σημειώστε ότι οι διαδρομές αρχείου πρέπει να είναι απόλυτες διαδρομές στο σύστημα προορισμού). |
Παραδείγματα εντολών PsExec
Ακολουθούν μερικά παραδείγματα για το πώς να χρησιμοποιήσετε το PsExec για να κάνετε πράγματα όπως η εκτέλεση απομακρυσμένων εντολών γραμμής εντολών, η διαχείριση των Υπηρεσιών των Windows και η εκκίνηση ή η εγκατάσταση προγραμμάτων.
Άνοιγμα CMD από απόσταση
psexec \\192.168.86.62 cmd
Ένας από τους ευκολότερους τρόπους χρήσης του PsExec για την εκτέλεση εντολών Γραμμής εντολών σε απομακρυσμένο υπολογιστή είναι να εκτελέσετε το cmd ακολουθώντας τη διεύθυνση IP του μηχανήματος, 192.168.86.62 σε αυτό το παράδειγμα.
Αν το κάνετε αυτό θα ανοίξει ένα κανονικό παράθυρο γραμμής εντολών εντός του υπάρχοντος και θα σας επιτρέψει να εισάγετε κάθε εντολή σαν να κάθεστε μπροστά στον απομακρυσμένο υπολογιστή. Για παράδειγμα, μπορείτε στη συνέχεια να εισαγάγετε ipconfig για να λάβετε αυτά τα αποτελέσματα από τον άλλο υπολογιστή ή mkdir για να δημιουργήσετε έναν νέο φάκελο, dir για να παραθέσετε τα περιεχόμενα του φακέλου κ.λπ.
Εκτέλεση απομακρυσμένης εντολής
psexec \\mediaserver01 tracert lifewire.com
Ένας άλλος τρόπος χρήσης του PsExec είναι να εισάγετε μεμονωμένες εντολές αλλά χωρίς να ξεκινήσετε μια πλήρη γραμμή εντολών. Σε αυτό το παράδειγμα, εκτελούμε την εντολή tracert έναντι του lifewire.com και επειδή έχουμε καθορίσει το όνομα του απομακρυσμένου υπολογιστή, mediaserver01, τα αποτελέσματα της εντολής είναι σχετικά με αυτό το μηχάνημα, όχι με το τοπικό (δηλαδή, αυτό που είστε on).
Ξεκινήστε μια υπηρεσία από απόσταση
psexec \\FRONTDESK_PC -u tomd -p 3(tom87 καθαρή ουρά έναρξης
Το παράδειγμα εντολής PsExec που φαίνεται παραπάνω ξεκινά την υπηρεσία Print Spooler, ουρά, απομακρυσμένα στον υπολογιστή FRONTDESK_PC χρησιμοποιώντας τον κωδικό πρόσβασης χρήστη tomd, 3(tom87.
Η ίδια εντολή μπορεί να χρησιμοποιηθεί για τη διακοπή μιας υπηρεσίας από απόσταση, αλλά θα πληκτρολογήσετε "stop" αντί για "start."
Άνοιγμα του Επεξεργαστή Μητρώου
psexec \\mikelaptopw10 -i -s C:\Windows\regedit.exe
Εδώ, χρησιμοποιούμε το PsExec για να εκκινήσουμε τον Επεξεργαστή Μητρώου στο απομακρυσμένο μηχάνημα, mikelaptopw10, στον λογαριασμό συστήματος. Επειδή χρησιμοποιείται -i, το πρόγραμμα θα ανοίξει σε διαδραστική λειτουργία, που σημαίνει ότι θα εκκινηθεί στην οθόνη του απομακρυσμένου μηχανήματος.
Εάν το -i παραλείπονταν από την παραπάνω εντολή, θα εκτελούνταν σε κρυφή λειτουργία για να αποφευχθεί η εμφάνιση οποιωνδήποτε πλαισίων διαλόγου ή άλλων παραθύρων.
Εγκατάσταση προγράμματος σε απομακρυσμένο υπολογιστή
psexec \\J3BCD011 -c "Z:\files\ccleaner.exe" cmd /S
Σε αυτό το τελευταίο παράδειγμα του τρόπου χρήσης του PsExec, χρησιμοποιούμε -c για να αντιγράψουμε το πρόγραμμα ccleaner.exe στον απομακρυσμένο υπολογιστή J3BCD011 και, στη συνέχεια, να το εκτελούμε με το Παράμετρος /S αφού αυτό χρησιμοποιεί το CCleaner για να ενεργοποιήσει μια αθόρυβη εγκατάσταση (που δεν απαιτεί είσοδο από τον χρήστη). Η προσθήκη ενός τέτοιου ορίσματος απαιτεί cmd.
PsExec μπορεί να είναι επικίνδυνο
Είναι πολύ σημαντικό να κατανοήσετε πόσο ισχυρό είναι το PsExec και πώς θα μπορούσε να χρησιμοποιηθεί για να παραβιάσει τον υπολογιστή σας όταν χρησιμοποιείται σε ένα κατά τα άλλα μη ασφαλές περιβάλλον.
Για παράδειγμα, ο συνδυασμός - c, - u και - p, συγκεκριμένα θα επιτρέψτε σε οποιονδήποτε έχει σύνδεση δικτύου στον υπολογιστή σας και γνωρίζει τα διαπιστευτήρια διαχειριστή, να εκτελεί μυστικό κακόβουλο λογισμικό με τα διαπιστευτήρια οποιουδήποτε.
Ακόμα και αυτό το τελευταίο, απολύτως αποδεκτό παράδειγμα στην προηγούμενη ενότητα έχει έναν εντελώς νέο σκοπό, αν σκεφτεί κανείς ότι αντί για το CCleaner, κάποιος θα μπορούσε να εγκαταστήσει οτιδήποτε άλλο θέλει, στο παρασκήνιο, και δεν εμφανίζονται παράθυρα που να το δείχνουν οτιδήποτε συμβαίνει.
Όλα όσα αναφέρθηκαν, λαμβάνοντας υπόψη τις απαιτούμενες αλλαγές στο τείχος προστασίας και τις γνώσεις σχετικά με τα διαπιστευτήρια διαχειριστή που θα έπρεπε να έχει κάποιος, δεν υπάρχει λόγος ανησυχίας, εφόσον ο κωδικός πρόσβασης διαχειριστή στον απομακρυσμένο υπολογιστή είναι περίπλοκος και έχουν ληφθεί άλλα βασικά μέτρα ασφαλείας.
Ορισμένα προγράμματα προστασίας από ιούς προσδιορίζουν ψευδώς το PsExec ως επικίνδυνο αρχείο, αλλά αυτές οι προειδοποιήσεις μπορούν να αγνοηθούν εάν γνωρίζετε με βεβαιότητα ότι το πρόγραμμα που χρησιμοποιείτε προέρχεται από την παραπάνω πηγή Microsoft. Ο λόγος που συμβαίνει αυτό είναι επειδή είναι γνωστό ότι κακόβουλο λογισμικό χρησιμοποιεί το PsExec για τη μεταφορά ιών.