Psexec: обзор утилиты для удаленного выполнения команд

Introduction

Utilities like Telnet and remote control programs like Symantec’s PC
Anywhere let you execute programs on remote systems, but they can be a
pain to set up and require that you install client software on the
remote systems that you wish to access. PsExec is a light-weight
telnet-replacement that lets you execute processes on other systems,
complete with full interactivity for console applications, without
having to manually install client software. PsExec’s most powerful uses
include launching interactive command-prompts on remote systems and
remote-enabling tools like IpConfig that otherwise do not have the
ability to show information about remote systems.

Note: some anti-virus scanners report that one or more of the tools are
infected with a «remote admin» virus. None of the PsTools contain
viruses, but they have been used by viruses, which is why they trigger
virus notifications.

Вариант 3

(437 слов) «Жизнь пройти — не поле перейти» — эта народная мудрость означает, что путь человека тернист и сложен. Невозможно преодолеть его безошибочно и сразу же написать свою историю на чистовик

Важно получать опыт, перенимать мудрость и исправиться — только так можно стать лучшей версией себя. Поэтому оступаться столь же необходимо, как подниматься и продолжать путь

Подтверждение этой необходимости мы находим в прозе А.И. Куприна — многоопытного человека, который за свою жизнь сменил несколько десятков работ и регионов. Его произведения насыщены уникальным опытом. Например, в повести «Олеся» он описал судьбу яркой индивидуальности в посредственном мире, полном предрассудков. Олеся жила в уединении и вдали от общества, поэтому не переняла его заблуждения и шаблоны поведения. Вместо того чтобы всего бояться, слепо повторять все действия за другими, героиня думала своей головой и выстраивала свой маршрут, крутой и ухабистый. Так, она вступила в связь с Иваном без каких-либо гарантий с его стороны. Более того, она отказалась от брака, понимая, что увлекающаяся и слабая натура мужчины не соответствует тем обязанностям, которые на супруга налагает клятва. Также Олеся не побоялась пойти в церковь, чтобы стать ближе к идеалу Ивана. Все эти действия повлекли за собой негативные последствия, поэтому их можно назвать ошибочными. Однако без них героиня не получила бы полезного, хоть и горького опыта. Она лишилась бы и ярких впечатлений, и шанса на любовь. Очевидно, что ошибки были неотъемлемой частью ее становления и личностного роста.

Аналогичный пример мы видим в повести «Гранатовый браслет». Генерал Аносов женился рано на миловидной и скромной девушке из приличной семьи. Кто мог знать тогда, что эта барышня окажется безнравственной и пустой женщиной? Уже в первые месяцы брака стало очевидно, что она пошла под венец не из большой любви, а ради того, чтобы стать хозяйкой своего дома и получить больше денег на наряды, танцы и развлечения. Очень скоро супруга Аносова изменила ему с каким-то артистом и сбежала. А потом, конечно, вернулась и слезно умоляла простить минутную слабость. Но Аносов уже понял, что никакого будущего у них нет. Он осознал, что женился по ошибке, и всю жизнь платил супруге определенный пансион, но этим их общение ограничивалось. Очевидно, что даже такой мудрый человек не смог пройти свой путь без заблуждений и иллюзий. Но ведь они способствовали формированию его мировоззрения и были частью его неповторимой судьбы, благодаря которой он стал тем, кем должен был стать. Их нельзя вычеркнуть или отбросить, они образуют его биографию.

Таким образом, человек не может пройти свой путь без ошибок, потому что они составляют его жизнь, равно как и удачные моменты. Нельзя просто взять и выбросить половину судьбы. Любые просчеты нужно использовать в своих целях, делая выводы и избегая повторения проблемных ситуаций. Это и есть личностный рост, необходимый для достижения успеха.

Examples

This article I wrote describes how PsExec
works and gives tips
on how to use it:

The following command launches an interactive command prompt on
:

This command executes IpConfig on the remote system with the
switch, and displays the resulting output locally:

This command copies the program to the remote system and
executes it interactively:

Specify the full path to a program that is already installed on a remote
system if its not on the system’s path:

Run Regedit interactively in the System account to view the contents of
the SAM and SECURITY keys::

To run Internet Explorer as with limited-user privileges use this
command:

Download PsTools (3.5 MB)

PSTools

PsExec is part of a growing kit of Sysinternals command-line tools
that aid in the administration of local and remote systems named
PsTools.

Runs on:

  • Client: Windows Vista and higher.
  • Server: Windows Server 2008 and higher.

Примеры использования PsExec.

Общий синтаксис запуска программы PsExec выглядит так:

Рассмотрим несколько примеров для понимания работы утилиты PsExec.

1. Узнаем  конфигурацию сетевого интерфейса компьютера в сети.

Запускаем программу psexec с указанием ip-адреса удаленного компьютера и командой, которую нужно выполнить.

Для выполнения PsExec на компьютере от имени локального администратора удаленного компьютера необходимо запустить утилиту с параметрами: -u (имя пользователя) -p (пароль пользователя).

2. Запускаем исполняемый файл со своего компьютера на удаленный.

Параметр -c используется, чтобы скопировать файл из локальной операционной системы в удаленную и запустить его там на исполнение.

С параметром -с может применяться -f и -v, которые используются для того чтобы перезаписать копируемый файл, если он уже существует. Это может понадобиться, если были внесены изменения в файл и его нужно повторно запустить в удаленной системе.

3. Запуск PsExec на нескольких компьютерах.

Запуск psexec на двух или трех удаленных компьютерах можно выполнить путем перечисления их имен или ip-адресов.

Когда целевых компьютеров десятки, то перечислять их каждый раз через запятую неудобно. В этом случае можно воспользоватся параметром @ и указать текстовый файл, в котором будет задан список ip адресов компьютеров.

4. Подключение к командной строке Windows удаленного компьютера.

После запуска cmd поменялось окно приветствия — это означает, что в терминал загрузилась среда исполнения команд удаленного компьютера.

Сейчас мы можем полноценно работать с командной строкой удаленного компьютера. Для примера, наберем команду ipconfig, которая нам покажет конфигурацию сетевого интерфейса. Для выхода из удаленной консоли и возврата в свою среду используем команду exit.

Что такое речевая ошибка

Речевая ошибка — это неправильное употребление слов. В отличие, например, от грамматической, ее можно увидеть только в контексте.

Ошибки делают нашу речь неточной, некрасивой и даже непонятной.

Это может быть неправильное применение синонимов, антонимов, омонимов, неудачное употребление выразительных средств, неуместное использование диалектизмов, жаргонизмов, а также плеоназм (наличие в высказывании слов, имеющих одно и то же значение) и тавтология (повторение одинаковых или однокоренных слов).

Для наглядности классификация речевых ошибок по видам, с примерами и исправлениями, представлена в таблице:

Вот еще показательные примеры предложений с речевыми ошибками:

  • Ему захотелось заглянуть на небо (неразличение оттенков значения слова, вносимых приставкой или суффиксом, правильно-взглянуть).
  • Мы назначили встречу после дождичка в четверг (искажение образного значения фразеологизма в неудачно сформулированном контексте).
  • Прозвучал не грустный, но и не минорный мотив (неверное построение антитезы и выбор антонимов).
  • В этом пространстве располагался офис (ошибочный выбор синонима, правильно-помещение).
  • Этот писатель написал много замечательных рассказов (тавтология — повторение близких по смыслу слов).
  • Дождь шел всю ночь. Дождь даже не собирался заканчиваться (неоправданные повторения слова).
  • Когда я вышел на улицу, то встретил своих друзей. Когда мы поболтали, я пошел в школу (однообразие в составлении предложений).

Если умные взрослые способны контролировать свою речь, то у детей это процесс иного рода. Богатый русский язык дает широкий простор для неуемной детской фантазии и творчества.

Особенно часто речевые ошибки можно встретить у младших школьников. Окунаясь с головой в процесс познания, они допускают их, не задумываясь, на ходу исправляют, совершают новые и так постигают все премудрости родного языка.

Самые распространенные у них ошибки в речи — это:

  • неправильное склонение по падежам (исполнение мечт);
  • неверное употребление слов во множественном или единственном числе (одна качель);
  • произвольное словообразование (дватый вместо второй);
  • неточное использование предлогов (ходили в концерт).

В целом, допускаемые учащимися речевые ошибки можно подразделить на типы: лексико — стилистические, морфолого — стилистические, синтаксисо — стилистические.

Лексико-стилистические ошибки

К ним относятся повторения слов, употребление их в неточном значении, использование просторечий. Например:

  • Ежик смешно пыхтел. Витя налил ежику молока. В комнату забежала собака, и ежик свернулся клубком.
  • Мама одела плащ и пошла на работу.
  • Полкан плелся взади.

Морфолого-стилистические ошибки

В этой группе — неправильно образованные слова. Например:

  • он хотит;
  • это ихний;
  • работают малярщики;
  • идут трудящие;
  • крыша текет;
  • много делов.

Синтаксисо-стилистические ошибки

Эти ошибки встречаются в словосочетаниях и предложениях из-за перестановки слов, несогласованности между словами, неправильных границ, неверного употребления местоимения. Например:

  • Только под ногами шелестела листва.
  • Вся компания дружно встретили Новый Год.
  • Когда ребята пришли к реке. Там было много народу.
  • Папа, когда пришел домой, он был очень уставшим.

Что нужно для PsExec

Для работы PsExec на удалённом компьютере не требуется никакого программного обеспечения — то есть на компьютере, которым вы будете управлять, не нужно устанавливать никакую клиентскую часть. Но нужно соблюдение некоторых условий, чтобы PsExec работала, поэтому если первая попытка не удалась, то проверьте следующие требования.

1. На обеих машинах, т.е. удалённом компьютере (которым будем управлять) и локальном компьютере (с которого будем управлять), должен быть включён общий доступ к файлам и принтерам. Для их включения смотрите статью «SMB: настройка общей сетевой папки в Windows».

2. В современных Windows 10 у меня PsExec работала только с учётной записью «Администратор», видимой по той причине, что необходимы административные общие ресурсы (подробнее о них смотрите в статье «Как включить административные общие ресурсы в ОС Windows 10, 8 или 7 (C$, D$, $admin и другие)»).

На серверах Windows учётная запись «Администратор» включена по умолчанию.

В более старых версиях Windows, видимо, достаточно включения общего сетевого ресурса $admin для предоставления доступа к папке \Windows\. В Windows 10 папки $admin как сетевого ресурса нет вовсе.

3. Проверьте, что сетевой доступ к файлам и принтерам включён в файерволе. Для этого нажмите Win+r, введите там firewall.cpl.

Во вкладке «Разрешение взаимодействия с приложениями или компонентами в брандауэре защитника Windows»

найдите «Общий доступ к файлам и принтерам» и убедитесь, что стоит галочка в столбце «Частная» — если его там нет, то нажмите кнопку «Изменить параметры», поставьте галочку и нажмите ОК.

4. Убедитесь, что оба компьютера принадлежат к одной и той же рабочей группе (Workgroup).

5. Убедитесь, что вы правильно вводите пароль администратора удалённого компьютера.

Права доступа (Разрешения)¶

Все разделы реестра имеют права доступа или разрешения. Если у текущего пользователя нет прав на определенный раздел, то будет выведено сообщение об ошибке и запрете доступа к данному разделу.

Прав доступа может не быть по нескольким причинам:

  1. У текущего пользователя, залогиненного в системе, нет прав администратора;
  2. Группа «Администраторы» является владельцем раздела, но не имеет полных прав на него. В этом случае достаточно просто выдать группе «Администраторы» полные права.
  3. Владельцем раздела является системная служба TrustedInstaller.
  4. Владельцем раздела является системная учетная запись «Система».

В первом случае необходимо обращаться к системному администратору, чтобы он предоставил доступ к учетной записи администратора или дал администраторские права пользователю.

Во втором случае необходимо присвоить полные права и сменить владельца.

Получение полных прав и смена владельца¶

  1. Нажать правой кнопкой мыши на раздел и выбрать пункт «Разрешения»;

Рис. 10 – Вызов диалога работы с разрешениями

  1. Выделить текущего пользователя:

Рис. 11 – Открытие Полного доступа гурппам и пользователям

Если отсутствует необходимый пользователь, флажок «Полный доступ» недоступен или возникает сообщение об ошибке, переходите к пункту 3.

  1. В меню разрешений нажать кнопку «Дополнительно»;

Рис. 12 – Добавление или смена владельца

Примечание

Во время добавления разрешений и владельцев могут возникать сообщения об отсутсвии прав доступа. Данные сообщения можно смело игнорировать.

Перейти на вкладку «Владелец» и добавить текущего пользователя;

Рис. 13 – Выбор владельца

На вкладке «Разрешения» нажать кнопку «Добавить»;

Рис. 14 – Добавление разрешений владельцу

В поле «Введите имена выбираемых объектов» ввести имя текущей учетной записи и нажать кнопку «Проверить имена», затем нажать «ОК»;

Рис. 15 – Ввод имени выбираемых объектов

Рис. 16 – Проверка имен

Появится диалог разрешений. Поставить галочку напротив «Полный доступ» и нажать «ОК»;

Рис. 17 – Установка полного доступа текущему владельцу

После добавления владельца и назначения прав нажать клавишу F5 или «Вид → Обновить». Напротив непустого раздела появится треугольник, который означает, что у текущего пользователя есть права на доступ в него.

Рис. 18 – Доступ к подразделам

На рисунке 18 видно, что у текущего пользователя есть доступ к подразделу Keys, но нет прав на открытие разделов KeyDevices и Random. Треугольника напротив подраздела может не быть, если данный подраздел пуст.

Примечание

В Windows 8 и выше порядок работы с диалогом смены и добавления владельца немного отличается – владелец выбирается сверху.

Рис. 19 – Выбор/смена владельца в Windows 8 и выше

Совет

Ручное добавление владельцев и прав доступа удобно, если нужно получить доступ всего к нескольким разделам. Если нужно получить доступ к большому количеству разделов, то гораздо целесообразнее воспользоваться утилитой PsExec.exe. Работа с данной утилитой рассматривается в разделе Работа через утилиту PsExec.

Что такое PsExec и PsTools

На самом деле, PsExec это всего лишь один из инструментов из пакета PsTools. Программа PsExec используется чаще всего, поэтому обычно упоминается она, но в данной инструкции будут рассмотрены как примеры использования PsExec, так и примеры использования других инструментов из пакета PsTools.

Состав PsTools:

  • PsExec используется для удалённого выполнения команд или получения шелла (оболочки) на удалённой системе
  • PsFile используется для вывода списка удалённо открытых файлов
  • PsGetSid используется для отображения идентификатора безопасности для удалённого компьютера или пользователя
  • PsInfo используется для получения подробной информации об удалённой системе
  • PsKill используется для остановки процесса в удалённой системе по имени или идентификатору
  • PsList используется для детального отображения процессов в удалённой системе
  • PsLoggedOn используется для вывода списка зарегистрированных пользователей в удалённых системах
  • PsLogList, используемый для отображения журналов событий на удалённых системах
  • PsPasswd используется для изменения заданного пароля пользователя в удалённой системе
  • PsPing используется для пинга из удалённой системы
  • PsServervice используется для перечисления и управления службами Windows в удалённой системе
  • PsShutdown используется для выключения, выхода из системы, приостановки и перезапуска удалённой системы Windows
  • PsSuspend используется для приостановки и возобновления процессов в удалённой системе Windows
  • PsUptime используется для отображения времени работы удалённой системы

Инвентаризация ПК в домене

Стала задача провести инвентаризацию компьютеров организации, для установления возможности апгрейда комплектующих.

Может кому-нибудь пригодится данный способ:

1) Установленный/Portable Дистрибутив AIDA64

3) Учетка с правами администратора в данном домене

1) Создаем шару с полным доступом для всех и копируем туда все файлы aida64

2) Запускаем Aida64, заходим в мастер отчетов , выделяем нужные нам свойства и сохраняем на шару рядом с AIDA64.exe — aida64.rpf

3) Делаем бат-файл со следующим содержимым и кладем его на нашу шару в папку с aida64 под именем aida.bat:

\station177AIDALOGS2aida64.exe /R «\station177AIDALOGS2Reports$IPADDR — $HOSTNAME — $USERNAME.txt» /SUM /CSV /SHOWP /NOICONS /CUSTOM \station177AIDALOGS2aida64.rpf

где \station177AIDALOGS2 — путь к шаре

4)Для скана всех известных пк в сети(используется ARP таблица) запускаем данную команду:

Сначала обновляем ARP таблицу:

for /L %a in (1,1,254) do @start /b ping 10.200.1.%a -n 2 > nul

Замените 10.200.1 на вашу подсеть

И команда для инвентаризации:

psexec \* -u domainuser -p ***** -d -n 12 \station177AIDALOGS2aida.bat

, где * — скан всех пк (ARP)

Для скана определенного пк замените * на его имя

В итоге в папке REPORTS обнаружим отчеты в CSV/HTML формате, которые можно просмотреть в любом браузере в удобном виде.

+ данного метода в том, что aida предоставляет множество информации(нужные поля мы сами задаем в мастере отчетов)

+ все происходит в скрытом режиме для конечного пользователя

Он денег стоит:D

Нам было необходимо достать инфу конкретную, чтобы закупить память под старый разрозненный парк. Опять же единоразово, а не на постоянной основе. Так и PRTG хватает

Опять повторюсь, аида позволяет достать ту же макс поддерживаемую ОЗУ + количество свободных слотов + поддерживаемые типы достать. И еще кучу всего по желанию. Не всякий софт справится.

А зачем перед сканированием ARP-таблицу очищать?

А именно очищать ее нужно перед сканом подсети так как некоторые пк, которые закэшировались в таблице уже могут быть выключены и это удлиняет время отработки скрипта.

У меня строчка завелась только после изменения:

for /L %%a in (1,1,254) do @start /b ping 10.200.1.%a -n 2 > nul

Без этого ошибка «Непредвиденное появление а».

Дык это не очистка, а наоборот заполнение таблицы — пинг каждого пк в указанной подсети в указанном диапозоне, чтобы pstools смогла отработать с * диапозоном.

Как этот процесс заставить работать не в домне.

Допустим, на всех ПК есть админская учётка «admin» c одним и тем же паролем.

Первую проблему победил — это заставил psExec заходить на ПК — на всех ПК разрешил доступ к админиским шарам «C$» (в домене он уже включён, а у меня компьютеры не в домене), командой:

reg add «HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem» /v «LocalAccountTokenFilterPolicy» /t reg_dword /d 1 /f

Вторая проблема в том что psExec надо запускать в cmd, запущенной от администратора, т.к. aida64 требует повышения прав.

Третью пробелму я не смог победить: проблема в том, что psExec не может запустить бат файл с шары, хотя доступ для всех и без пароля (вручную с другого с ПК, с которого мне надо собрать отчёт я могу запустить из шары этот bat файл):

Psexec в домене

Возникла задача выполнить кое-какую операцию с помощью командной строки на другом компьютере, само собой идти к пользователю запускать командную строку и вбивать команды- не наш метод, нам надо не вставая с кресла запустить командную строку удаленного компьютера и выполнить необходимые действия в командной строке. Конечно, подобное действие можно выполнить с помощью программ удаленного подключения, но это не всегда удобно и требует наличия подобной программы у вас и у пользователя (клиент- сервер). Процедуру по подключению к командной строки другого компьютера, можно выполнить значительно просто, с помощью команды PSEXEC.

PsExec — это утилита командной строки, с возможность вызывать в интерактивном режиме интерфейс командной строки в удаленных системах Windows и удаленно запускать различные команды.

На этом установка PSEXEC можно считать оконченной.

Разберем синтаксис команды:

psexec | @файл]]]] программа

компьютер Указывает программе PsExec, что нужно запустить приложение на заданном компьютере или компьютерах. Если имя компьютера не указано, то программа PsExec запустит приложение в локальной системе, если же вместо имени компьютера задан символ «звездочка» (\*), то программа PsExec запустит приложение на всех компьютерах текущего домена.

@файл Указывает программе PsExec, что нужно запустить приложение на всех компьютерах, перечисленных в заданном текстовом файле.

-a Процессоры, на которых можно запустить приложение, отделяются запятыми, при этом процессоры нумеруются, начиная с 1. Например, чтобы запустить приложение на процессорах втором и четвертом, введите «-a 2,4»

-c Указанная программа копируется в удаленную систему для выполнения. Если этот параметр не задан, то приложение должно находиться в системной папке удаленной системы.

-d Указывает, что не нужно ждать завершения приложения. Этот параметр следует использовать только при запуске неинтерактивных приложений.

-e Указанный профиль учетной записи не загружается.

-f Указанная программа копируется в удаленную систему, даже если такой файл в удаленной системе уже есть.

-i Запускаемая программа получает доступ к рабочему столу указанного сеанса в удаленной системе. Если сеанс не задан, то процесс выполняется в консольном сеансе.

-l При запуске процесса пользователю предоставляются ограниченные права (права группы администраторов отменяются, и пользователю предоставляются только права, назначенные группе «пользователи»). В ОС Windows Vista процесс запускается с низким уровнем благонадежности.

-n Позволяет задать задержку подключения к удаленным компьютерам (в секундах).

-p Позволяет указать необязательный пароль для имени пользователя. Если этот параметр опущен, то будет выдан запрос на ввод пароля, при этом пароль не будет отображаться на экране.

-s Удаленный процесс запускается из системной учетной записи.

-u Позволяет указать необязательное имя пользователя для входа в удаленную систему.

-v Указанный файл копируется в удаленную систему вместо уже имеющегося только при условии, что номер его версии выше или он более новый.

-w Позволяет указать для процесса рабочий каталог (путь внутри удаленной системы).

-x Отображает интерфейс пользователя на рабочем столе Winlogon (только в локальной системе).

-приоритет (приоритет) Позволяет задавать для процесса различные приоритеты: -low (низкий), -belownormal (ниже среднего), -abovenormal (выше среднего), -high (высокий) или -realtime (реального времени).

программа Имя запускаемой программы.

аргументы Передаваемые аргументы (обратите внимание, что пути файлов должны указываться как локальные пути в целевой системе). Примеры работы команды PSEXEC:

Примеры работы команды PSEXEC:

1) Для того чтобы запустить командную строку другого компьютера, необходимо ввестиpsexec \ cmd

например:psexec \WIN782 cmd

после этого можете вводить необходимые вам команды.

2) Для того чтобы запустить какою либо программу (в данном примере test.exe) на удаленном компьютере необходимо выполнить команду, (эта команда копирует программу test.exe в удаленную систему и выполняет ее в интерактивном режиме).

psexec \ -c test.exe

например:psexec \WIN782 -c test.exe

3) Если в удаленной системе такая программа уже установлена и находится не в системном каталоге, укажите полный путь к этой программе

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: