Hlídač CVE zranitelností

Jan Horalík
zonky-developers
Published in
2 min readJun 25, 2018

Je to malá utilita, ale šetří nám hodně času. Náš bezpečnostní tým v Zonky musí denně sledovat nové zranitelnosti v technologiích a knihovnách, které používáme. Pokud se nás některá z nich přímo týká, jsme připraveni rychle knihovnu aktualizovat a ochránit naši platformu před možným útokem. Problém je, že zranitelností jsou denně zveřejňovány minimálně desítky a není v lidských silách přečíst a uhlídat všechny možné informační zdroje o nich.

Jedním z cenných zdrojů a nových zranitelnostech je twitterový účet @CVEnew neziskové organizace MITRE. Na něm jsou několikrát denně zveřejňovány zranitelnosti, které dostaly identifikátor CVE (Common Vulnerabilities and Exposured). Ale jak už jsem zmínil, i těchto zranitelností bývá mnoho, týkají se všech možných technologií a jeho každodenní procházení nám zabíralo hodně času. Co je ještě horší, čtení dlouhých textů člověka otupí a může se stát, že v záplavě nerelevantních informací omylem přeskočím nějakou důležitou. Jinými slovy úloha, která volá po automatizaci.

Řešení je poměrně jednoduché. Napsal jsem python script, který pomocí Twitter API vrátí zprávy z daného účtu za posledních 24 hodin. Ve scriptu zároveň zprávy profiltruji a do výsledného reportu zařadím jenom ty, které obsahují klíčová slova, která nás zajímají, jako třeba Postgres, Spring nebo Ember. Tím se délka reportu sníží na únosnou míru, kterou už je člověk schopen projít a pečlivě prověřit. Výsledek se pošle e-mailem na adresu našeho bezpečnostního týmu.

Abych nemusel kvůli této maličkosti mít a udržovat server, volám script přes službu AWS Lambda. Lambdu volá každé ráno Jenkins job, takže ve výsledku každé ráno mám v ranní poště digest včerejších zranitelností, které je potřeba prověřit. Seznam klíčových slov máme definován v parametru Jenkins jobu, takže je jednoduché ho aktualizovat, když začneme nebo přestaneme používat nějakou technologii.

CVE Checker, jak jsem utilitu nazval, používáme už několik měsíců a jsme s ní spokojení. Máme s kolegou rozdělené technologie, které “pokrýváme”, což nám také ušetří čas. Za tu dobu jsme už z tohoto zdroje dostali pěknou řádku zranitelností, které nás vedly k aktualizacím.

--

--