k47.cz  — každý den dokud se vám to nezačne líbit
foto Praha výběr povídky kultura
twitter FB 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