Re: lug-bg: LINUX SEMINAR 2001
- Subject: Re: lug-bg: LINUX SEMINAR 2001
- From: boukov@xxxxxxxxxxx (Petko Boukov)
- Date: Thu, 12 Apr 2001 01:05:33 -0700
('binary' encoding is not supported, stored as-is)
Shte kazha dve dumi za prepylvaneto na buferite v programi, pisani na
C, ponezhe nqma da moga da dojda na seminara.
Eksploatiraneto na losho napisani programi e opisano v stanalata
klasika statiq na Aleph One 'Smashing the Stack for Fun and Profit'
vyv phrack.com.
Kak mozhem (pone otchasti) da se predpazim?
Ako se pishe na C, ne biva _nikoga_ da se izpolzvat funkciite strcpy,
strcat, sprintf i gets. Te ne proverqvat dali ne se pishe izvyn
zadadeniq bufer i pozvolqvat zamazvane na pamet, koqto se namira izvyn
bufera. Vmesto tqh trqbv da se izpolzvat slednite zamestiteli:
strcpy - strncpy
strcat - strncat
sprintf - snprintf
gets - fgets
Funkciite-zamestiteli imat po edin dopylnitelen argument, zadavasht
goleminata na bufera. Ako vidite 'Segmentation fault. Core dumped',
znachi programistyt ne si e svyrshil kakto trqbva rabotata. Za
programata nevalidnite vhodni danni ne mozhe da sa opravdanie za
nepredskazuemo povedenie, taka kakto za OS ne mozhe da e opravdanie da
zabie, zatova, che nqkoq programa e zabila.
Perl naprimer sledi za izlizaneto izvyn ramkite na daden masiv. Ako
toj se systoi ot 10 elementa, a se adresira element s indeks 100,
masivyt avtomatichno stava po-golqm ili raven na 101 elementa (v
zavisimost ot tova s kolko elementa narastva po podrazbirane).
Petko
>Date: Wed, 11 Apr 2001 19:21:46 +0300 (EEST)
>From: "Stanislav Lechev (AngelFire)" <firedust@xxxxxxx>
>To: <lug-bg@xxxxxxxxxxxxxxxxxx>
>Subject: Re: lug-bg: LINUX SEMINAR 2001
>Reply-To: lug-bg@xxxxxxxxxxxxxxxxxx
>
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>towa koeto imah predwid e ne samo security kato cqlo
>a i da se obyrne malko wnimanie na towa :
>
>kakwo e buffer overflow
>kak rabotqt exploitite
>i kak da pishem programi bez da dopuskame takiwa greshki
>mislq che e edna mnogo interesna tema ako nqkoj se e zachital :)
------------------------------------------------------------
--== Sent via Deja.com ==--
http://www.deja.com/
===========================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers)
http://www.linux-bulgaria.org/ Hosted by Internet Group Ltd. - Stara Zagora
|