Paul Troncone and Carl Albing Cybersecurity Ops with bash Attack, Defend, and Analyze from the Command Line



Download 4,82 Mb.
Pdf ko'rish
bet167/206
Sana29.03.2022
Hajmi4,82 Mb.
#515317
1   ...   163   164   165   166   167   168   169   170   ...   206
Bog'liq
Bash и кибербезопасность Атака, защита и анализ из командной строки


Глава 15. Инструмент: Fuzzer 
227
Как.говорилось.раньше,.аргумент,.который.вы.хотите.изменить,.обозначается.зна-
ком.вопроса.(
?
)..
Fuzzer.sh
.будет.выполнять.программу.
fuzzme.exe
.снова.и.снова,.
каждый.раз.добавляя.ко.второ.му.аргументу.еще.один.символ..Если.это.делать.вруч-
ную,.вы.увидите.следующее:
$ fuzzme.exe arg1 a
$ fuzzme.exe arg1 aa
$ fuzzme.exe arg1 aaa
$ fuzzme.exe arg1 aaaa
$ fuzzme.exe arg1 aaaaa
.
.
.
Реализация
В.качестве.целевого.приложения.используется.программа.
fuzzme.exe
..Мы.возьмем.
два.аргумента.командной.строки,.объединим.их.и.выведем.объединенную.строку.
на.экран..Вот.пример.выполнения.программы:
$ ./fuzzme.exe 'this is' 'a test'
The two arguments combined is: this is a test
Пример.15.1.предоставляет.исходный.код.для.
fuzzme.exe
,.написанный.на.языке.С.
Пример 15.1.
fuzzme.c
#include
#include
// Внимание: эта программа не безопасна и предназначена
// только для демонстрации
int main(int argc, char *argv[])
{
char combined[50] = "";
strcat(combined, argv[1]);
strcat(combined, " ");
strcat(combined, argv[2]);
printf("The two arguments combined is: %s\n", combined);
return(0);
}
Программа.использует.функцию.
strcat()
,.которая,.по.своей.сути,.небезопасна.
и.может.привести.к.переполнению.буфера..Кроме.того,.она.не.выполняет.проверку.
ввода.из.командной.строки.


228
Часть III • Тестирование на проникновение
STRCAT
Почему.же.функция.С.
strcat
.может.переполнить.буфер?.Поскольку.
strcat
.копи-
рует.одну.строку.(источник).в.конец.другой.строки.(назначение),.функция.не.знает,.
какой.объем.памяти.доступен.в.месте.назначения..Независимо.от.того,.сколько.байт.
находится. или. сколько. места. доступно. в. месте. назначения,. функция. копирует. из.
источника.байт.за.байтом.до.тех.пор,.пока.не.столкнется.с.нулевым.байтом..В.резуль-
тате.
strcat
.может.скопировать.в.место.назначения.слишком.много.данных.и.пере-
записать.другие.разделы.памяти..Опытный.злоумышленник.может.воспользоваться.
этим.свойством.функции.для.внедрения.в.память.вредоносного.кода,.который.впо-
следствии.будет.выполняться.компьютером.
Более.безопасной.функцией.является.
strncat
,.требующая.от.вас.указать.параметр,.
который. ограничивает. количество. копируемых. байтов.. В. этом. случае. вы. будете.
знать,.что.в.строке.назначения.останется.достаточно.места.
Полное.объяснение.механизма.переполнения.буфера.выходит.за.рамки.этой.книги,.
но. мы. вам. настоятельно. рекомендуем. прочитать. статью.
Smashing The Stack for Fun 
and Profit
.(
http://bit.ly/2TAiw1P
).
В.примере.15.1.переменная.
combined[]
.имеет.максимальную.длину.50.байт..
Вот.что.происходит,.если.комбинация.двух.аргументов.программы.слишком.ве-
лика.для.хранения.в.переменной:
$ ./fuzzme.exe arg1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
The two arguments combined is: arg1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Segmentation fault (core dumped)(Ошибка сегментации (сбросить ядро))
Как.вы.можете.видеть,.данные.переполнили.пространство,.выделенное.в.памяти.
для.
combined[]
,.и.вызвали.сбой.программы.из-за.ошибки.сегментации..Факт.сбоя.
программы.означает,.что.она.не.выполняет.нормальную.проверку.ввода.и.может.
быть.уязвима.для.атаки.
Метод.
fuzzer
.предназначен.для.автоматизации.процесса.идентификации.областей.
целевой.программы,.выходящих.из.строя.из-за.недопустимого.ввода.
Реализация.этого.метода.показана.в.примере.15.2.

Download 4,82 Mb.

Do'stlaringiz bilan baham:
1   ...   163   164   165   166   167   168   169   170   ...   206




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish