- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
int main(int argc, char *argv[])
{
int i = 0;
char stuffing[36];
for (i = 0; i <= 32; i += 4)
*(long *) &stuffing = 0x8048374 ;
puts(stuffing);
return 0;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−42
int main(int argc, char *argv[])
{
int i = 0;
char stuffing[36];
for (i = 0; i <= 32; i += 4)
*(long *) &stuffing = 0x8048374 ;
puts(stuffing);
return 0;
}
Имея какую-либо прогу с принтфами и сканфами. имея уязвимости этих функций, мы с помощью программы, скомпилированной с этим кодом, произведем атаку на адрес 0x8048374. по этому адресу в программе - оппоненте находится точка входа в функцию, где происходит ввод строки(scanf'ом). введя строку, программа-атакер не даст выйти из функции и снова ударит по адресу входа и так далее....зацикливание.
Это лаба по анализу уязвимостей по. вот не пойму только - 8 раз пройдет цикл, и по идее должен завершиться код, но помню когда делал лабу - сканф вызывался бесконечно при атаке. еще ужасная 7я строка создает жуткое впечатление ничегонепонимания )
11 строчная программа-атакер взломала все программы со scanf'ами в сети пентагона и заставила их выполнять бесконечный цикл!
7я строка действительно странная, видимо i забыли прибавить.
Где здесь с++, idec?
P.S. Если включена рандомизация адресного пространства - удачного взлома ;)
>программа-атакер
Пользуясь случаем, передаю привет всей аудитории журнала ][акир.
>Это лаба по анализу уязвимостей
И конечно же, лаборантам-атакерам.
верней эквивалентно, ибо "снять галку в настройках" - подмножество множества "Отписаться"
>Комментарии (15)
Какие мы нежные.
Кастую в тред педиастра и орлежку.