Piranha / LVS monitoring script problem

Ladislav Vaiz spam na nagano.cz
Pondělí Září 2 18:23:49 CEST 2013


Ahoj,
útočník může místo souboru v /tmp vytvořit symlink někam, kam sám 
zapisovat nemůže, ale skript ano. Při spuštění skriptu se pak do tohoto 
souboru zapíše.
Může třeba udělat ln -s /etc/rc.local /tmp/result.txt a ovlivněním 
výstupu skriptu se stává rootem.
L.


msk.conf napsal(a):
> Ahoj,
>
> neni problem zapisovat do /tmp, problem je v tom, ze si zvolil fixne 
> meno suboru (wget -q -O /tmp/result.txt), takze ked sa zidu 2 scripty 
> (alebo jeden vo viac threadoch), zapisujuce do rovnako pomenovaneho 
> suboru, tak mas o zabavne vecery postarane.
>
> http://www.cyberciti.biz/tips/shell-scripting-bash-how-to-create-temporary-random-file-name.html 
>
>
> msk
>
>
>> Sice jsem to nahradil, ze uz nepotrebuju ukladat do toho souboru, ale 
>> i tak by me zajimalo, proc je nebezpecne ukladat do /tmp. A kam mam 
>> pripadne ukladat soubor, kdyz potrebuju neco takhle zpracovavat? Kdyz 
>> je navic ten stroj za firewallem a krome toho balanceru tam zadne 
>> sluzby nebezi ... Nechci polemizovat o nebezpecnosti, opravdu mi 
>> chybi znalosti a rad bych vedel, proc to nedelat.
>>
>> Diky
>>
>> Honza
>>
>> -----Original Message-----
>> From: linux-bounces na linux.cz [mailto:linux-bounces na linux.cz] On 
>> Behalf Of Pavel Kankovsky
>> Sent: Sunday, August 25, 2013 12:22
>> To: Diskuse o Linuxu v cestine
>> Subject: Re: Piranha / LVS monitoring script problem
>>
>> On Sat, 17 Aug 2013, Kovar Honza wrote:
>>
>>> #!/bin/bash
>>> wget -q -O /tmp/result.txt -nc --no-check-certificate
>>> https://$1:$2/owa if grep -q "<title>Outlook Web App</title>"
>>> /tmp/result.txt then  echo "OK"
>>> else
>>>   echo "FAILED"
>>> fi
>>> rm -f /tmp/result.txt
>>>
>>> Zjistil jsem, ze pokud zakomentuju posledni radek, tak jeden server se
>>> chytne. Pokazde jiny, resp nahodne.
>>
>> Zapisovat do souboru s predikovatelným (v tomto případě zcela fixním) 
>> jménem v /tmp... řád žonglujete s odjištěnými granáty?
>>
>> Tady bych hádal, že skript to spouští na oba cíle paralelně a oba 
>> procesy se pak přetahují o /tmp/result.txt: první si tam něco zapíše, 
>> druhý mu to začne přepisovat, tak mu to ten první vrátí tím, že 
>> soubor smaže.
>> Když jste odstranil "rm", tak v souboru aspoň zůstal druhý výsledek a 
>> jeden z testů už prošel. Když jste zcela odstranil použití dočasného 
>> souboru, tak byl problém eliminován zcela.
>>
>
> _______________________________________________
> Linux mailing list
> Linux na linux.cz
> http://www.linux.cz/mailman/listinfo/linux




Další informace o konferenci Linux