Вопрос Как парсить байты с сайта в ммап инжект?

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
11 Июн 2021
Сообщения
40
Реакции
4
UPD 2: короче я еблан и сделал что-то не так, вопрос теперь заключается в том, что как можно сделать побайтовый инжект дллки (инжект уже готов, осталось байты парсить).

У меня есть строка:
string byte = "0xCC, 0xAA....."

Мне надо из строки сделать следующее:
BYTE bytes[] = {0xCC, 0xAA.....}

Как это можно реализовать? Или же, можете пожалуйста скинуть код, на побайтовый инжект дллки методом мануал мап (метод уже готов, осталось ток байты парсить).

UPD: теперь новая проблема, необходимо всё содержиое из массива char* перенести в массив BYTE*. В МАССИВЕ CHAR* НЕ ТЕКСТ, ТАМ ЛЕЖАТ БАЙТЫ. МНЕ НЕ НАДО ПРЕОБРАЗОВЫВАТЬ ТЕКСТ В БАЙТЫ.
 
Последнее редактирование:
HxD в помощь.
А в чём проблема заменить string на BYTE и убрать кавычки и добавить скобки?
 
HxD в помощь.
А в чём проблема заменить string на BYTE и убрать кавычки и добавить скобки?
Я получаю байты с сайта в строке, а как получить байты с сайта в массиве байтов я в душе не ебу
 
Я получаю байты с сайта в строке, а как получить байты с сайта в массиве байтов я в душе не ебу
Так переделай в байты? Открываешь обычный блокнот или notepad++, кидаешь туда строку свою и начинаешь заменять все кавычки.
Если не хочешь ипаться - hxd.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
std::string str = "yourstr";
BYTE byte[7];
strcpy(byte, str.c_str());

может быть поможет
 
C++:
Expand Collapse Copy
std::string str = "hello";
BYTE byte[6];   // null terminated string;
strcpy(byte, str.c_str());  // copy from str to byte[]
ref:
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
У меня есть строка:
string byte = "0xCC, 0xAA....."

Мне надо из строки сделать следующее:
BYTE bytes[] = {0xCC, 0xAA.....}

Как это можно реализовать? Или же, можете пожалуйста скинуть код, на побайтовый инжект дллки методом мануал мап (метод уже готов, осталось ток байты парсить).
Вбей в гугл на английском, первая ссылка - решение твоего вопроса.
 
Так переделай в байты? Открываешь обычный блокнот или notepad++, кидаешь туда строку свою и начинаешь заменять все кавычки.
Если не хочешь ипаться - hxd.
Мне нужна максимальная защита. Если я буду так делать, то достаточно узнать путь, заморозить процесс пока не удалился файл и спизидть все байты к хуям
C++:
Expand Collapse Copy
std::string str = "hello";
BYTE byte[6];   // null terminated string;
strcpy(byte, str.c_str());  // copy from str to byte[]
ref:
Пожалуйста, авторизуйтесь для просмотра ссылки.
Тут есть строка "hello", а у меня в строке записаны байты. Грубо говоря, мне надо string сменить на BYTE[]
 
Так переделай в байты? Открываешь обычный блокнот или notepad++, кидаешь туда строку свою и начинаешь заменять все кавычки.
Если не хочешь ипаться - hxd.
Так он получает свой длл от сервера в string
 
Вбей в гугл на английском, первая ссылка - решение твоего вопроса.
Я не могу правильно сформулировать свой вопрос. На всех сайтах, которые у меня выходят, есть перевод из текста в байты.
 
C++:
Expand Collapse Copy
std::string str = "hello";
BYTE byte[6];   // null terminated string;
strcpy(byte, str.c_str());  // copy from str to byte[]
ref:
Пожалуйста, авторизуйтесь для просмотра ссылки.
1626951994537.png

C++:
Expand Collapse Copy
std::string str = "hello";
BYTE byte[6];   // null terminated string;
strcpy(byte, str.c_str());  // copy from str to byte[]
ref:
Пожалуйста, авторизуйтесь для просмотра ссылки.
1626952567277.png

Как можно это пофиксить? Байты он успешно записывает в массив, только я хз в чём проблема
 
Последнее редактирование:
Теперь новая проблема, необходимо всё содержиое из массива char* перенести в массив BYTE*. В МАССИВЕ CHAR* НЕ ТЕКСТ, ТАМ ЛЕЖАТ БАЙТЫ. МНЕ НЕ НАДО ПРЕОБРАЗОВЫВАТЬ ТЕКСТ В БАЙТЫ.
 
В каком виде? \x00\x00? Тогда просто (BYTE*)array
 
Ой бля что я написал, нет разницы между записью символов и \x00, наверно. Крч поебать, все равно, если ты получаешь байты в char массиве, то тебе остается просто кастнуть в byte массив, даже необязательно наверн.
1626959584254.png

Ты уверен, что у тебя хватает места в массиве? Как и что ты записываешь в буффер?
И такой вопрос, ты создаешь длл-ку где-то, или я чёта не понял?
1626959795497.png


Дохуя хуйни написал потому что не знаю как это на родном русском языке объяснить. Помощь - не моё.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
UPD 2: короче я еблан и сделал что-то не так, вопрос теперь заключается в том, что как можно сделать побайтовый инжект дллки (инжект уже готов, осталось байты парсить).

У меня есть строка:
string byte = "0xCC, 0xAA....."

Мне надо из строки сделать следующее:
BYTE bytes[] = {0xCC, 0xAA.....}

Как это можно реализовать? Или же, можете пожалуйста скинуть код, на побайтовый инжект дллки методом мануал мап (метод уже готов, осталось ток байты парсить).

UPD: теперь новая проблема, необходимо всё содержиое из массива char* перенести в массив BYTE*. В МАССИВЕ CHAR* НЕ ТЕКСТ, ТАМ ЛЕЖАТ БАЙТЫ. МНЕ НЕ НАДО ПРЕОБРАЗОВЫВАТЬ ТЕКСТ В БАЙТЫ.
Как ты получаешь файл с сайта?
От этого зависит дальнейший исход.
C++:
Expand Collapse Copy
char* ch = new char[file_size];//чистые байты
char* buf3 = new char[file_size+400];
char* temp = new char[file_size + 400];

        int control = 0;
        int status;
        while (1)
        {
            status = SSL_read(..........);
            if (status == 0) {break; }
            if (status < 0)
            {
                status = SSL_get_error(sslSocket, status);   
                pSleep(1);
                continue;
            }
            memmove(temp + control, buf3, sizeof(buf3));
            control = control + sizeof(buf3);
        }

char* c = strstr(temp, "MZ");
if (c) { memmove(ch, c, file_size); }

file_size - размер файла
ch -тут будет по атому адресу дллка лежать.
 
Последнее редактирование:
Как ты получаешь файл с сайта?
От этого зависит дальнейший исход.
C++:
Expand Collapse Copy
char* ch = new char[file_size];//чистые байты
char* buf3 = new char[file_size+400];
char* temp = new char[file_size + 400];

        int control = 0;
        int status;
        while (1)
        {
            status = SSL_read(..........);
            if (status == 0) {break; }
            if (status < 0)
            {
                status = SSL_get_error(sslSocket, status);  
                pSleep(1);
                continue;
            }
            memmove(temp + control, buf3, sizeof(buf3));
            control = control + sizeof(buf3);
        }

char* c = strstr(temp, "MZ");
if (c) { memmove(ch, c, file_size); }

file_size - размер файла
ch -тут будет по атому адресу дллка лежать.
Немного не понял что указывать в SSL_read, ибо никогда с openssl не работал
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Немного не понял что указывать в SSL_read, ибо никогда с openssl не работал

LIBS := CSSL
#include <openssl/ssl.h>
int SSL_read(SSL *ssl,char *buf,int num)
ssl - A pointer to a token returned on the SSL_new call.
buf - A pointer to the buffer into which to read the data.
num - The maximum number of bytes of data that the application can read.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Назад
Сверху Снизу