Napad na projekt z oblasti bezpecnosti - hladam pomoc

Sekcia: Ostatné 29.08.2008 | 15:34
Avatar Samuel BWPOW Kupka CentOS, Mandriva  Používateľ
Uz dlhsi cas riesim na viacerych serveroch, ktore spravujem, bezpecnost ulozenych dat. Mnohe uctovnicke a pravnicke (ale aj ine) firmy ziadaju, aby bol obsah pevnych diskov (alebo aspon casti, kde su ulozene uzivatelske data) sifrovany, kedze maju strach z odcudzenia tychto udajov statom alebo inymi zivlami. Casto ale narazam na problem, co teraz s heslami. Kedze hlavne v mensich firmach sa casto stava, ze im vypadne prud na dlhsi cas, ako vydrzi zalozny zdroj, po starte treba vsetky hesla zadavat rucne alebo tam osobne prist, ak nie je pritomna zodopovedna osoba. Rozmyslal som uz nad viacerymi konceptami, ktore by riesili nie len tento ale aj dalsie problemy spojene so sifrovanim a bezpecnostou serverov.

Poziadavky: Pripravit jednoduchy sposob, ktory nevyzaduje specialny hardver (tj taky, co na beznych serveroch defaultne nie je), dokaze ho ovladat aj uplny laik po par minutovom skoleni, je bezpecny a postara sa o vlozenie klucov k particiam a zaroven bude schopny skontrolovat, ci v systeme nie je rootkit alebo pozmenene binarky a dolezite skripty. Zaroven to ma byt schopne fungovat s vacsinou beznych serverovych distribucii, ktore pouzivaju /etc/crypttab bez nutnosti akokolvek zasahovat do skriptov, vytvarat specialny initrd a podobne zasahy.

Z toho je jasne, ze nemoze ist o nic, co by bezalo vramci existujuceho operacneho systemu. Moje riesenie je nasledujuce:
Vytvorit live CD, ktore sa bude bootovat pred samotnym OS (v BIOSe bude boot z CD nastaveny pred bootom z HDD). To by si malo mountnut rozsifrovane particie (je uplne zbytocne sifrovat / a /etc), precitat fstab a crypttab a podla toho domountovat zvysok. Nasledne by sa skontrolovali vsetky dolezite binarky, skripty, MBR - spocital by sa z nich hash a ten by sa porovnal so zoznamom, ktory by bol ulozeny priamo na / a bol by tymto CD digitalne podpisany. Oznacil by vsetky subory, ktore sa nezhoduju a pouzivatel by sa mohol rozhodnut, ci chce pokracovat dalej v bootovani a zapisat do zoznamu nove hodnoty (napriklad, ak prevadzal predtym update). Po tejto kontrole by CD skoncilo a vyziadalo by boot z HDD, co by dalej nasledovalo uz normalne. Pri pripajani diskov by sa kluce precitali priamo z toho CD. Po skonceni bootovania by sa CD mohlo vybrat a schovat na tajne miesto.

Samozrejme, to, co je tu popisane nie je uplne vsetko, co by sa vykonavalo. Samotne overovanie a sprava klucov bude ovela zlozitejsia. Nechcem tu rozpisovat vsetky podrobnosti, lebo aj tak je to uz dost dlhe.

Tymto by som chcel poziadat o pomoc niekoho, kto ma skusenosti s vytvaranim live CD a rozumie procesu bootovania. Ja som v GNU/Linuxe v tomto smere neskuseny. Cize hladam spolupracovanika na tento projekt (zial nekomercny, vysledok pod GNU GPL), ktory by vedel pripravit zaklad live CD, ktore by obsahovalo kernel s co najviac ovladacmi radicov diskov, klavesnice, serioveho portu a pri starte by vedelo rozpoznat aj softverove raidy a LVM a vsetky particie pomountovat tak, ako maju byt (s tym, ze particia s /etc by bola explicitne urcena). Ked by toto vsetko prebehlo, nastupil by program, ktory uz budem programovat ja.

Ak mate zaujem alebo blizsie otazky, tak ich prosim uvedte v diskusii. Cely navrh samotneho fungovania a priebehu by mal byt hotovy v priebehu buduceho tyzdna.
Strach dát najevo své pocity a zjednat si u druhých respekt je jedním z problémů civilizovaného člověka, který se naučil zpochybňovat svou vlastní pravdu pro zdání objektivity
    • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 29.08.2008 | 16:21
      WlaSaTy   Návštevník
      Zaujimave riesenie, ale ako vyriesit ten problem so zadavanim hesiel pre sifrovane blokove zariadenia uchovavajuce citlive udaje? Inak kontrola povodnych suborov moze byt neucinna ak tie co neexistovali v case buildu cd nedokazes detekovat. A ten algoritmus by mal zahrnat vyclenenie adresarov s datami a bez programov i ked aj tam sa moze nieco najst.
      • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 29.08.2008 | 23:37
        Avatar Samuel BWPOW Kupka CentOS, Mandriva  Používateľ
        Hesla by mali byt ulozene na tom CD. Prave to CD sa tym padom stane niecim, ku comu by nikto nemal mat ziaden pristup. LUKS umoznuje pouzit viac klucov, takze kazde CD by bolo jedinecne (ak by ich existovalo viac) a pri strate alebo podozreni, ze sa mohlo dostat do nespravnych ruk by sa ta banka z LUKSu proste odstranila a mohlo by sa vygenerovat nove.

        Samotny zoznam suborov a hashov nebude na CD ale na disku (na nezasifrovanej particii) a bude len podpisany certifikatom, ktory bude ulozeny na CD (kazde CD bude mat vlastny certifikat). Verejne casti tych certifikatov budu zname a budu aj na ostatnych CD (ak sa sucasne bude generovat nejaka sada CD alebo niekedy v buducnosti, tak sa tam ulozia vsetky starsie, samozrejme bude podpora aj pre revokaciu starych certifikatov), takze kazde CD bude vediet, ktore ine CD ten zoznam naposledy podpisalo. Cize ak sa nieco zmeni v systeme, tak by mohol byt na disku program, ktory by po vlozeni CD ten zoznam pregeneroval, ak tomu samozrejme bude administrator dostatocne verit (teda, ze system v tom case nie je kompromitovany). Pripadne, sa to spravi az vzdy pri najblizsom boote z CD (co ale pri serveroch moze predstavovat aj rok).

        Pocitam aj s tym, ze raz za cas sa stare CDcka skartuju, ich certifkaty sa daju do CRL a vygeneruje sa nova sada.

        Cize aby som to zrhnul: Kazde CD bude mat vlastny certifikat a zoznam verejnych certifikatov ostatnych CD vytvorenych doteraz alebo sucasne s nim. Dalej bude obsahovat CRL certifikatov, ktore uz neplatia. Bude obsahovat aj kluce pre pripojenie jednotlivych particii. Tu tiez bude platit, ze kazda particia bude mat vlastny kluc a kazde CD bude obsahovat inu sadu klucov. Pri strate alebo ruseni CD sa dana sada klucov len vyhodi z LUKSu.
        Strach dát najevo své pocity a zjednat si u druhých respekt je jedním z problémů civilizovaného člověka, který se naučil zpochybňovat svou vlastní pravdu pro zdání objektivity
        • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 29.08.2008 | 23:52
          WlaSaTy   Návštevník
          To s tymi heslami, to ma napadlo. Ale zaujimalo ma ci sa zamyslis nad tym kto vsetko bude mat k dispozicii dane CD ci uz podla zmluvy alebo podla zakona alebo podla moznosti...

          ps.: v /etc moze byt aj shaddow a to nie je rozumne mat dostupne.
          • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 30.08.2008 | 01:20
            Avatar Samuel BWPOW Kupka CentOS, Mandriva  Používateľ
            Pristup k CD bude ekvivalentny tomu, kto ma dnes pristup k heslam, ktorymi su sifrovane particie. Vacsinou (z mojich skusenosti stale) sa vo firmach boja zverit hesla do ruk jedinej osoby, nie preto, ze by jej neverili, ale preto, ze sa tomu cloveku moze nieco stat a bude zle. Preto sa to momentalne riesi tak, ze existuje obalka v trezore, kde su hesla dumpnute na papier. Obalka je samozrejme zapecatena. Teraz by tu obalku nahradilo CDcko, cize pristup osob by bol rovnaky, ako doteraz.

            Planujem k tomu celemu urobit prehladny generator ISO suborov (v Qt aj v konzole), takze si to bude vediet vygenerovat akykolvek schopnejsi admin alebo kludne aj majitel firmy lokalne.
            Strach dát najevo své pocity a zjednat si u druhých respekt je jedním z problémů civilizovaného člověka, který se naučil zpochybňovat svou vlastní pravdu pro zdání objektivity
            • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 31.08.2008 | 00:33
              WlaSaTy   Návštevník
              Aha, takze koncept uz mas a aj schvaleny a tebe ide o build cd s jadrom a malym initrd ktory zabezpeci kontrolu podpisu nad jednym suborom a potom sa pomocou overeneho suboru overi kontrolny sucet binariek (programov a kniznic) a popripade aj nakopne system. Pricom build ma byt hoci aj v GUI.

              mne tam nesla do hlavy jedna vec. chces kontrolovat obsah systemu z urciteho a minuleho casu. no a v tom moze byt prvy problem, boot manger moze nakopnut jadro ktore vtedy neexistovalo. druhy problem je v tom, ze pokial je system v pouzivani a dokazes precitat data, tak ich vies aj odoslat. ale tieto moje uvahy uz nemaju zmysel.
    • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 29.08.2008 | 16:36
      Avatar uid0 Debian  Používateľ
      zbytocne sifrovat /etc... to je... ehm... zaujimavy nazor
      Debian. apt-get into it…
      • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 29.08.2008 | 23:43
        Avatar Samuel BWPOW Kupka CentOS, Mandriva  Používateľ
        Ide o to, ze toto je nastroj pre server a nie pre desktop alebo laptop. Pri serveri sa predpoklada, ze bude nepretrzite zapnuty a teda ak sa k nemu v tom stave dostane utocnik, tak bude mat pristup na vsetky sifrovane aj nesifrovane particie (a moze tam pozmenit binarky ci uz je root sifrovany alebo nie). Sifrovanie sa serveroch sa teda (podla mna) pouziva hlavne preto, ze ak niekto vbehne do firmy a server zoberie so sebou (napriklad policia, zlodeji), tak uz z neho nedostanu dolezite udaje. Pritom v /etc by sa nic take dolezite (z hladiska citlivych udajov) nemalo nachadzat. Maximalne tam utocnik najde nejake hesla v /etc/shadow, hesla do PPP a podobne veci, co ale stale nie su na basu a snad (ak nie su ludia blbi) neohrozia ani bezpecnost ostatnych serverov a firmy.

        Samozrejme, ze taky /var, /tmp, /home a swapy sifrovat treba. A taky /boot bude nezasifrovany aj tak a tam je prave z hladiska utocnika ta najzranitelnejsia vec - kernel a init. Preto na serveroch naozaj nevidim dovod sifrovat korenovy adresar a /etc. Hlavne, ak sa da shadow a vsetky citlive udaje z /etc presunut napriklad do /var/etc.
        Strach dát najevo své pocity a zjednat si u druhých respekt je jedním z problémů civilizovaného člověka, který se naučil zpochybňovat svou vlastní pravdu pro zdání objektivity
        • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 30.08.2008 | 00:39
          Avatar uid0 Debian  Používateľ
          v roote by nemalo byt viac nez je v repozitaroch, ale ohladne /etc si si odpovedal sam, su tam citlive informacie
          Debian. apt-get into it…
        • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 31.08.2008 | 15:05
          shade   Návštevník
          >Sifrovanie sa serveroch sa teda (podla mna) pouziva hlavne preto, ze ak
          >niekto vbehne do firmy a server zoberie so sebou (napriklad policia, zlodeji),
          >tak uz z neho nedostanu dolezite udaje.

          Nie je az taky problem ten server vziat so sebou zapnuty, teda ak ho niekto vo firme nestihne vopred vypnut (marenie vykonu?). Rovnako policia moze (aj ked ta nasa asi nie) na mieste cez pci zbernicu precitat obsah RAM. Takze iluzie by som si nerobil.
          • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 01.09.2008 | 16:20
            Avatar Samuel BWPOW Kupka CentOS, Mandriva  Používateľ
            Na toto sa pouzivaju uz ine nastroje. Napriklad teraz spolupracujem na jednom malom zariadeni, ktore bude umiestnene vo vnutri pocitaca a bude mat na sebe okrem ineho aj merac zrychlenia a pri kazdom vacsom pohybe sa zopne reset. Bude to cele taka mala krabicka, ktora bude potrebovat len privod na 12V a budu na nej dva konektory - jeden na dosku a druhy na originalne tlacitko reset. Dalej tem bude taky maly infra pohybovy senzor, takze ked sa otvori bocna stena, tiez sa spravi reset. Taktiez rozmyslam, ci tam nedat aj moznost to resetnut cez BT, kedze tie chipy dnes stoja par korun. A mozno aj nejaky watchdog na OS.

            Poslednym problemom je firewire, ktore umoznuje priamy pristup do pamate. S tym sa bude treba nejako vysporiadat. A taktiez netom nedavno preleteli mediami clanky o tom, ze RAMky si po vypnuti este hodnu chvilu uchovavaju obsah, takze by bolo dobre to este nejako vycistit. No, spolieham sa na to, ze policia a ostatni zlodeji nebudu mat dost rozvahy na to, aby prekonali vsetky nastrahy.
            Strach dát najevo své pocity a zjednat si u druhých respekt je jedním z problémů civilizovaného člověka, který se naučil zpochybňovat svou vlastní pravdu pro zdání objektivity
            • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 01.09.2008 | 18:48
              WlaSaTy   Návštevník
              Tie ramky by sa dali osetrit vrstvou termitu v laku, ale to by uz bolo pri zapnuti vseobecnym ohrozenim namiesto predchadzajuceho odmietnutia spoluprace. Najme keby bolo DC pristupne. Ale ak nie, tak sa da ten komp predsa zaliat do cementu.
              • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 02.09.2008 | 00:12
                Avatar Samuel BWPOW Kupka CentOS, Mandriva  Používateľ
                Nastrazne zariadenia su u nas zakazane (nanestastie). Ale toto by mohlo byt nebezpecne aj pri beznej manipulacii. A zatial server do betonu, to by asi nebolo ono pri chladeni a upgrafovani hardveru :)

                Snazim sa najst riesenie, ktore bude prakticky co najjednoduchsie preveditelne a zaroven co najbezpecnejsie. A taktiez pri ktorom budem vediet vyuzit svoju uchylku v skladani elektronickych pridavnych komponentov k PC :) Uz dlhsie spolupracujem s jednou kosickou firmou, ktora navrhuje a vyraba elektronicke zariadenia (robim im softver) pre rozne spolocnosti (napriklad TEKO, USS atd). Takze ak navrhnem nejake zariadenie, tak mi ho vedia dat strojovo vyrobit a to uz aj pre male serie v desiatkach kusov. Cize tu krabicku mozno potom zacnem aj predavat, ak sa osvedci u mna v serveroch. Cena bude urcite pod 1000Sk.

                Nedavno som s nimi spolupracoval aj na zariadeniach s GPS a GPRS komunikaciou, takze som rozmyslal, ci sa tam neda nejako zakomponovat aj toto (kedze uz mam napisany obsluzny softver). Ale v serverovniach casto GPS signal vobec nie je, takze nic z toho. Ten merac zrychlenia a pohybovy senzor musia pre zaciatok stacit. A hlavne su obe suciastky velmi lacne a mam uz s nimi skusenosti.
                Strach dát najevo své pocity a zjednat si u druhých respekt je jedním z problémů civilizovaného člověka, který se naučil zpochybňovat svou vlastní pravdu pro zdání objektivity
                • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 02.09.2008 | 01:39
                  shade   Návštevník
                  >mozno potom zacnem aj predavat, ak sa osvedci u mna v serveroch. Cena
                  >bude urcite pod 1000Sk.

                  A to je prave ten problem. Pokial to budes mat pre seba tak OK, ale ako nahle sa to rozsiri tak na prvom sa poucia a dalsie potom uz...
            • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 03.09.2008 | 11:54
              Avatar david1 Debian Etch, Ubuntu 8.10  Používateľ
              aby potom neprislo zemetrasenie hehe :)

              inak ten infra senzor vo vnutry servera kde je dost teplo je rozumny?
              • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 03.09.2008 | 12:55
                Avatar Samuel BWPOW Kupka CentOS, Mandriva  Používateľ
                No, ak pride zemetrasenie, tak sa server proste restartne. Ale to je v nasich koncinach dost malo pravdepodobne.
                A co sa tyka toho infra senzora, tak ide o to iste, ako su napriklad spinace svetla alebo pohybove senzory, cize okolita teplota ich z tohto hladiska neovplyvnuje (ak je v prevadzkovych hodnotach).
                Strach dát najevo své pocity a zjednat si u druhých respekt je jedním z problémů civilizovaného člověka, který se naučil zpochybňovat svou vlastní pravdu pro zdání objektivity
                • Re: Napad na projekt z oblasti bezpecnosti - hladam pomoc 03.09.2008 | 13:14
                  Avatar david1 Debian Etch, Ubuntu 8.10  Používateľ
                  sice hej da sa vyladit citlivost a nastavit to