Forwarded from CyberSecrets
Боковое перемещение: PSRemoting
Powershell Remoting (PSRemoting) использует протокол WS-Management и службу WinRM. PSRemoting позволяет выполнять команды Powershell на удаленном хосте, а Microsoft рекомендует его как способ управления Windows. По умолчанию PSRemoting включен на серверах выше Windows Server 2012 R2. Для использования PSRemoting пользователь должен быть членом группы локальных администраторов или группы
При использовании BloodHound запрос Cypher поиска информации может быть следующим:
PSRemoting имеет возможность выполнения команды
Выполнение команды
В
Также
Для создания интерактивной оболочки необходимо выполнить следующую команду:
Чтобы выйти из интерактивной оболочки нужно выполнить команду
В PSRemoting есть возможность создавать сеансы и использовать их при необходимости. Получается некое подобие командного центра.
Сеанс создается с помощью cmdlet
Посмотреть список существующих сеансов:
Чтобы использовать сеанс в
А для выполнения команды на всех машинах, где установлен сеанс, команда
Сеансы могут быть использованы для передачи файлов. Для этого в cmdlet
После завершения работ удалить все созданные сеансы с помощью следующей последовательности команд:
Обычно PSRemoting использует контекст текущего пользователя для подключения, но можно использовать параметр
#Внутрянка #RedTeam #PurpleTeam
Powershell Remoting (PSRemoting) использует протокол WS-Management и службу WinRM. PSRemoting позволяет выполнять команды Powershell на удаленном хосте, а Microsoft рекомендует его как способ управления Windows. По умолчанию PSRemoting включен на серверах выше Windows Server 2012 R2. Для использования PSRemoting пользователь должен быть членом группы локальных администраторов или группы
Remote Management Users
.При использовании BloodHound запрос Cypher поиска информации может быть следующим:
MATCH p=(u)-[r:CanPSRemote|MemberOf1*..]->(c:Computer) return p
PSRemoting имеет возможность выполнения команды
Invoke-Command
и создания интерактивной оболочки Enter-PSSession
на удаленном хосте.Выполнение команды
Invoke-Command
будет следующим:Invoke-Command –ComputerName comp -ScriptBlock {hostname}
В
Invoke-Command
можно передавать выполнение скрипта, без необходимости загружать его на удаленный хост:Invoke-Command -ComputerName comp -FilePath .\script.ps1
Также
Invoke-Command
можно использовать для выполнения на нескольких машинах, что удобно для получения полезной информации, например, проверить наличие дополнительных сетевых интерфейсов. А список машин передать через чтение содержимого файла.Invoke-Command -ComputerName $(Get-Content comps.txt) -ScriptBlock {ipconfig}
Для создания интерактивной оболочки необходимо выполнить следующую команду:
Enter-PSSession -ComputerName comp
Чтобы выйти из интерактивной оболочки нужно выполнить команду
exit
В PSRemoting есть возможность создавать сеансы и использовать их при необходимости. Получается некое подобие командного центра.
Сеанс создается с помощью cmdlet
New-PSSession
:New-PSSession -ComputerName comp1
Посмотреть список существующих сеансов:
Get-PSSession
Чтобы использовать сеанс в
Invoke-Command
или Enter-PSSession
нужно указать его id через параметр -id
. Например:Enter-PSSession -id 1
А для выполнения команды на всех машинах, где установлен сеанс, команда
Invoke-Command
будет иметь следующий вид:Invoke-Command -Session (Get-PSSession) -ScriptBlock {hostname}
Сеансы могут быть использованы для передачи файлов. Для этого в cmdlet
Copy-Item
необходимо использовать параметры -toSession
или -fromSession
. В которые сессии указываются через Get-PSSession
:Copy-Item -ToSession (Get-PSSession -id 1) -Path .\file.txt -Destination "c:\temp\"
После завершения работ удалить все созданные сеансы с помощью следующей последовательности команд:
Get-PSSession | Disconnect-PSSession
Обычно PSRemoting использует контекст текущего пользователя для подключения, но можно использовать параметр
-Credential
для передачи альтернативных учетных данных. Это полезно при подключении с не доменного хоста.#Внутрянка #RedTeam #PurpleTeam
Forwarded from Ralf Hacker Channel (Ralf Hacker)
Для получения паролей пользователей SSH в открытом виде
https://github.com/jm33-m0/SSH-Harvester
#redteam #pentest #creds #git
https://github.com/jm33-m0/SSH-Harvester
#redteam #pentest #creds #git
Forwarded from CyberSecrets
Боковое перемещение: Проброс портов
Движение по сети межу хостами в сегментированной сети может быть затруднительной задачей. Например, хост необходимый для выполнения работ, может находиться в другой подсети и правила межсетевого экрана ограничивают туда доступ. Или есть правила межсетевого экрана разрешают доступ только с определенных адресов. Если был обнаружен терминальный сервер с доступом в другую подсеть или разрешающим правилом межсетевого экрана, то проблемы нет. Можно зайти этот терминальный сервер по RDP и продолжаем работать, а вот если это рабочая станция, где работает пользователь и нельзя прерывать его работу, то возникает не большая проблема. Ее можно решить с помощью проброса портов.
Проброс портов можно выполнить с помощью
Правила проброса портов можно создавать между адресами IPv4 и IPv6, для этого существуют опции
В качестве примера выполним проброс порта для RDP:
• listenaddress – адрес, к которому будет выполняться подключение
• listenport – порт, на который будет выполняться подключение
• connectaddress – адрес, на который будет перенаправляться трафик
• connectport – порт, на который будет перенаправляться трафик
Теперь можно запустить RDP клиент и выполнить подключение:
Посмотреть правила проброса портов можно с помощью команды
Изменить настройки перенаправления портов можно заменив параметр
После выполнения работ необходимо удалить созданное правило проброса портов
А если правил было несколько, то можно удалить их все одной командой:
Этот способ можно использовать для обхода локальных правил межсетевого экрана, если это необходимо для выполнения работ.
Проброс портов дает определенные возможности, но в глобальном смысле лучше поднять сервер SOCKS и использовать его для доступа в другие подсети.
#Внутрянка #RedTeam #PurpleTeam
Движение по сети межу хостами в сегментированной сети может быть затруднительной задачей. Например, хост необходимый для выполнения работ, может находиться в другой подсети и правила межсетевого экрана ограничивают туда доступ. Или есть правила межсетевого экрана разрешают доступ только с определенных адресов. Если был обнаружен терминальный сервер с доступом в другую подсеть или разрешающим правилом межсетевого экрана, то проблемы нет. Можно зайти этот терминальный сервер по RDP и продолжаем работать, а вот если это рабочая станция, где работает пользователь и нельзя прерывать его работу, то возникает не большая проблема. Ее можно решить с помощью проброса портов.
Проброс портов можно выполнить с помощью
portproxy
в netsh
. Для настройки netsh
требуются права локального администратора, а также должна быть включена служба iphlpsvc
. Проверить службу можно с помощью командыGet-Service iphlpsvc
Правила проброса портов можно создавать между адресами IPv4 и IPv6, для этого существуют опции
v4tov6
, v6tov4
, v4tov4
и v6tov6
.В качестве примера выполним проброс порта для RDP:
netsh interface portproxy add v4tov4 listenaddress=10.10.10.10 listenport=4444 connectaddress=192.168.56.10 connectport=3389
• listenaddress – адрес, к которому будет выполняться подключение
• listenport – порт, на который будет выполняться подключение
• connectaddress – адрес, на который будет перенаправляться трафик
• connectport – порт, на который будет перенаправляться трафик
Теперь можно запустить RDP клиент и выполнить подключение:
mstsc.exe /v:10.10.10.10:4444
Посмотреть правила проброса портов можно с помощью команды
netsh interface portproxy show all
Изменить настройки перенаправления портов можно заменив параметр
add
на set
и поменять необходимые параметры в команде, представленной выше.После выполнения работ необходимо удалить созданное правило проброса портов
netsh interface portproxy delete v4tov4 listenport=4444 listenaddress=10.10.10.10
А если правил было несколько, то можно удалить их все одной командой:
netsh interface portproxy reset
Этот способ можно использовать для обхода локальных правил межсетевого экрана, если это необходимо для выполнения работ.
Проброс портов дает определенные возможности, но в глобальном смысле лучше поднять сервер SOCKS и использовать его для доступа в другие подсети.
#Внутрянка #RedTeam #PurpleTeam