• Здраво и добредојдовте на форумот на IT.mk.

    Доколку сеуште не сте дел од најголемата заедница на ИТ професионалци и ентузијасти во Македонија, можете бесплатно да се - процесот нема да ви одземе повеќе од 2-3 минути, а за полесна регистрација овозможивме и регистрирање со Facebook и Steam.

Анализа на Buffer Overflow напад.

  • Ја почнал/а темата
  • #1

NIKIHACK

Intern
10 февруари 2008
438
27
www.facebook.com
Анализа на Buffer Overflow напад.


Кој е условот за Buffer Overflow нападо?Говорејки општо
buffer overflow се случувасекогаш кога програмата пишува
повеќе информации во buffeot отколку што има обезбедено
во меморијата.Ова му овозможува на напагачот да ги препише
податоците што ја контролираат патеката за егзекуција на
програмата и да ја превземе контролата на програмата за да
го изврши напагачкиот код наместо кодот на процесот.За тие
што сакаат да знаат како овоа работи,ќе објасниме во
продолжение како сево ова работи.

Програмите напишани во C ,каде се дава повеќе фокус на
програмерската вештина и должината на кодот па потоа на
безбедносниот аспект,се најосетливи на овој вид на напади.
Фактички,во програмерските термини,C јазикот се смета за
многу флексибилен и моќен,но изгледа дека истотака оваа
алатка е доста корисна и може да претставува проблем за
многу програмери почетници.Доволно е да споменеме
интикаторски-базиран повик со директно мемориски означен
мод или текстуален стринг метод.Ова покасно имплицира
ситуација која дури и помегу библиотекините (library)
функциите работејќи на текстуалниот стринг,навистина има
такви кои неможат да ја контролираат должината на
вистинскиот buffer со тоа што станува чувствителен на
преоптеретувањето (overflow) на декларираната должина.

Пред да продолжиме со натамошни анализи на механизмот со
кој се прогресира нападот,да се запознаеме подлабоко
со некои технички аспект во врска со извршувањето на
програмата и функциите за менаџмент на меморијата.

Процес Меморија

Кога се извршува програма,многу комплицирани вредности
се означени во меморијата на добро структуиран начин.

Објаснување:

Текстуалните сегменти го содржат примарниот програмски код,
серија од извршувачки програмски инструкции.Наредниот
сегмент е област на меморија која ги содржи и двете
иницијализирачки и неиницијализирачки глобални податоци.
Неговата големина се доделува при преведувањето
(компајлирањето на програмата).Одејќо подлабоку во
мемориските структури има се повисоки адреси,имаме порции
споделени со стакот и heap,што во свртување,се алоцираат
во стартнотниот прериод.Стакот се користи за зачувување на
функциските call-by аргументи,локалните вредности и
вредностите на селектираните регистри.За да ја алоцира
меморијата,heapот ја користи malloc функцијата или нов
оператор...

Пишувано од мене...
 

Aleks

Gaining Experience
18 мај 2007
5,748
288
Mnogu malku informacii.... Barem da *napisheshe* kako e organiziran stack-ot, FILO strukturata, little endian... Primeri ? Kodovi? Nadja ...

Voved nema tekstov, direktno toa i toa.
 

Fiasco

Gaining Experience
2 март 2008
3,036
203
404
www.igorjanevski.com
Не изгледа како да е пишувано од тебе. Можеби е преведено од тебе, или некој друг... премногу буквално преведено губи смисла, сфаќаш?
 
  • Ја почнал/а темата
  • #6

NIKIHACK

Intern
10 февруари 2008
438
27
www.facebook.com
вака,кога читав за Buffer Overflow,читав се од англиска литература,и од тие знаења и туториали што ги прочтав пробав да склопам нешто,и на некои зборови самиот си давав превод,мегутоа гледам сега дека со тоа се губи смислата на туториалов.....
 

vasildb

Intern
17 април 2007
209
6
вака,кога читав за Buffer Overflow,читав се од англиска литература,и од тие знаења и туториали што ги прочтав пробав да склопам нешто,и на некои зборови самиот си давав превод,мегутоа гледам сега дека со тоа се губи смислата на туториалов.....
Кога читаш, претпоставувам дека го сфаќаш тоа и го пробуваш. И после не мора да го преведуваш, туку ќе ни го раскажеш тоа. И ако си разбрал ќе има смисла.
А вака наместо да помогнеш, на луѓето им даваш погрешни информации, што е полошо од тоа воопшто да не отвориш ваква тема.
 

gOJDO

Illuminator
23 јануари 2008
10,242
16,524
сред село
gOJDO's setup  
Processor & Cooler
Intel со вентилатор
Motherboard
Asus
Storage
полн
PSU
ЕВН Снабдување
RAM
алуминиумски
Video card
Super VGA
Case
closed
Mouse
хрчак домашен
Keyboard
механичка
Audio
сардисаунд
Monitor
телевизор у боја
OS
Windows
Само хакери по форумиве...

Ники хакерот, наместо да се трудиш да ни објансиш што е buffer overflow, зашто најпрво не пробаш да егзекутираш таков код од локација на меморијата која претходно ќе биде жртва на buffer overflow.

Дали некогаш си слушнал за NX bit?
Вграден е во сите x86 процесори произведени во изминативе 5 години и повеќе.
 

Egz0rtus_X

Intern
26 јуни 2008
35
1
Само хакери по форумиве...

Ники хакерот, наместо да се трудиш да ни објансиш што е buffer overflow, зашто најпрво не пробаш да егзекутираш таков код од локација на меморијата која претходно ќе биде жртва на buffer overflow.

Дали некогаш си слушнал за NX bit?
Вграден е во сите x86 процесори произведени во изминативе 5 години и повеќе.
Ова е синоним за “крадецот вели фатете го крадецот“

NX како и се што е поврзано со заштите против buffer overflows е темата која сите ја гледаат како "аdvanced" и кога се зборува за хакинг, а нон-стоп се зборува за едно исто - NX, W^X, ASCII Armored Space, старите типови на ASLR за кои примери можат да се најдат било каде на интернет..

Егзекутираш - Извршуваш, типичен показател за превод без размислување,

"локација на меморијата која претходно ќе биде жртва на buffer overflow" - е тука не можам никако да те сфатам - локација на меморија (?) која претходно (?) ќе била жртва на buffer overflow ?? Да не мислеше за одреден дел од кодот на софтверот во кој постои употреба на ранлива функција, па со тестирање (fuzzing) да се открие истата (или друг метод на софтверско прегледување - auditing), па потоа сам тестирачот да проба да ја експлоатира со примена на различните видови на методи за експлоатација кои постојат.

А инаку за туториалиот од ники - премногу грубо напишано, без ниту еден пример ниту пак се присутни поедноставни објаснувања, како и прегледноста на текстот не е на задоволително ниво...

Но, ако е ова прв ваков текст на македонски - тогаш добро е, за почеток е ок.
 

gOJDO

Illuminator
23 јануари 2008
10,242
16,524
сред село
gOJDO's setup  
Processor & Cooler
Intel со вентилатор
Motherboard
Asus
Storage
полн
PSU
ЕВН Снабдување
RAM
алуминиумски
Video card
Super VGA
Case
closed
Mouse
хрчак домашен
Keyboard
механичка
Audio
сардисаунд
Monitor
телевизор у боја
OS
Windows
На брзина го напишав постот погоре, без да му посветам внимание.

Точно, execute не значи да егзекутира, но јас разговорно го велам "егезекутира", па така и сум се изразил.

Што се однесува до коментарот за меморијата, локацијата и др. навистина нејасно сум се изразил. Сакав да му кажам да проба да симулира buffer overflow attack на не многу стар компјутер, па потоа да пишува на таа тема.
 

BSOD

Intern
5 јуни 2008
709
46
Пишувано од мене...
Ептем многу "хакери" на форумов. Една од најважните работи - кога веќе се нафати да пишуваш - е да дадеш информација за твоите извори(два минимум), па да му дадеш тежина на "анализата". Нормално, можеш да наведuваш твое мислење, да се согласуваш или не со изворите кој што користиш итн. Тоа можеби е само пишувано од тебе ама тоа не значи ништо
 

Нови мислења

Последни Теми

Статистика

Теми
43,728
Мислења
856,159
Членови
29,737
Најнов член
M123xyz
На врв Дно