Analyse Simple : C&C - Anubis Android Botnet

Thu, 02 Jul 2020 19:56:00 Oletros

Je ne m'intéresse pas du tout à la partie apk dans cet article mais uniquement à la partie web panel.

Vous pouvez trouver Anubis en version 2.5 ici : https://cdn-108.bayfiles.com/A212B6f3nb/3254b1fb-1632385960/Anubis_2.5.rar.

Assez rapidement, dans le fichier index.php, on voit une variable statique. Grosso modo, le but c'est de faire croire à une page CloudFlare mais avec un RAY ID statique donc permettant d'en faire, et un bon IOC, et un bon moyen de détecter des panels dont ce paramètre est laissé par défaut :

<div class="attribution">
<a href="https://www.cloudflare.com/5xx-error-landing?utm_source=iuam" target="_blank" style="font-size: 12px;">DDoS protection by Cloudflare</a>
<br>
Ray ID: 406e8b2b28b39726
</div>

Avec Censys, on va pouvoir faire une petite carto en 2 secondes.

On obtient des résultats assez rapidement :

15.185.193.242
173.212.197.2
185.118.165.43
185.219.221.183
185.238.171.82
188.225.24.119
193.223.107.209
195.133.145.245
104.156.247.54
20.52.25.247
20.64.243.97
212.114.52.89
213.139.210.223
213.227.155.66
217.25.89.151
3.131.97.146
3.136.85.214
3.138.189.103
37.1.216.167
37.252.5.112
39.104.61.81
45.132.106.150
45.153.242.162
52.183.124.88
5.45.71.199
5.61.49.161
5.61.50.136
62.171.134.143
66.42.85.6
68.183.0.182
79.141.160.172
79.141.165.48
80.66.87.28
84.22.55.221
86.106.181.99
91.240.85.132
94.140.115.156

Si le dossier de configuration est laissé par défaut, à savoir o1o, on peut trouver à coup sûr le dossier du panel admin. Le panel admin, par défaut avec le nom anubis, est souvent modifié car c'est ce qui est conseillé dans le manuel du dev.

J'ai lu tous les fichiers mais celui qui m'intéresse est le fichier nommé : a10.php.

En voici l'extrait intéressant :

echo"<p style='display:none; margin:0px auto;text-align:center' id='adv2'>Error connecting to the server, retry the operation!</p>
    <img src='../".namefolder."/images/gifInject2.gif' width='35%' height='27%' style='display:block; margin:100px auto; color:#FFF; font-family:Arial, Helvetica, sans-serif;' id='adv' />";

On comprends qu'en allant query ce fichier, on pourrait récupérer le nom du dossier justement. Je vais prendre une IP de la liste en exemple : 15.185.193.242.

En affichant le code source de la page : view-source:http://15.185.193.242/o1o/a10.php.

On y voit :

<p style='display:none; margin:0px auto;text-align:center' id='adv2'>Error connecting to the server, retry the operation!</p>
    <img src='../g45y45y54y5ybhtgh/images/gifInject2.gif' width='35%' height='27%' style='display:block; margin:100px auto; color:#FFF; font-family:Arial, Helvetica, sans-serif;' id='adv' />

Le dossier dans lequel se trouve le panel admin est donc : g45y45y54y5ybhtgh.

On peut le confirmer en allant sur cette page : http://15.185.193.242/g45y45y54y5ybhtgh. On fait une redirection vers la page : http://15.185.193.242/g45y45y54y5ybhtgh/login.php. Ce qui prouve que cela fonctionne en effet. Soyons clair, c'est pratique vu que un dossier nommé g45y45y54y5ybhtgh aurait pris des plombes à bruteforcer.

Dans le fichier sql inclus, on voit bien qu'il y un compte admin par défaut :

INSERT INTO `t_users` VALUES (34,'admin','b34912e584b42722ddbb7f6a17705be0','admin','Action',''),(35,'Traf','d92029cd8ca3c69dad8d87e6627c928a','traffic','Action','');

En clair, les identifiants sont : admin:admin. J'ai testé pour le plaisir :

https://in-securite.fr/user/pages/01.blog/c-and-c-anubis-android-botnet/01.png

Ce petit exemple est là pour rappeler à quel point il peut être simple parfois d'avoir accès au panel admin d'un botnet.

Note: Le soucis si vous analysez les IPs, c'est que vous constaterez que certaines sont bien actives et pourtant considérées comme non-malveillantes.

Oletros