Přeskočit na hlavní obsah

Attack Surface Continuous Monitor - reNgine

Automatizace - průběžný pentrační test

Dobře provedené penetrační testy poskytují kvalitní a přesné informace o úrovni zabezpečení. Výsledky testů, ale rychle zastarávají. Při každé větší změně konfigurace, instalaci nové verze (major upgrade) nebo spuštění nové služby, by testy měli proběhnout znovu. To je poměrně hodně náročné na zdroje a čas. Je tedy na místě se pokusit o automatizaci.

Průběžné mapovaní internetového attack surface organizace je jeden z úkolů ofenzivní security, který se dá celkem snadno automatizovat. Jednou z možností jak to provést je použít reNgine.

reNgine je Open Source s licenci GPL v 3.0. Po instalaci naleznete docker containery, které využívají framework Django, Celery a Redis, data se ukládají do DB Postgress. Pro přístup se využívá především prohlížeč.

Ukázky dashboardu a výsledků scanů



Definice cíle a scanování

Práci s reNgine začínáme definici cíle a konfigurací scan enginu. Zde se projeví jedna z největších odlišností reNgine od vulnerability scannerů - typu Nessus, OpenVas. Cílem je totiž doména, nikoliv IP, reNgine se tak podobá spíše OSINT nástrojům jako je FOCA nebo Maltego. Pro monitoring Attack Surface organizace je to mnohem výhodnější.

Přidání nového cíle


reNgine je výborný v recon fázi. Uvnitř reNgine je zaintegrováno několik různých nástrojů, ze kterých si můžeme vybírat a nastavit si je podle potřeby (včetně možnosti doplnit přístup na placené API). Ve výsledku si pak můžeme zvolit - agresivitu testu a to od čistě pasivních testů s minimální agresivitou až po aktivní scany s bruteforce adresářové struktury a aktivními pokusy o průnik.
Nastavení toolu použitých v reNgine





Ukázka konfigurace scan engine.


Scany / testy můžeme provádět jak jednorázově, tak i pravidelně (scheduled scan) a v různých variantách.

 

Když nastavíme pravidelné opakování scanů, získáme představu o tom jak se nám attack surface v čase vyvíjí.


Attack surface

Co je to vlastně attack surface? Je to souhrn (množina) všech možných míst kam je potenciálně možné vést útok. Průzkum attack surface je v podaní reNgine založen na subdoménách a endpointech. Workflow scanování / průzkumu je celkem komplexní a značně ovlivněn konfigurací, kterou navíc můžeme modifikovat. Zjednodušeně ho můžeme popsat tak, že pro zadanou vstupní doménu se nejprve provede dohledání co nejvíce subdomén (domény 3-tího řádu, které často tvoří perimetr), k doménám se zjistí IP adresy. Nalezené IP adresy se oscanují s cílem vytvořit katalog provozovaných služeb. Provede se fingerprinting a banner grabbing služby a pak dále securitní a zranitelnostní testy, samozřejmě v závislosti na tom jaká služba byla nalezena.
Ukázka nalezené subomény www, kde bylo nalezeno 27 zranitelnosti s nízkou závažností (info) a 472 endpointů.



Ukázka endpointů - v tomto případě HTTP URL. 




Nashromážděná data je možné získat buď v textové formě nebo stáhnout report ve formátu pdf.





Notifikace

Scanovaní rozsáhlejších perimetrů trvá delší dobu, proto je moc příjemná možnost nastavit si notifikace. reNgine pak posílá aktuální informace z průběhu scanů.  Podporovány jsou notifikace do Slack, Discord, Telegram. 
Nastavení notifikací
 
Ukázka notifikace v telegramu

Summary

reNgine je super pomocník nejen při průběžné kontrole Attack Surface, ale třeba i při externích penetračních testech. Může ušetřit spoustu manuální práce. Má drobnější nedostatky a při provozu občas vyžaduje drobnější zásah do konfigurace, případně i kódu. Pro instalaci se hodí znalosti dockeru, Linuxu, webu, IP na úrovní administrátora.  

Komentáře