Apache (DELSI)
oldfrog.linux na volny.cz
oldfrog.linux na volny.cz
Středa Říjen 27 12:29:17 CEST 2004
Michal Kubecek wrote:
>On Wed, Oct 27, 2004 at 10:54:01AM +0200, oldfrog.linux na volny.cz wrote:
>
>
>>Uvedu podobne tri priklady. Nasledujici kod
>>
>> if ($authorized) {
>> include "/highly/sensitive/data.php";
>> }
>>
>>obsahuje stejnou chybu jako kod
>>
>> if ($_GET['authorized']) {
>> include "/highly/sensitive/data.php";
>> }
>>
>>Chyba spociva v tom, ze se program rozhoduje na zaklade hodnoty, kterou muze
>>pripadne rucne zadat utocnik. V druhem prikladu muze hodnotu zadat utocnik
>>vzdy
>>
>>
>Problém je ale v tom, že to druhé nikdo nenapíše, protože je z toho na
>první pohled vidět, že se jedná o hodnotu od uživatele. To první už jsem
>několikrát viděl.
>
>
Ano, oba priklady jsou stejne hruzyplne a prave lezi-li takto vedle sebe
vynikne i obludnost toho prvniho - je-li osamocen, neni chyba tak napadna.
>Přirovnal bych to k různým technikám ochrany proti buffer overflow, ať
>už příznak nespustitelnosti u AMD64 nebo různé chytré třídy, které
>hlídají přetečení mezí. Také by se dalo říci, že jsou všechny zbytečné,
>protože je-li program napsán správně, žádný buffer overflow nemůže
>vzniknout. Praxe nás ale opakovaně přesvědčuje, že chyby se dělají.
> Michal Kubeček
>
Zrejme systemovym resenim by bylo zavedeni uplne nezavisleho kanalu,
ve kterem by si skript mohl predavat a udrzovat svuj stav. Je to porad stale
tataz snaha realizovat perzistenci v ramci nestavoveho webu.
--
------------------------------
Ondrej Nemecek alias 'OldFrog'
tel (domu): 241766035
tel (prace): 222090711
tel (mobil): 775046246
icq: 250163477
------------------------------
Další informace o konferenci Linux