[[oktatas:linux|< Linux]]
====== Lyuk ======
===== Jelszó paraméterként =====
==== A lyuk ====
Jelszót veszélyes lehet paraméterként megadni, mert az a w parancs kimenetében megjelenik
minden felhasználónak.
A w parancs kimenetében látszik:
andras pts/0 :0.0 18:34 17.00s 0.41s 0.00s /bin/bash ./progi.sh --jelszo=titok
Ha például Mindnight Commanderben indítom, akkor ez probléma megszűnik. A ps ax kimenet azonban
megintcsak visszaadja:
2783 pts/1 S+ 0:00 /bin/bash ./progi.sh --jelszo=titok
Ha egy scriptbe teszem nem segít, mert a ps ax kimenetében szintén látszik.
Persze ehhez el kell kapni azt a pillanatot, amikor a program, vagy script
lefut. Ha futás továbbtart akkor a jelszó biztosan elkapható.
Készítsünk egy scriptet amely 10 percig várakozik:
#!/bin/bash
echo "Várakozsá 10 percig"
sleep 600
Most írjunk egy scriptet, amelyik meghívja a várakozó scriptet megadva a titkos jelszót:
#!/bin/bash
./var.sh --jelszo='titok'
Most indítsuk el a hasznal.sh scriptet, majd keressük meg var.sh futó programot a ps ax kimenetében:
./hasznla.sh
ps ax
==== A folt ====
Az olyan programokat, shell scripteket, amelyek jelszót várnak, inkább kéressük
be. A példa kedvéért a mysql kliens program a jelszót képes felvenni paraméterként:
mysql -u root --password='titok'
De inkább használjuk így:
mysql -u root -p
Így bekéri.
===== A tmp könyvtár =====
==== A lyuk ====
A /tmp könyvtárat minden felhasználó írhatja. Ha írunk egy rövid scriptet, amely
ezt megtölti, akkor a rendszer behal.
==== A folt ====
A tmp könyvtárat tegyük külön partícióra. Ha már használjuk a rendszert,
a /tmp könyvtár külön tehető, hiszen annak tartalma minden újrainduláskor
törlődik.
A csatoláshoz egyszerűen be kell jegyezni a /etc/fstab fájlba.
/dev/sdd1 /tmp ext4 nodev,nosuid 0 0
Esetleg, ha ramdiskként szeretnénk csatolni:
none /tmp tmpfs defaults 0 0