k47.cz
výběr kolo foto makro povídky kultura
koronavirus TECH ▞▞ 🞄⬤🞄 | twitter RSS
««« »»»

Všechno zamkněte (digitální paranoia, útok kompromitovaných tiskáren, rok 2018 už stihl ukousnout kus mé duše)

9. 3. 2018 — k47

Včera jsem byl nad­šený z nového při­po­jení k in­ter­netu, dneska po­chy­buju o bez­peč­nosti celé ope­race.

Prvním va­rov­ným sig­ná­lem byl fakt, že kor­po­rátní web ISP nejel šif­ro­vaně na HTTPS. V duchu jsem si je před­sta­vo­val jako smečku re­ne­gátů, kteří sle­pují bez­drá­tové sítě z hard­waru, který našli ve škar­pách podél silnic. Byla to veselá před­stava, ale ne­chtěl jsem aby mojí je­di­nou linku s vněj­ším světem spra­vo­vala právě taková se­branka.

Pak jsem dostal re­fe­renci od je­dince, který měl zase re­fe­rence od tro­jice jiných spo­ko­je­ných zá­kaz­níků. Aspoň něco vy­lep­šo­valo jejich kre­di­bi­litu. NA druhou stranu „spo­ko­jený zá­kaz­ník“ nemusí nutně zna­me­nat „ne­kom­pro­mi­to­vaný zá­kaz­ník“. Může žít ve sladké ne­vě­do­mosti, že mu ruští hac­keři ukradli čísla všech kre­dit­ních karet a pro­dali je za­bi­já­kům z ISISu, kteří na ně začali z ebaye na­ku­po­vat munici a du­sí­katá hno­jiva pro výrobu tr­ha­vin.

Sta­čilo to, abych se roz­hou­pal k akci a pak začala téměř oka­mžitá in­sta­lace. Ta měla všechny in­gre­di­ence holly­wod­ského trháku: Nádech rizika, drama, ohro­žení života, na­pí­navé finále a happy end.


Když dvo­jice tech­niků odešla, užíval jsem si nově nabyté rych­losti, data jen sviš­těla, všechno se na­čí­talo téměř oka­mžitě. Dosáhl jsem rych­losti, za kterou se ne­mu­sím stydět v jed­n­a­dva­cá­tém sto­letí. K večeru jsem pro­vedl rychlý nmap sítě a co ne­vi­dím: 4 tis­kárny, 2 switche, uni­xový server na kterém běžel Apache, samba a MySQL a tři Win­dows sta­nice, jedna z nich podle všeho pa­t­řící sta­ros­tovi. Hm. Tohle vypadá za­jí­mavě. Ne nijak dobře, ale aspoň za­jí­mavě. Mohl jsem se dostat do ad­mi­nis­trač­ních konzol každé tis­kárny – volně do­stupné, chrá­něné jen heslem. Ne­zkou­šel jsem vý­chozí údaje, ne­chtěl jsem pů­so­bit škodu. Takhle by to roz­hodně nemělo být.

Sí­ťo­vání jsem nikdy moc ne­ro­zu­měl, takže neznám co přesně to zna­mená. Když vidím já je, co přesně vidí oni? Tis­kárny se na­chá­zely v pri­vátní síti 10...* a za mým rou­te­rem se roz­klá­dala oblast 192.168... Vidí jenom moji novou hra­niční pří­pojku, která je někde v 10...*, nebo můžou na­hléd­nout hlu­boko za můj router? Nejsem si jistý a to je horší, než kdy­bych věděl, že mohou.

Vzal jsem to jako důvod za­bez­pe­čit všechny své stroje. Vy­chá­zím z před­po­kladu, že plavu ve ve­řejné síti, stroje jsou vi­di­telné zvenčí a vše­chen provoz může někdo od­chy­tit. Nejde o na­pros­tou ka­ta­strofu, pro­tože vše­chen tenhle zmatek žije v ne­ve­řej­ných ad­res­ních pro­sto­rech, ne­hrozí tedy, že mi na dveře za­klepe glo­bální scan in­ter­netu nebo mě přímo vy­hmát­nou čínští hac­keři, to ne, můžou to udělat jen všichni kdo jsou už uvnitř. Do této mno­žiny patří po­ten­ci­álně zkom­pro­mi­to­vané tis­kárny, win­dows boxy a bůh ví kdo se dokáže při­po­jit k 10...* síti.

Pro­tože jsem ne­u­dě­lal skok do světa in­ter­netu věcí a ne­hrozí, že mě mohl zradit ká­vo­var při­po­jený na in­ter­net nebo chytrá žá­rovka. Obávám se méně sexy hrozeb, nud­ných a kla­sic­kých, zdi­vo­čelé tis­kárny a ne­ak­tu­a­li­zo­vané switche.

Po­vypí­nal jsem tedy všechny služby, které po­slou­chaly na ote­vře­ných por­tech, a nechal jsem běžet jen ssh démona. Ten je pro mě zcela stě­žejní a bez něj bych se nehnul z místa.

Na­sta­vil jsem sil­nější heslo (znáte to: jed­ničku místo i, @ místo a, velké Z místo s, a na konec pár vy­křič­níků), omezil množ­ství spo­jení, zre­du­ko­val počet ne­ú­spěš­ných pokusů při­hlá­šení a na­in­sta­lo­val fail2ban, který od­střihne zlo­my­slné agenty, jen co začnou bru­te­for­co­vat hesla. Do zámku teď vedou pouze jedny dveře a visí na nich o něco lepší zámek.

Dalším vek­to­rem útoku je broswer, útoč­ník v síti by mohl v nej­hor­ším pří­padě od­po­slou­chá­vat a měnit ne­šif­ro­vaný HTTP provoz a vklá­dat do něj škod­livý ja­vascript nebo po­změ­nit sta­ho­va­nou bi­nárku, jak se ve světě běžně děje. Už dva měsíce žiju se za­blo­ko­va­ným ja­vascrip­tem, který se­lek­tivně po­vo­luji jen pro ně­které weby. I kdyby mi tedy útoč­ník poslal ne­bez­pečný ja­vascript, exis­tuje jen malá šance, že bych jej spus­til, a bi­nárky z netu ne­sta­huji, všechno nám z re­po­zi­táře jako .deb ba­lí­ček.

Stále by však mohl po­slou­chat.

Proto jsem na­in­sta­lo­val roz­ší­ření HTTPS eve­ry­where a v něm na­sta­vil kom­pletní blo­ko­vání ne­za­šif­ro­va­ného obsahu. Pokud je web (nebo jeho část) jen HTTP, ani se mi ne­zob­razí. Jedině tak si můžu být jistý, že se ke mně do­stane, to co mi pro­tistrana chtěla zaslat. Ne­mu­sím tak věřit kaž­dému sí­ťo­vému uzlu po cestě, ale jen kon­co­vému ser­veru. Není to ab­so­lutní jis­tota, ale mnohem lepší než divoký západ kryp­to­gra­fie prostých paketů, které dů­věr­ností od­po­ví­dají ko­re­spon­denč­ním líst­kům.

Zákaz pros­tého HTTP se blíží hra­nici, kdy stan­dardní in­ter­ne­tové brouz­dání začíná být ne­po­ho­dlné. Ne všichni spě­chají do světa za­bez­pe­če­ného šif­ro­vá­ním stejně rychle jako všichni ostatní. Spousta webů, hlavně těch ma­lič­kých (a ne­po­cho­pi­telně se k nim řádí i ně­kteří tech blo­geři). Je po­vin­nost nás všech to změnit. Pokud mám ne­za­bez­pe­čený web, ris­kuji bez­peč­nost všech ná­vštěv­níků před útoky třetí strany.

Moje funk­ci­o­nálně.cz nebo dev­blogy běhají stále jen jako nahé HTTP. Před ně­ja­kou dobou jsem to chtěl změnit, ale nějak jsem to ne­do­táhl do­konce. To je teď pri­o­rita číslo jedna. Nejde jen o mojí bez­peč­nost, ale bez­peč­nost ná­hod­ných ces­to­va­telů di­vo­či­nou in­ter­netu.


+1: K tématu

píše k47 & hosté, ascii@k47.cz