December  - Január - Február

    Pred pár týždňami Japonské vládne servery zaznamenali masový hack, kedy sa Japonská vláda ocitla v krízovom stave a zaktivovala množstvo bezpečnostných expertov do pohotovostného stavu. Minulý týždeň populárne komerčné Britské servery zaznamenali hack, kedy sa páchatelia zmocnili niekoľkých tisíc čísel kreditných kariet a odstavili servery na niekoľko dní s prevádzky, pred 5 dňami 22-ročný Bulharský študent Peter Iliev Pentchev hackol počítačový systém komerčnej firmy v Palo Alto v USA, 1800 ukradnutých kreditných čísel si vyvesil na web-stránku a samotnej firme spôsobil škodu cez 100000 dolárov. Situácia za posledné dva týždne ako vidíma je viac ako alarmujúca. Prioritou na prežitie v džungli internetu sa stáva bezpečnosť postavená na prísune najnovších informácii. Situácia vo svete digitálneho internetu vo svete aj na Slovensku je porovnateľná s divokým západom. Zlato ako objekt záujmu vystriedali informácie, pištolníkov hackeri, nabité kolty najnovšie exploity... Čas prežitia v džungli priamo úmerny fyzickej sile jednotlivca, je nahradený rýchlym a hromadným prísunom informácii zo sveta Security. Chcete prežiť?


3. Január 2000
Marc Heuse uvoľnil vlastnú compartment utility (http://www.suse.de/~marc)), jednoduchý wrapper pre 2.2.x kernely na nastavovanie capabilities/chrootu pre wrappovanú binárku.
Kristian Koehntopp našiel chybu v safe_mode v PHP3, cez perlovský popen() je možné spustiť požadovaný príkaz, Kristian uviedol aj príslušný patch.
Pre všetkých priaznivcov Lispu (ja medzi nich nepatrím :-) vyšiel kernelový modul napísaný v Lispe, umožňujúci zabezpečiť UNIXove servery proti vzdialenému exploitovaniu, púšťaním každého suid-daemonu v oddelenom subsystéme. Po exploitnutí daného daemona útočník nebude schopný modifikovať nič mimo svojho subsystému (http://www.intes.odessa.ua/vxe/) (Je to pomalé, odporúčam medúzu, http://fornax.elf.stuba.sk/meduza).

4. Január 2000
K0ad k1d objavil chyby v SolutionScripts CGI balíku, search.cgi sa dá exploitnúť spôsobom, kedy môžeme prezrieť obsah adresárov na cieľovom hoste. Chyba nastáva v dôsledku nedostatočnej kontroly hraníc premennej letter parsovaná search.cgi skriptom. Skript tiež vypíše prvý riadok každého súboru. Táto chyba sa dá využiť na prezrenie obsahu /cgi-bin adresára v Apachovi. Ďalšie menšie problémy sa týkali chyby pre testovaní hraníc ostatných CGI scriptov, ako user_manage.cgi.
L0pht Security zverejnila dieru v userhelperi a PAMkách v RH 6.0/6.1, kedy lokálny užívateľ môže získať roota. Kombináciou userhelpera a PAM sme schopní prinútiť userhelper (pomocou PAM) otvoriť akýkoľvek zdieľaný objekt (ktorý chceme) pod rootom. Exploit je triviálny, pomocou prepínača -w v userhelperi môžeme spustiť ľubovoľný súbor s privilégiami patriacimi PAM. Spustiť môžeme len programy, ktoré sa nachádzajú v /etc/security/console.apps, ale nakoľko môžeme špecifikovať meno, nie je problém spustiť niečo ako ../../../tmp/myprog (použitý strcat()). PAM sa zavolá na spustenie každej binárky, správa sa to rovnako, pozrie do /etc/pam.d. Ak sme umiestnili pam.d konfiguračný súbor do /tmp/myprog, tak môžeme k nemu pristupovať cez /etc/pam.d/../../../tmp/myprog. Do pam.d konfiguračného súboru umiestnime niekoľko sharovaných knižníc na dlopen() (resp. pam autentifikaciu, ked hned po setuid(0) hodim execnutie nejakeho shellu:) a v tomto okamihu dostaneme roota. L0pht security aj Derek Callaway na to vydali pekný exploit. Redhat ešte v ten deň publikovali patchované verzie balíkov usermode a pam.
Vyšiel Syslog-ng (UNIXova náhrada za syslogd) umožňujúci lepšie filtrovanie logovaných hlášok (použitie regexp). Syslog-ng podporuje TCP logforwarding, vrátane hashovania v snahe zabrániť modifikácii jednotlivých riadkov (http://www.balabit.hu/products/syslog-ng/index.html).

7. Január 2000
Solar zverejnil svoj patch na linux kernel 2.2.14 na www.openwall.com.
Vyšla nová verzia Stack Shieldu 0.7. Stack Shield je wrapper na kompiler, umožňujúci kompilovať binárky odolné voči klasickým buffer overflowom (pomocou sekundárneho zásobnika) (http://www.angelfire.com/sk/stackshield/).

8. Január 2000
L0pht Security zverejnili chybu v LPD na Redhat Linuxoch 4.x,5.x,6.x, kedy vzdialený užívateľ môže vykonať ľubovoľný kód na korektne konfigurovanom LPD serveri. Samotný problém v LPD existuje už asi 2 roky, napriek tomu, že je to ťažké a dosť komplexné exploitnúť, táto možnosť tu existuje. Exploit povoľuje ľubovoľnému užívateľovi tlačiť na LPD serveri, resp. vzdialeným spôsobom získať 'bin' užívateľa a 'root' grupu.

  1. LPD povoľuje vzdialeným mašinám tlačiť súbory bez prístupu k LPD, pretože LPD porovnáva reverzne-resolvnuté peer name z prijatej socketovej adresy s výstupnou hodnotou funkciou gethostbyname(), ak sú rovnaké, tak prístup (k LPD) sa zabezpečí bez đalších dotazov. Teda pokým mame prístup k vlastnému DNSku, jednoducho nastavíme spatné reverzné resolvovanie pre našu IPčku, tak aby ukazovala na náš LPD server a bez problémov získame prístup.
  2. LPD povoľuje posielať ľubovoľné množstvo súborov do printer spool adresára.
  3. LPD povoľuje zadať hocičo do 'control' súboru (nazývaného cfXXXX vo /var/spool/lpd//), dokonca názvy mašín, ktoré neexistujú.
  4. LPD povoľuje vykonať zadaný argument k /usr/sbin/sendmail. Je to možné realizovať vtedy, ked chceme aby LPD poslal mejl žiadateľovi printjobu o tom, že bol úspešne ukončený. ('M' v cf súbore). Sendmailový argument pre LPD cf súbor nemusí byť emailová adresa, môže to byť prepínač sendmailu, ako '-C'.
Ľudia s L0phtu zverejnili na to aj exploit, RedHat ešte v ten deň zverejnil opravenú verziu balíkov LPD.

11. Január 2000
Viktor Fougstedt našiel chybu vo verzii MySQL 3.22.29 (a starších). Hocikto s prístupom púšťania MySQL a s príslušnými privilégiami k danej databáze alebo tabuľke, môže zmeniť MySQL heslo (vrátane MySQL superužívateľa). 'Test' užívatelia nainštalovaní MySQL inštalačnými skriptami majú oprávnené privilégia na databázu každého mena začínajúcu s názvom 'test', a môžu využiť túto dieru. 'Test' konto štandartne nemaju nenastavené heslá a pravidlá. Tento problém sa netýka len 'test' užívateľov, chyba sa dá exploitnúť vždy, keđ nejaký užívateľ má oprávnený prístup do MySQL databázy. Táto chyba sa dá čiastočne vyriešiť zlikvidovaním všetkých užívateľov s oprávnenými privilégiami v MySQL (okrem root@localhost). Viktor zverejnil na to rýchly patch.

12. Január 2000
Matt Conover s viacerými spolupracovníkmi dokončil rozsiahly projekt SRS (Secure Remote Streaming). Ide o kompletnú náhradu syslogd, kde sa logovanie prevádzkuje simultánne na viacero bezpečných hostov kryptované cez SSL. Samotný logserver sa automaticky stará o synchronizáciu medzi jednotlivými klientami. SRS je prístupné na http://www.w00w00.org/files/SRS.tgz.
Cesar Tascon objavil chybu v distribúcii Corel Linux v programe Corel Update slúžiaci na obsluhu ".deb" súborov. Chyba je primitívna, samotný Corel Update používa externý cp na kopírovanie bez toho, aby si skontroloval nastavené cesty, kde sa cp nachádza, tým pádom, keđ umiestnime do ~/cp setreuid(0,0), exec("/bin/bash",..0, automaticky sa pustí rootshell.

13. Január 2000
Tonu Samuel z Estónska zverejnil exploit na mSQL (http://www.insecure.org/sploits/mSQL.overflow.and.hostnamespoof.html).
Magosanyi Arpad (tentokrat z Mađarska) zverejnil čiastočne naprogramovanú ssh-gateway http://www.linux.hu/~mag/openssh.prepared.tar.gz.
Hank Leininger vydal špeciálny patch na kernel (http://www.progressive-comp.com/~hlein/hap-linux/), ktorý znemožní stealth scanny na danom hoste (viđ nmap). Funguje to spôsobom, kedy pred prichádzajúcimi paketmi sa skontroluje kernelová state tabuľka (či sa v nej nenachádza aktívne spojenie, resp počúvanie soketu, po skontrolovaní daného flagsetu týkajúci sa daného spojenia v prípade poruchy je paket normálne zrušený a zalogovaný. Teda ak zlyhá 'pozeranie' do našej state-tabuľky (kedy sa normálne pošle RST), spolu s RST je vygenerovaný log message. Niečo podobné sa týka aj nedoručeného UDP trafficu. Týmto spôsobom znemožníme klasický stealth scan.

18. Január 2000
Projekt Nessus - vzdialený security scanner (http://www.nessus.org/posix.html). (Bohužial verzia pod Linuxom beží len v JAVE, nutná java-podpora v kerneli).

19. Január 2000
Zverejnený exploit na SCO UnixWare /usr/bin/ppptalk. SCO tesne pred tým zverejnili patch.
Alec Kosky uvoľnil TCP a UDP logger spojení connlogd (ftp://serpentor.dakotacom.net/connlogd.tar.gz).

20. Január 2000
Uvoľnený Triplight, program na detekciu možných útokov a monitorovanie systému. Predstavuje jednoduchšiu verziu tripwire, napísaný je v perle (http://linux.rice.edu/magic/triplight/).

21. Január 2000
Alfred Perlstein zverejnil neoficiálny patch na FreeBSD kernel http://www.freebsd.org/~alfred/tcp_fix.diff, ktorý bol neodolný voči stream útokom. Stream útok alebo tiež klasický flood je vyvolaný nadmerným množstvom prijatých ACK z náhodnych IP z náhodnými sekvenčnými číslami. Alfred zverejnil aj exploit na streamovanie.
FEAR Advisories zverejnili veľmi nebezpečnú dieru týkajúcu sa BSD systémov s namountovaným /proc filesystemom. V roku 1997 tento problém už existoval a týkal sa zdieľaného systému /proc/pid/mem. Problém sa týka všetkých FreeBSD a OpenBSD distribúcii, v štandartnej inštalácii FreeBSD 3.3 je procfs namountovaný, v štandartnej inštalácii OpenBSD 2.6 nie. Problém z roku 1997 bol jednoznačný, neprivilegovaný proces A forkol proces B. A otvoril /proc/pid-procesu-B/mem. B spustil setuid binárku. Vzhľadom k tomu, že B má odlišný euid ako A, A má stále prístup do pamäte B cez /proc/pid-procesu-B/mem. Tým pádom A môže meniť beh binárky B vo svoj prospech. Súčasný patch na BSD kernel vyžaduje, aby proces p1 a proces p2 mali rovnaký uid, alebo stačí keđ p1 bude mať rootovske privilégia. Teda ak prinútime, aby setuid program X zapisoval do súborového deskriptora F (predstavujúci procfs objekt), daná kontrola neznemožní nášmu X zapisovať. F predstavuje číslo 2 (klasický stderr fileno). Týmto pádom môžeme preniesť setuidovanej binárke lseekovaný súborový deskriptor 2 (patriaci parentu) ukazujúci niekde do /proc/pid/mem a parent naslepo zapíše nejaké errorové hlášky. Samozrejme, že nejaké errorové hlášky môžeme čiastočne ovplyvniť (aby napríklad obsahovali názov súboru), teda môžeme prepísať takmer ľubovoľné dáta v pamäti inej setuidovej binárke. Exploit vyšiel na /usr/bin/passwd (bez menších problémov som to preportoval na /usr/bin/chfn) a v princípe ľubovoľné setuidované binárky môžu byť použité. Patch vyšiel na ftp://ftp.freebsd.org/pub/FreeBSD/CERT/patches/SA-00:02/procfs.patch.

22. Január 2000
Stefan Laudat zverejnil problém týkajúci sa balíku Yellow Pages/NIS štandartne dodávanej k RedHat 6.1. Po štandartnej inštalácii rpc.yppasswd, užívatelia majú použité jednoduché staré 8 znakové DES enkryptovanie hesiel. (Ideálne pre Johna Rippera).
w00w00 Security zverejnili chybu v S/Key & OPIE databáze na platformách BSD/OS, FreeBSD 3.4, Linux (s skey-2.2-1 RPM), každy unix, kde beži skey-2.2. S/Key je špeciálny autentifikačný mechanizmus, ktorý používa jedno-rázové heslá. Na použitie S/Key, admin musí pustiť skeyinit(1), alebo keyinit(1) program - vtedy sa inicializujú položky v užívateľskej S/Key databáze /etc/skeyskeys. OPIE (One-time Passwords In Everything) je niečo na spôsob S/Key s pár vylepšeniami, ale samotná obsluha je v princípe rovnaká (nové uživateľské položky sa vytvoria cez opiepasswd(1), databáza je uložená v /etc/opiekeys). Problém je v skeyinit(1), keđ sa zavolá libskey funkcia skeylookup(). Ak neexistuje /etc/skeykeys databáza, tak sa vytvorí s atribútmi 644 (prístupné na čítanie všetkým). Pri Opie je tento problém úplne rovnaký ako pri Skey, ak neexistuje /etc/opiekeys, tak sa vytvorí tiež s atribútmi 644. Tým pádom lokálni užívatelia majú prístup na čítanie obsahu /etc/skekeys súboru (tam sú MD5 enkryptované heslá). Rýchly patch je primitívny: chmod 600 /etc/skeykeys /etc/opiekeys.
w00w00 Security zverejnili chybu v qmail-pop3d s vpopmail/vchkpw. qmail-pop3d môže predať dlhý príkaz samotnéj 'heslovej' autentifikačnej službe. Keđ sa na autentifikáciu užívateľa použije vpopmail, vzdialený útočník môže získať uid, pod ktorým beží vpopmail (štandartne root). Exploit prístupny na http://www.ktwo.ca/security.html. Vpopmail je schopný spracovať viac ako 40 znakov dlhého argumenty, čím porušuje POP3 štandart daný RFC1939. Patch prístupny na http://www.ktwo.ca/c/qmail-popup-patch.
Nová verzia Apache 1.3.11 prístupna na http://www.apache.org.

23. Január 2000
Zverejnený projekt Bastilla Linuxu, umožňujúci aj 'bezpečnostými' laikom bežať na veľmi bezpečnej distribúcii Linuxu. Post program spustený hneď po inštalácii RedHat 6.0 nájdeme na http://sourceforge.net/download.php/bastille-linux/Bastille-1.0.2.tar.
Nová verzia strace (ftp://oss.software.ibm.com/linux390).

24. Január 2000
Brock Sides zverejnil đalšie problémy týkajúce sa poslednej verzie majordomo 1.94.5. Perlovský script púšťaný cez majordomo wrapper parameter -C, je vykonaný z gid=1 (daemon).
Vyšiel Linux Intrusion Detection System Patch (lids) - špeciálny kernelový patch umožňujúci ochrániť dôležité súbory pred zmazaním (aj voči rootovi:).
Nižší system load ako v systémoch Tripwire, FCheck apodobne http://www.soaring-bird.com.cn/oss_proj/lids/.
Uvoľnená sftp (secure ftp), ftp náhrada cez ssh tunnel (na jednej strane sftp ako klient, na druhej sftpserv) http://www.xbill.org/sftp/.
Vacuum vypustil dsniff - balíček utilít slúžiaci na arp redirovanie prerušených paketov z cieľoveh hostu na LAN, na ďalší host LAN nasimulovaním ARP odpovedí. findgw zisťuje lokálnu bránu neznámej sieťe pasívnym sniffovaním. macof flooduje lokálnu sieť náhodnymi MAC adresami. tcpkill ruší naše nastavené TCP spojenia. dsniff je jednoduchý sniffer hesiel ovládajúci viacero protokolov. mailsnarf zisťuje všetky správy sniffované cez SMTP traffic v Berkeleyho mbox formáte. webspy posiela URL sniffované z klienta nášmu lokálne nastavenému Netskejpu (s nastaveným DISPLAYom) (http://www.monkey.org/~dugsong/dsniff/).

25. Január 2000
Tim Yardley popísal vylepšený spôsob DOS útoku na BSD jadrá (v prípade, že jadro podporuje multicast). Patch pre FreeBSD http://solid.ncsa.uiuc.edu/~liquid/patch/don_lewis_tcp.diff.

26. Január 2000
Dug Song uvoľnil S/Key module pre Solarov Designerov John the Ripper, http://www.monkey.org/~dugsong/john-1.6.skey.patch-1.
Zhodiac zverejnil chybu v Qpopperi <= 3.0Beta29 (2.53, 2.52 verzie a staršie nie sú chybné). Jednoduchý buffer overflow v druhom argumente LIST príkazu, pomocou ktorého môžeme získať uid práve nalogovaného užívateľa (cez POP3) a gid grupy mail (no tak to už hej = prístup ku komplet celej pošte). Zhodiac zverejnil aj príslušný exploit a patch.

28. Január 2000
FreeBSD Security oficiálne zverejnila patch na chybu v procfs.
Nová verzia nmap 2.3BETA14 (http://www.insecure.org/nmap).

29. Január 2000
Uvoľnená finálna verzia SAINT 1.5, obsahujúca všetky výhody SAINT 1.5 beta 1, beta 2, podpora True64 UNIX (http://www.wwdsi.com/saint).

30. Január 2000
Michal Zalewski objavil chybu v PAMkách dodavaných k RedHat 6.1, umožňujúce útočníkovi rýchly brute-force útok na nájdenie hesiel bez záznamov do logov (cez prepajpované /bin/su).

31. Január 2000
Uvoľnená pomôcka od L0phtu na monitorovanie problémov v /tmp (problémy s dočasne vytvorenými 'temporary' súbormi a linkami) => na linuxe/BSD sa preto odporúča vytvárať mená temporary súborov cez mktemp(1,3) (http://www.l0pht.com/advisories/watch.txt).
Nová verzia ippl daemona schopná logovať IP pakety bežiaca na pozadí, priebežne zobrazujúca prichadzajúce pakety (http://www.via.ecp.fr/~hugo/ippl/).

Wilder