Ata
Intern
- 21 април 2007
- 403
- 1
За да направите програма која ќе може да ја оскористи дупката на некоја апликација за да предизика Buffer Overflows треба да имате многу познавања како од програмирање така и од архитектура на оперативни системи и како работи хардверот т.е процесорот со инструкциите.
Секоја програма како и оперативниот систем која е инсталирана има свој мемориски простое каде што ги запишува вредностите на променливите кои се користат при нејзината работиа. Притоа таа запишува и чита од тој виртуелен дел кој се нарекува бафер.
Целта на Buffer Overflow нападот да внесе(запише) повеќе податоци околку што програмата била дизајнирана да прифати. Дополнителните податоци го overflow-дираат меморискиот регион наречен бафер, со тоа пребришувајќи региони со корисни информации кои апликацијата ги користи. При тоа апликацијата не е свесна за таквата појава, па доколку таа запамтила дека на некоја мемориска локација запишала интеџер вредност таа и ќе очекува таква вредност да прочита и да обработи, но доколку ние со горната постапка запишеме на пример стринг податоци, тогаш кога таа ќе прочита ќе се збуни, нема да знае што да прави и најверијтно ќе падне.
Уште повеќе, може да се направи наместо презапишување на какви било податоци, да се запишат нови инструкции, кои кога апликацијата ги чита ќе и дадат инструкции да изврши нешто друго (пред се нелегално) за што таа не била оригинално напишана и наменета.
Ова во никој случај не претставува наивен напад, и во никој случај не би требало да се претпостави дека поради тоа што бара многу техничко знаење никој не би се мачел да го изведува на некој домашен корисник.
Баш напротив има многу програми напишани специјално да искористат некој познат експлоит на некоја апликација и да направат buffer overflow. Па така постојат многу средношколци што мислат дека се „хакерчиња“ (правилното име им е script kiddies) кои би ги симнале овие програми, и сакајќи да го остварат сонот да станат познат хакер, пред се несакајќи, ќе почнат да чепкаат на програмите додека се онлајн, и пак ќе речам несакајќи ќе предизвикаат пад на системот. Повеќепати реков „несакајќи“ бидејќи обично не се работи за добро образовани деца кои разбираат што и како се случува во позадина, туку гледале некој филм со хакери и сакаат да се пробаат. Но во секој случај многу често тие претставуваат причина за главоболка.
Затоа потребно е редовно да се следат новите верзии или сигурносните пачеви на производителите на софтвер кој ние го користиме и нивно редовно апдејтирање, бидејќи секојдневно се откриваат ранливи делови во апликациите како што и секојдневно се поправаат други.
Секоја програма како и оперативниот систем која е инсталирана има свој мемориски простое каде што ги запишува вредностите на променливите кои се користат при нејзината работиа. Притоа таа запишува и чита од тој виртуелен дел кој се нарекува бафер.
Целта на Buffer Overflow нападот да внесе(запише) повеќе податоци околку што програмата била дизајнирана да прифати. Дополнителните податоци го overflow-дираат меморискиот регион наречен бафер, со тоа пребришувајќи региони со корисни информации кои апликацијата ги користи. При тоа апликацијата не е свесна за таквата појава, па доколку таа запамтила дека на некоја мемориска локација запишала интеџер вредност таа и ќе очекува таква вредност да прочита и да обработи, но доколку ние со горната постапка запишеме на пример стринг податоци, тогаш кога таа ќе прочита ќе се збуни, нема да знае што да прави и најверијтно ќе падне.
Уште повеќе, може да се направи наместо презапишување на какви било податоци, да се запишат нови инструкции, кои кога апликацијата ги чита ќе и дадат инструкции да изврши нешто друго (пред се нелегално) за што таа не била оригинално напишана и наменета.
Ова во никој случај не претставува наивен напад, и во никој случај не би требало да се претпостави дека поради тоа што бара многу техничко знаење никој не би се мачел да го изведува на некој домашен корисник.
Баш напротив има многу програми напишани специјално да искористат некој познат експлоит на некоја апликација и да направат buffer overflow. Па така постојат многу средношколци што мислат дека се „хакерчиња“ (правилното име им е script kiddies) кои би ги симнале овие програми, и сакајќи да го остварат сонот да станат познат хакер, пред се несакајќи, ќе почнат да чепкаат на програмите додека се онлајн, и пак ќе речам несакајќи ќе предизвикаат пад на системот. Повеќепати реков „несакајќи“ бидејќи обично не се работи за добро образовани деца кои разбираат што и како се случува во позадина, туку гледале некој филм со хакери и сакаат да се пробаат. Но во секој случај многу често тие претставуваат причина за главоболка.
Затоа потребно е редовно да се следат новите верзии или сигурносните пачеви на производителите на софтвер кој ние го користиме и нивно редовно апдејтирање, бидејќи секојдневно се откриваат ранливи делови во апликациите како што и секојдневно се поправаат други.