Nieko╡ko krokov k zv²╣eniu bezpeΦnosti Linuxu Slackware 3.4 |
⌐tefan ⌐imko, 4. b°ezna 1998 |
Za bezpeΦnos╗ budem v tomto Φlßnku pova╛ovat s·bor opatrenφ
zabezpeΦuj·cich, ╛e nikto nezφska kontrolu nad mojim poΦφtaΦom,
neznefunkΦnφ ho ani ho nepou╛ije k ·toku na in² systΘm. Tento Φlßnok
je zameran² na Slackware 3.4. VΣΦ╣ina krokov, ktorΘ teraz uvediem, sa
net²ka len Slackware, ale Linuxu v╣eobecne. Slackware je jedna
z najznßmej╣φch a najpou╛φvanej╣φch distrib·ciφ Linuxu. Je udr╛iavan²
na Walnut Creek. Jeho domßci archφv je na ftp.cdrom.com a mß
mno╛stvo mirrorov. Zak·pi╗ sa dß na www.cdrom.com,
www.lsl.com, www.cheapbytes.com. Na posledn²ch dvoch
stojφ len 2 - 3 dolßre, av╣ak s po╣tovn²m a clom sa m⌠╛e predra╛i╗ aj
na viac ako 500 Sk.
- Nastavenie rootovho hesla. Toto je ve╡mi d⌠le╛itΘ, preto╛e jeho
vlastnφk mß ·pln· kontrolu nad systΘmom. Heslo by malo ma╗
prinajmen╣om 6 znakov, odpor·Φam v╣ak 8, malo by obsahova╗ ve╡kΘ, malΘ
pφsmenß, Φφsla a vhodn² je aj nejak² nealfanumerick² znak. Nemalo by
to by╗ ╛iadne zrozumite╡nΘ slovo ani rodnΘ Φφslo. HackerskΘ slovnφky
a programy sa takisto vedia vyrovna╗ aj so substit·ciami typu L - 1, E
- 3, O - 0 a podobne.
- Odstrßnenie bugov dodßvan²ch v distrib·cii. Slackware 3.4 sa
dodßva s bugov²m dillon crontab/crond. Po in╣talßcii hned nahradφme
cel² balφk bin.tgz za nov² patchnut² z adresy
ftp://ftp.cdrom.com/pub/linux/slackware-3.4/slakware/a2.
Ak mienime vyu╛φva╗ POP3, je vhodnΘ namiesto dodßvanΘho pou╛i╗ nejak²
in², dobrΘ sk·senosti mßm s qpopperom, ktor² sa dß nßjs╗
na adrese http://www.eudora.com/freeware/qpop.html.
- Vyhodenie zbytoΦn²ch daemonov z /etc/rc.d/rc.*. Obzvlß╣╗
sendmail a sie╗ovφ daemoni v rc.inet2. ╚o naozaj
nepotrebujeme, to nemß zmysel sp·╣╗a╗ a ochrßnime sa aj pred rizikom,
ze niekedy v bud·cnosti sa objavφ exploit prßve na na╣u verziu
daemonov. Zßrove≥ aj ╣etrφme pamΣ╗ servera.
- To istΘ pre slu╛by a daemonov v /etc/inetd.conf. Slu╛by,
ktorΘ sme ponechali, by mali by╗ oklie╣tenΘ pomocou /usr/sbin/tcpd TCP wrappera.
- Nastavenie sie╗ov²ch prφstupov²ch prßv pre slu╛by, ktorΘ sme
nechali v /etc/inetd.conf. Robφ sa to pomocou konfiguraΦn²ch
s·borov /etc/hosts.allow a /etc/hosts.deny, ktorΘ s·
konfiguraΦnΘ s·bory tcpd. ╚φm menej poΦφtaΦom alebo sie╗am
povolφme prφstup, t²m menej ╡udφ mß prφle╛itos╗ na nßs ·toΦi╗.
- Okam╛it² prechod na kernel aspo≥ 2.0.33. Predchßdzaj·ce verzie
obsahuj· bugy v TCP/IP implementßcii, ktorΘ umo╛≥uj· hocikomu zo siete
zhodi╗ Linux a t²m mu znemo╛ni╗ poskytova╗ slu╛by (Denial Of
Service Attack). ╚o sa t²ka kernelu, nezmeni╗ nastavenie Drop
Source-routed Frames, ktorΘ chrßni ostatnΘ poΦφtaΦe od ·tokov cez nß╣
poΦφtaΦ.
- In╣talßcia najnov╣ej verzie sendmailu
z http://www.sendmail.org/. Obzvlṻ
d⌠le╛itΘ, preto╛e sendmail je ve╡mi komplexn² program pln² bugov. Napriek tomu je v╣ak Φasto
nutnΘ ho pou╛i╗, preto je d⌠le╛itΘ ma╗ nain╣talovan· posledn· verziu.
- In╣talßcia ssh alebo inΘho programu zabezpeΦuj·ceho, ╛e heslß ani
╛iadna komunikßcia nejde po sieti neza╣ifrovanß.
- Odstrßnenie identifikaΦn²ch znakov Linuxu. Ak neprezradφme, ╛e pou╛φvame
Linux, vyhneme sa ·tokom typu: "Je nov² exploit na Linux, vyhladajme v╣etky
Linuxy na dosah a hacknime ich". Ako sa dß nßjs╗ Linux? Pomocou login bannerov
v /etc/issue.net, pomocou SNMP, sendmail, ftpd at∩., pomocou
hrd²ch bannerov "Linux inside" na WWW strßnkach a hlavne pod╡a mena servera,
ako naprφklad linux.na.univerzite.sk, Φo umo╛≥uje skutoΦne masovΘ
automatickΘ h╡adanie Linuxov.
Trvalo udr╛ate╡nß bezpeΦnos╗
- Nain╣talova╗ software, ktor² pravidelne (z cronu)
kontroluje bezpeΦnos╗ systΘmu. Naprφklad kontrolu setuid programov,
privilΘgii a vlastnφctva systΘmov²ch s·borov vykonßva cops.
Dobr² program na kontrolu zmien r⌠znych parametrov s·borov, ako
Φasu vytvorenia, poslednej zmeny, poslednΘho prφstupu, dσ╛ky, zmeny
obsahu at∩. je tripwire (obidva najdete na adrese
http://www.cert.org/). Tripwire treba
nakonfigurova╗ aby monitoroval tie s·bory ktorΘ potrebujeme. Databßzu
kontroln²ch s·Φtov si treba skopφrova╗ na nejak² in² poΦφtaΦ, aby
hackeri po zmene s·borov nevykonali update datßbazy. Pravidelne
kontrolova╗ heslß u╛φvate╡ov pomocou programu crack. Napφsa╗ si
alebo pohlada╗ nejak· kontrolu /var/log/syslog na zlΘ pokusy o su,
/var/adm/wtmp na ne╣tandardnΘ adresy.
- Sledova╗ diskusnΘ skupiny a mailing listy zameranΘ na bezpeΦnos╗,
napr. bugtraq, linux-security, CERT
advisories, SNI advisories, L0pht advisories.
- Pou╛φva╗ ╗a╛kΘ heslß, ktorΘ sa nedaj· uhßdnu╗, odpor·Φa sa aspo≥ jeden
nealfanumerick² znak, ve╡kΘ, malΘ pφsmenß a Φφsla.
- Nedßva╗ SUID bit programom, ktorΘ ho nepotrebuj· alebo bez ktor²ch sa
zaobφdeme.
- UΦi╗ sa, uΦi╗ sa, uΦi╗ sa, stßle je nieΦo novΘ. Nenecha╗ sa
ukolφsa╗ pocitom, ╛e sme spravili v╣etko a ╛e sme dobrφ (tu╣φm som
za╣iel do ideol≤gie).
Paranoia
Ak mßte temnΘ tu╣enie, ╛e to stßle nestaΦφ a nem⌠╛ete sa zbavi╗
pocitu, ╛e niekto ide po vßs, m⌠╛te naprφklad preventφvne upravi╗ svoj
kernel:
- Vyhodi╗ z drivera sie╗ovej karty k≤d prepφnaj·ci
do Promiscuous Mode, ktor² umo╛≥uje odchytßva╗ z ethernetu
packety. Takto dos╗ s╗a╛φte niekomu, kto hackol vß╣ poΦφtaΦ, ·toky
na ∩a╡╣ie poΦφtaΦe pomocou zachyten²ch hesiel.
- Vyhodi╗ pou╛φvanie modulov.
- Nastavi╗ v kerneli kv≤ty na poΦet procesov, u╛φvate╡ov, proces/u╛φvate╡,
pamΣ╗/proces at∩., aby nßm u╛φvatelia nemohli zhodi╗ systΘm obyΦajn²m programom
alokuj·cim pamΣ╗ alebo procesy.
- Vykona╗ zopßr patchov (nßpady pod╡a Phracku 52 - http://www.phrack.com/52/):
- Znemo╛ni╗ userom vidie╗ info o procesoch (dobr² nßpad).
- Znemo╛ni╗ exec in²ch fajlov ako boli explicitne povolenΘ
(dos╗ re╣triktφvne).
- Ochrana pred ·tokmi s pretekaj·cim bufferom.
- Rozvrstvenie prßvomocφ na niektorΘ operßcie (potom netreba
root privs) vytvorenφm ╣pecißlnych groups na bindovanie na port <
1024, vytvßranie raw socketov.
|