Итак, у меня есть этот генератор хэш exe, в котором я должен найти строку, которая генерирует определенный хэш. Поскольку я знаю длину строки, мне было интересно, возможно, я могу использовать вложенные данные в исполняемый файл. Или, альтернативно, кто-то может сказать мне, как перестроить весь exe, чтобы узнать, как он генерирует хэш.Как вставлять в себя данные в exe?
1
A
ответ
1
Вы можете написать собственную программу для создания строк, которые вы хотите проверить (C#)
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
using (StreamWriter sw = new StreamWriter(@"C:\temp\keys.txt"))
{
for (int i = 0; i < 100; i++)
{
// Replace this line by the string you want to test
var str = Guid.NewGuid();
Console.WriteLine(str);
sw.WriteLine(str);
}
}
}
}
}
затем, используйте команду перенаправления для перенаправления вывода этой консоли App в файл EXE. (См https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/redirection.mspx?mfr=true) не забудьте перенаправить вывод ехе в текстовый файл, если вы хотите сохранить результаты
consoleAppCs.exe | YourExe.exe > "C:\temp\output.txt"
тогда вы будете иметь два текстовых файлов для сравнения в папке c:\temp\
Не усложняйте ? Изучите сборку x86 и используйте OllyDbg для проверки/ввода в исполняемый код вашей программы, чтобы вы могли изучить его и, в конце концов, перепроектировать его. Проще сказать, очень сложно это сделать. –
Ну, моя строка ввода - 13 символов. И у меня есть хеш, который будет сгенерирован после ввода строки, что я хочу знать, это то, что является строкой. Причина У меня есть длина, хэш, который он будет генерировать, и программа, которая генерирует хэш. – wargamer
вы можете направить собственный генератор строк и перенаправить вывод std вашего exe в текстовый файл – Seb