Disassembler

Artificial intelligence is no match for natural stupidity.
19dubna2012

Promovaní inženýři


Podněty pro tento článek, vyjadřující můj názor na mentalitu a úroveň části elity našeho národa, která všechno ví, všechno zná, všude byla a od všeho má klíče, jsem nasbíral za dlouhá léta (spolu)práce s inženýry a diplomovanými specialisty z nejrůznějších technicky zaměřených škol. V posledních několika týdnech však situace vygradovala, a tak, místo trojnásobné vraždy, raději spáchám tento článek. I když ona by to asi nebyla vražda, ale jen zabití. To je totiž klasifikováno jako „Úmyslné usmrcení v silném rozrušení ze strachu, úleku, zmatku nebo jiného omluvitelného hnutí mysli anebo v důsledku předchozího zavrženíhodného jednání poškozeného“, což v tomto případě sedí jak prdel na hrnec.

Tady všechno funguje


Můj příběh začal před nějakými dvěma lety, v době, kdy můj dobrý kamarád začal pracovat v jedné nejmenované firmě jako „ajťák“. Tehdejší infrastruktura firmy byla, slušně řečeno, neoptimální. Tak neoptimální, že mu ještě dnes pomáhám se z těch sraček vyhrabat. Proč? Protože před deseti lety někdo vymyslel nějakou základní infrastrukturu a tu implementoval. A pak bylo potřeba ji přepracovat. Ale protože kousek už fungoval, tak se udělalo jen to, co ještě nebylo. A samozřejmě se na ten „nový“ kousek použila jakákoliv technologie, která přišla první pod ruku. A tak to šlo dál a dál, až firma nakonec skončila s různými unikátními vychytávkami.

5in1


Router + firewall + mail server + DNS server + HTTP proxy server v jednom. Nejdůležitější počítač v celé firmě. Každý normální člověk by na něco takového použil slušnou a kvalitní rackovou mašinu s redundantním zdrojem a pořádným RAIDem už před deseti lety. Je to nutnost, protože když taková mašina lehne, jde s ní i celá firma. Naši inženýři se ale rozhodli, že není třeba utrácet za moderní vymoženosti a tak srdce celé firmy postavili na nějaké Pentium trojce, takže celý počítač vypadá jako by ho někdo vyčenžoval za flašku rumu ve sběrných surovinách. A taky tak funguje. Použitý operační systém bylo nějaké čtyřkové FreeBSD. Proti BSD jako takovému nic nemám. Sám pár FreeBSD instalací udržuji a považuji jej za dokonale stabilní a velmi vhodný pro nasazení k výše popsaným účelům. Ale vzhledem k tomu, že nám nedávno vyšla devítka, zdá se mi čtyřková verze, kterou navíc z důvodů, které popíšu níže, nikdo neaktualizuje a neudržuje, nepříliš vhodná k tomu, aby sloužila jako první obranná linie a zároveň úložiště důležitých firemních dat. Inženýři se ale nestarají, protože to funguje.

Je tam několik fyzických síťovek, nějaké VPNky a několik VLAN interfejsů, které nikdo nepoužívá. Prostě je tam někde někdy někdo nastavil. Přirozeně ne tam, kde by je nastavil každý normální člověk, takže teď už nikdo neví kde a jak je vypnout.

Firewall. Firewall je prostě kouzelný. Má nějakých 500 řádků a dal by se rozdělit na čtyři části. V první části se nastavují proměnné, v druhé části se všechno zakáže, v třetí části se to zase povolí a čtvrtá část obsahuje workaroundy, aby to celé alespoň nějak fungovalo. A jakmile to funguje, inženýr je spokojený, protože jeho práce je hotova. Ochrana proti DDoS? Cože? Jaký DOS? My používáme BSD, žádnou DOSovou ochranu nemáme a nepotřebujeme!

Mail server byl nastaven a zabezpečen velmi kvalitně a dal se snadno konfigurovat. Hahaha.. jasně že kecám. Mail server byl samozřejmě bez podpory IMAPu, bez SSL a TLS a bez čehokoliv, co by připomínalo virtuální domény a uživatele. Všichni pěkně měli systémový účet a hromádku forwardů a aliasů. Mainframy v osmdesátých letech by mohly závidět. Škoda jen, že máme rok 2012. A bezpečnost? Nechtějte mě rozesmát. V téhle firmě se za vrchol bezpečnosti považuje to, když má někdo heslo jiné než uživatelské jméno. A když někdo zrovna má, stejně vám absolutně nic nebránilo si jej bruteforcnout. Proč se obtěžovat nějakou bezpečností, když to funguje?

DNS server? Jo, někdy asi fungoval, ale v tomto století to nebylo. Samotné domény a dopředné i zpětné překlady byly nastaveny dobře. Dokonce inženýři došli tak daleko, že věděli, jak se používá SOA záznam a co v něm která hodnota znamená (A pokud ne, tak to alespoň správně opsali). Škoda jen, že poté, co jsme odpojili druhý DNS server (slave, podotýkám), jsme zjistili, že nikdy žádný dotaz příchozí z internetu nepřeložil, protože prostě z nějakého důvodu nepracoval. To ale nikomu nevadilo, protože než se odpojil slave, tak to fungovalo.

A HTTP proxy? Předpokládám, že šlo o nějaký rozmar vedení. Ale pokud zaměstnanci místo práce surfují, tak proč ne. Inženýři vymysleli Squid proxy. Nevadí přece, že najednou přestaly fungovat bezpečnostní aktualizace Windows, rychlost internetu klesla na třetinu a že si vedení nemůže pustit ani blbou písničku z Youtube. Hlavně, že funguje filtrování HTTP požadavků.

A další


Podobných serverů bylo ve firmě ještě pár. Žádný z nich naštěstí nezastával tak důležité funkce, ale přesto se našlo ještě pár dalších perel. Drtivá většina linuxových serverů byla instalována se součástmi, bez kterých server prostě nemůže existovat. X server + Gnome, případně KDE. Samozřejmě spouštěné hned po startu. Na jednom ze serverů se na nás navíc usmívala spoře oděná slečna na pozadí plochy, takže grafika byla evidentně využívána. Raději nechci vědět jak přesně. Jeden switch byl nakonfigurován tak, že nebyl problém dostat adresu z DHCP. To samotné by nebylo až tak zvláštní, kdyby vám tu adresu ovšem nepřidělil i na WAN interface! A přístup na servery pomocí SSH? No jasně, slovníkově prolomitelné plaintextové heslo to jistí. SSH klíče? Jo, nějaké klíče jsem viděl támhle pod rohožkou.

Lidé, bděte!


Z mého několikaletého pozorování jsem zjistil, že největší procento těchto „inženýrů“ produkuje jedna brněnská vysoká škola s třípísmennou zkratkou. Nevím, co je tam učí a jak, ale evidentně mají někde v procesu chybu, když se takový absolvent není bez pomoci vývojového diagramu schopen ani vymočit a vůbec se nestará o problém jako takový, ale pouze o jeho řešení. Ti lidé, kteří z takových ústavů lezou, absolutně postrádají zdravý selský rozum a hlavně praktické zkušenosti. Znají padesát návrhových vzorů v programování, ale když na věc přijde, neumí je použít. Znají Turingův stroj, ale svůj vlastní stroj si pořádně nainstalovat a nastavit nedokážou. A k tomu všemu přidejte jejich přesvědčení, že oni to přece dělají všechno nejlíp, protože je to přece učili na vysoké škole! To není vysoká škola. To je továrna na blbce.

Třešnička


Poslední kapkou, která rozhodla o napsání tohoto článku, byla včerejší návštěva pana inženýra, při které se dožadoval rootovského hesla na nový mail server. Když mu bylo oznámeno, že žádné heslo neexistuje, protože používáme SSH klíče a že on přístup na mail server nepotřebuje, poněvadž není v jeho správě, oponoval, že potřebuje přístup k logům, kdyby někdo něco někam blbě poslal. Server máme nastaven tak, že nedoručitelné zprávy reportuje jak uživateli samotnému, tak i administrátorovi daného serveru, takže ani s tímto argumentem neuspěl. Začal se čertit, že z něj prý děláme neschopného blbce, bouchl dveřmi a odjel (v autě, ve kterém podle zvuku bylo zatraceně mále oleje, což ale nevadí, protože funguje). Škoda jen, že mu kolega nestihl říct „Ne, pane inženýre, my z vás neschopného blbce neděláme. Tuhle část vaší práce zvládáte sám dokonale.“

Disclaimer


Autor se nesnaží strkat všechny „vysokoškoláky“ do jednoho pytle. Už se setkal i s takovými, se kterými se dalo bavit. Bohužel jeden takový připadá na deset blbců a tato tiráda pojednává právě o nich.