Я пытаюсь выполнить атаку переполнения буфера на программу для назначения класса.И программа атаки, и уязвимая программа написаны мной.
Уязвимый код использует scanf
для чтения данных из стандартного ввода.
./vulnerable < malicious_payload_file.txt
работает нормально.more malicious_payload | ./vulnerable
и echo JUNK_JUNK_JUNK_JUNK | ./vulnerable
также работают, как и ожидалось.
Однако я хотел бы использовать программу атаки, чтобы постепенно увеличивать полезную нагрузку до тех пор, пока не произойдет сбой программы.Итак, мне нужно динамически генерировать большие полезные нагрузки мусора.Я использую system ("./vulnerable");
для многократного вызова и проверки на ненормальный выход.
Как мне указать такую полезную нагрузку?
Есть ли способ запустить ./vulnerable < malicious_payload_binary
или каким-либо другим образом такойчто мне не нужно помещать вредоносную полезную нагрузку в файл, но я могу указать ее в командной строке?