BOTCONF 2017 - J2

Knightcrawler

Un projet personnel de l’orateur qui visait à obtenir sa propre source de threat intel « maison ». Knightcrawler vise à découvrir des attaques de type « watering hole » (ou point d’eau) pour infecter les visiteurs d’un site compromis. Typiquement un Exploit Kit ou des pages de Phishing. Ces scripts inclus dans les pages compromises de diverse façon, procèdent à du contrôle d’IP source, du fingerprinting puis ballancent des attaques sous forme de fausses mises à jour ou d’exploit plus ou moins datés.

Les attaques ciblés sont souvent reliés à des crises géopolitiques. Sinon le watering-hole à lieu sur des vieux WordPress, Joomla, des sites de porn, etc… Pour identifier des sites à crawler, on peut faire du passive DNS, du crawl sur Alexa, etc… Pour la détection, pas de signatures, juste des heuristiques maison que vous affinez. Ex: l’usage de DNS Dynamiques, des Certificats SSL récents, des IP en lieu et place d’un DNS.  Du coup avec tout plein de YARA on peut détecter pas mal d’exploit kits spécifiques à tel ou tel threat actor.

Pour le crawling, une infra avec un déploiement automatisé d’outils est mise en place par l’orateur pour répartir les crawl. Exemple de fraude à la carte bancaire ou un JS est inclu avec une récupération du n° de carte de crédit. Autre exemple sur un site de défense de corée du sud. Sur ce site, il y à une annonce « get flash player » avec un exploit-kit dont les logs sont non protégés sur le serveur.

The makes me Wannacry investigation

Petit historique des vers massif qui ont foutu le bordel: Blaster, Conficker, etc… puis WannaCry, qui n’a fait que 300k victimens, contre les 16M de Blaster, c’est rien. Mais pourtant ça a fait très mal ! Pourquoi ? parceque Wannacry défonçait les machines au lieu de simplement se propager. Pas de propagation par e-mail, mais seulement via eternalblue. Bon ya le fameux killswitch, qu’on peut sinkholer en local.

En fouillant dans leur tas de binaires, ils ont trouvé des binaires plus vieux que ceux déployés en ukraine et sans EternalBlue dedans. En regardant les machines infectés en février, ils ont trouvé des outils d’attaque tel qu’un proxy etc… Dont le déploiement d’un mimikatz et d’un winrar pour compresser/chiffrer des données.  Une autre backdoor utilisait un service Tor et des mots de passes pour bruteforcer des accès SMB.  Certains C&C et des bouts de code et des binaires était partagés avec Lazarus.

Malware Uncertainty Principle: an Alteration of Malware Behavior by Close Observation

Les malwares utilisent de plus en plus HTTPs, et du coup pour analyser ces malwares, on à besoin de faire des captures du traffic web chiffré sur ces bestioles. En partant du dataset Nomad, et en les exécutant sur des sandbox avec un MitMProxy ou pas, on peut observer quels malwares changent de comportement.

CMS Bruteforcing in malwares

Les cms offrents diverses techniques d’authentification basés sur un login/password, avec des urls spécifiques comme wp-login.php. Les attaques par bruteforce se font soit de façon verticale avec tout les couples login/pass testé sur un seul site, et les attaques horizontales ou un seul couple login/pass est testé sur un grand nombre de sites.
Une campagne d’attaques nommée FortDisco  qui une fois le site hacké, redirigeais les victime sur des EK Styx et Blackhole. En 2015, Aethra menait du bruteforce sur des sites WordPress depuis des routeurs. Autre exemple de 2015 avec un malware gamarue qui après 15j se mettait à bruteforcer des CMS. Troldesh joignait son c&c via Tor pour obtenir les wordlist pour le bruteforce.
Sathurbot est un botnet modulaire qui embarque un web crawler et un outil de bruteforce. L’infection se fait via des sites de warez qui propsent des torrents et des packs de codec infectés. Une fois infecté, les bots crawl via des moteurs de recherche pour trouver des CMS. Une fois le CMS trouvé, il vérifie le type de CMS, puis il procède au bruteforce.

Automation attack at scale

Les attaquants ont des objectifs clair quand il s’agit de fraude: obtenir des comptes en banque, créer de faux comptes, voler des n° de cartes de credit, etc… Les attaquant utilisent des outils hébergés sur une infrastructure pour utiliser/recycler les credentials obtenus. Coté outils: sentrymba, hitman, fraudfox, antidetec, hydra, medusa, phantomjs, curl, wget etc…  FraudFox propose quelques techniques anti-fingerprinting pour spoofer d’autre navigateurs. Selenium et phantomJS sont utilisé pour leur capacité à piloter un navigateur en mode headless. 
Sentry.mba fournit des fichiers de conf pour le top100 alexa, afin de pouvoir recycler les credentials sur ces sites et mener des fraudes sur ces sites comme l’ajout de faux followers, etc… Coté infra, ça bouffe du cloud AWS & Cie, des services socks, des botnets IoT revendu comme proxy, des fermes de proxy, etc…
Coté credentials, ils suffit de regarder les stats des leaks d’have i been pwned

Pour la détection, il est possible de faire du fingerprinting sur les headers, et détecter des user-agent anormaux, ce qui au vu des outils employés par les attaquants peut être suffisant pour en virer pas mal.

Malpedia

Une collection de samples de malwares gratuits avec des label, et unpacké (parceque les packer ça fait chier à la classification. Tout ces samples sont reliés avec les rapports d’analyse, des règles Yara, etc.. Pour la recherche, les dataset c’est très très important, surtout pour le machine learning. Autre soucis, c’est que plein de choses sont pas standard, et les formats d’échange c’est l’enfer. Sans compter sur les synonymes, ou les nommage spécifiques à chaque éditeur d’Anti-Virus.

Yet another Nymaim Talk

Augmented intelligence to scale human fighting botnets

Utilisation d’outils de NLP pour identifier si un domaine est lié à un botnet ou s’il est légitime.