Ang PsExec ay isang portable na tool mula sa Microsoft na hinahayaan kang magpatakbo ng mga proseso nang malayuan gamit ang mga kredensyal ng sinumang user. Ito ay medyo tulad ng isang remote access program ngunit sa halip na kontrolin ang computer gamit ang mouse, ang mga command ay ipinapadala sa pamamagitan ng Command Prompt.
Maaari mong gamitin ang PsExec upang hindi lamang pamahalaan ang mga proseso sa remote na computer ngunit i-redirect din ang console output ng isang application sa iyong lokal na computer, na nagpapalabas na parang lokal na tumatakbo ang proseso.
Walang software na kailangan sa remote na computer para gumana ang PsExec, ngunit may ilang bagay na dapat tandaan kung hindi gumana nang tama ang tool sa unang pagkakataong subukan mo ito.
Paano I-set Up ang PsExec
Kung portable ang PsExec at hindi kailangang kopyahin sa remote na computer, anong uri ng setup ang talagang kailangan nito?
Gumagana lang ang tool sa ilalim ng ilang partikular na kundisyon. Ibig sabihin, kapag ang pagbabahagi ng file at printer ay pinagana sa parehong lokal at malayong computer, at kapag ang remote na makina ay naka-set up nang tama ang bahagi ng $admin upang magbigay ng access sa folder na \Windows\ nito.
Maaari mong i-double check na pinagana ang pagbabahagi ng file at pag-print sa pamamagitan ng pagtingin sa mga setting ng Windows Firewall:
- Ilagay ang firewall.cpl sa dialog box ng Run. Ang isang paraan para buksan ang Run ay sa pamamagitan ng WIN+R keyboard shortcut.
-
Piliin ang Payagan ang isang app o feature sa pamamagitan ng Windows Firewall mula sa kaliwang bahagi ng window.
Maaaring ito ay basahin bilang Pahintulutan ang isang app o feature sa pamamagitan ng Windows Defender Firewall depende sa kung paano naka-set up ang iyong computer, ngunit ito ay ang parehong opsyon.
-
Tiyaking Pagbabahagi ng File at Printer ay may checkmark sa Pribado na kahon sa kanan nito. Kung hindi, lagyan ng tsek ang kahon na iyon at piliin ang OK.
Kung hindi mo mababago ang mga setting ng firewall dahil naka-gray out ang mga ito, piliin ang Baguhin ang mga setting sa itaas ng window.
- Maaari ka na ngayong lumabas sa anumang nakabukas na setting ng Windows Firewall.
Kapag ang Windows Firewall ay naka-set up na ngayon nang tama para sa PsExec, hindi ka dapat magkaroon ng problema sa pag-access sa $admin share sa remote machine hangga't ang mga sumusunod ay totoo:
- Ang parehong mga computer ay nabibilang sa parehong Workgroup
- Alam mo ang password sa account ng isang administrator sa remote na computer
Tingnan ang tutorial na ito sa Wintips.org kung kailangan mo ng tulong sa paggawa ng mga bagay na iyon o kung nagawa mo ang mga ito nang tama ngunit sa paglaon, pagkatapos subukang gamitin ang PsExec gaya ng inilarawan sa ibaba, magkakaroon ka ng error na “na-access ang tinanggihan.”
Paano Gamitin ang PsExec
Bago gamitin ang PsExec para magsagawa ng mga remote na command, kailangan mong i-download ang program at iposisyon ang Command Prompt sa paraang magagamit mo nang tama ang tool.
I-download at Buksan Ito
- I-download ang PsExec sa computer na tatakbo sa mga remote na command. Available ito nang libre mula sa Microsoft sa Sysinternals bilang bahagi ng PsTools.
-
I-extract ang mga file mula sa pag-download ng PsTools.zip. Magagawa mo iyon sa pamamagitan ng pag-right click sa ZIP file at pagpili sa Extract All. Ang anumang third-party na file extractor ay gagana rin.
-
Buksan ang folder kung saan matatagpuan ang mga na-extract na file, at mula sa navigation bar sa itaas ng folder, burahin kung ano ang naroon at ilagay ang cmd.
Ang isa pang paraan para gawin ito, kahit man lang sa ilang bersyon ng Windows, ay ang Shift+Right Click isang bakanteng espasyo sa folder ng PsTools at piliin ang Buksan command window dito.
Bubuksan nito ang Command Prompt sa folder na iyon para makapagpatakbo ka ng mga command sa pamamagitan ng PsExec.
- Kapag nakabukas na ngayon ang Command Prompt sa folder na naglalaman ng PsExec.exe, maaari kang magsimulang maglagay ng mga command sa remote na makina.
Pag-unawa sa Syntax
Katulad ng anumang command-line tool, gumagana lang ang PsExec kapag eksaktong sinusunod ang syntax nito. Kapag naunawaan mo na kung paano mag-type ng mga command sa paraang nauunawaan ng tool ang mga ito, makokontrol mo ang program mula sa anumang Command Prompt.
Ganito dapat ilagay ang mga utos ng PsExec:
psexec [ computer [, computer2 [, …] | @file\][- u username [- p password][- n s][- r servicename][- h][- l][- s |- e][- x][- i[session][-c executable [-f |-v ][-w directory][- d][- ][- a n, n
Maaaring mukhang kumplikado at nakakalito ito ngunit huwag mag-alala! May ilang halimbawa sa ibaba ng page na ito na magagamit mo sa pagsasanay.
Ang syntax sa itaas ay ginagamit upang isagawa ang alinman sa mga sumusunod na argumento ng command ng PsExec:
PsExec Command Options | |
---|---|
Parameter | Paliwanag |
- a | Paghiwalayin ang mga processor kung saan maaaring tumakbo ang application, na may mga kuwit, kung saan ang 1 ay ang pinakamababang bilang na CPU. Halimbawa, upang patakbuhin ang application sa CPU 2 at CPU 4, ilalagay mo ang: - a 2, 4 |
- c | Kopyahin ang tinukoy na executable sa remote system para sa execution. Kung aalisin, ang application ay dapat nasa path ng system sa remote system. |
- d | Huwag hintaying matapos ang proseso (hindi interactive). |
- e | Hindi nilo-load ang profile ng tinukoy na account. |
- f | Kopyahin ang tinukoy na program kahit na ang file ay mayroon na sa remote system. |
- i | Patakbuhin ang program upang makipag-ugnayan ito sa desktop ng tinukoy na session sa remote system. Kung walang tinukoy na session, tatakbo ang proseso sa session ng console. |
- h | Kung ang target na system ay Windows Vista o mas mataas, patakbuhin ang proseso gamit ang nakataas na token ng account, kung available. |
- l | Patakbuhin ang proseso bilang limitadong user (tinatanggal ang pangkat ng Mga Administrator at pinapayagan lamang ang mga pribilehiyong itinalaga sa pangkat ng Mga User). Sa Windows Vista, tumatakbo ang proseso nang may Mababang Integridad. |
- n | Tinutukoy ang timeout (sa mga segundo) sa pagkonekta sa mga malalayong computer. |
- p | Tinutukoy ang opsyonal na password para sa username. Kung aalisin, ipo-prompt kang maglagay ng nakatagong password. |
- r | Tinutukoy ang pangalan ng malayuang serbisyong gagawin o pakikipag-ugnayan. |
- s | Nagpapatakbo ng malayuang proseso sa System account. |
- u | Tinutukoy ang opsyonal na username para sa pag-login sa malayuang computer. |
- v | Kinokopya lang ang tinukoy na file kung mayroon itong mas mataas na numero ng bersyon o mas bago kaysa sa nasa remote system. |
- w | Itinatakda ang gumaganang direktoryo ng proseso (kaugnay ng malayuang computer). |
- x | Ipinapakita ang user interface sa Winlogon secure desktop (local system lang). |
- priority | Tinutukoy ang -mababa, -belownormal, -abovenormal, -high o -re altime upang patakbuhin ang proseso sa ibang priyoridad. Gamitin ang -background para tumakbo sa mababang memory at I/O priority sa Windows Vista. |
computer | Inutusan ang PsExec na patakbuhin ang application sa (mga) remote na computer na tinukoy. Kung aalisin, pinapatakbo ng PsExec ang application sa lokal na system, at kung may tinukoy na wildcard (), pinapatakbo ng PsExec ang command sa lahat ng computer sa kasalukuyang domain. |
@file | PsExec ay isasagawa ang command sa bawat isa sa mga computer na nakalista sa file. |
cmd | Pangalan ng application na isasagawa. |
arguments | Mga argumentong ipapasa (tandaan na ang mga path ng file ay dapat na ganap na mga path sa target system). |
Mga Halimbawa ng PsExec Command
Narito ang ilang halimbawa kung paano gamitin ang PsExec para gawin ang mga bagay tulad ng pagpapatakbo ng mga remote Command Prompt na command, pamamahala sa Windows Services, at paglunsad o pag-install ng mga program.
Buksan ang CMD nang Malayo
psexec \\192.168.86.62 cmd
Ang isa sa mga pinakamadaling paraan upang gamitin ang PsExec upang patakbuhin ang mga command Prompt sa isang malayuang computer ay ang pag-execute ng cmd kasunod ng IP address ng machine, 192.168.86.62 sa halimbawang ito.
Ang paggawa nito ay maglulunsad ng isang regular na Command Prompt na window sa loob ng dati, at hahayaan kang ipasok ang bawat command na parang nakaupo ka sa harap ng remote na computer. Halimbawa, maaari mong ilagay ang ipconfig para makuha ang mga resultang iyon mula sa kabilang computer, o mkdir para gumawa ng bagong folder, dir para ilista ang mga nilalaman ng folder, atbp.
Magpatakbo ng Remote Command
psexec \\mediaserver01 tracert lifewire.com
Ang isa pang paraan para magamit ang PsExec ay ang pagpasok ng mga indibidwal na command ngunit hindi nagsisimula ng buong Command Prompt. Sa halimbawang ito, ipinapatupad namin ang tracert command laban sa lifewire.com, at dahil tinukoy namin ang pangalan ng remote na computer, mediaserver01, ang mga resulta ng command ay may kaugnayan sa machine na iyon, hindi sa lokal (ibig sabihin, ang isa sa iyo. on).
Magsimula ng Serbisyo nang Malayo
psexec \\FRONTDESK_PC -u tomd -p 3(tom87 net start spooler
Ang halimbawa ng command ng PsExec na ipinakita sa itaas ay magsisimula sa serbisyo ng Print Spooler, spooler, nang malayuan sa FRONTDESK_PC computer gamit ang password ng tomd user, 3(tom87.
Maaaring gamitin ang parehong command upang ihinto ang isang serbisyo nang malayuan, ngunit ita-type mo ang "stop" sa halip na "start."
Buksan ang Registry Editor
psexec \\mikelaptopw10 -i -s C:\Windows\regedit.exe
Dito, ginagamit namin ang PsExec para ilunsad ang Registry Editor sa remote na makina, mikelaptopw10, sa System account. Dahil ginagamit ang -i, magbubukas ang program sa interactive mode, ibig sabihin, ilulunsad talaga ito sa screen ng remote na makina.
Kung inalis ang -i sa command sa itaas, isasagawa ito sa hidden mode upang maiwasang magpakita ng anumang mga dialog box o iba pang mga window.
Install Program sa Remote Computer
psexec \\J3BCD011 -c Z:\files\ccleaner.exe” cmd /S
Sa huling halimbawang ito kung paano gamitin ang PsExec, ginagamit namin ang -c para kopyahin ang ccleaner.exe program sa remote na computer na J3BCD011, at pagkatapos ay i-execute ito gamit ang /S parameter dahil iyon ang ginagamit ng CCleaner upang paganahin ang isang tahimik na pag-install (hindi nangangailangan ng input ng user). Ang pagdaragdag ng isang argumento tulad nito ay nangangailangan ng cmd.
PsExec Maaaring Maging Delikado
Napakahalagang maunawaan kung gaano kalakas ang PsExec at kung paano ito magagamit upang ikompromiso ang iyong computer kapag ginamit sa isang hindi secure na kapaligiran.
Halimbawa, ang pagsasama-sama ng - c, - u, at - p, ay partikular na hayaan ang sinumang may koneksyon sa network sa iyong computer, at kaalaman sa mga kredensyal ng admin, na magsagawa ng lihim na malware gamit ang mga kredensyal ng sinuman.
Kahit na ang huling, ganap na katanggap-tanggap na halimbawa sa nakaraang seksyon ay may ganap na bagong layunin kapag isinasaalang-alang mo na sa halip na CCleaner, maaaring i-install ng isang tao ang anumang bagay na gusto niya, sa background, at walang mga pop up na window upang ipakita iyon anumang nangyayari.
Lahat ng sinabi, kung isasaalang-alang ang mga kinakailangang pagbabago sa firewall at kaalaman sa mga kredensyal ng administrator na dapat magkaroon ang isang tao, walang kaunting dahilan upang mag-alala hangga't ang password ng admin sa remote na computer ay kumplikado at ang iba pang pangunahing mga hakbang sa seguridad ay ginawa.
Maling tinutukoy ng ilang antivirus program ang PsExec bilang isang mapanganib na file, ngunit maaaring balewalain ang mga babalang iyon kung alam mong sigurado na ang program na iyong ginagamit ay mula sa Microsoft source sa itaas. Ang dahilan kung bakit ito nangyayari ay dahil ang malware ay kilala na gumagamit ng PsExec upang maglipat ng mga virus.