
Simulateur de honeypot multi-protocole prenant en charge plus de 50 services réseau avec interaction profonde, journalisation TCP/UDP/ICMP, prise d'empreinte JA3 et déploiement de réseau virtuel pour le renseignement sur les menaces et la tromperie réseau.
FaPro est un outil de serveur de protocole factice, pouvant facilement démarrer ou arrêter plusieurs services réseau.
L'objectif est de prendre en charge autant de protocoles que possible, et d'assurer autant d'interactions approfondies que possible pour chaque protocole.
Modes d'exécution pris en charge :
Protocoles pris en charge :
Prend en charge l'authentification credssp ntlmv2 nla.
Permet de configurer l'image affichée lors de la connexion de l'utilisateur.

Prend en charge la connexion utilisateur.
Prend en charge les commandes terminal factices, telles que id, uid, whoami, etc.
Format du compte : username:password:home:uid

Prend en charge la connexion et l'interaction utilisateur.

Prend en charge l'interaction avec les requêtes SQL

Prend en charge la connexion et l'interaction utilisateur.

Actuellement, ne prend en charge que l'usurpation d'empreinte nmap

Prend en charge la connexion et l'interaction.

Prend en charge la connexion et l'interaction

Prend en charge les informations de base

Prend en charge la connexion et l'interaction

Actuellement, ne prend en charge que l'usurpation d'empreinte nmap

Prend en charge le clonage de site web. Vous devez installer le navigateur Chrome et chrome driver pour qu'il fonctionne.
La configuration de tous les protocoles et paramètres est générée par la sous-commande genConfig.
Utiliser le sous-réseau 172.16.0.0/16 pour générer le fichier de configuration :
fapro genConfig -n 172.16.0.0/16 > fapro.json
Ou utilisez l'adresse locale au lieu du réseau virtuel :
fapro genConfig > fapro.json
Générer uniquement la configuration du protocole SSH :
./fapro genConfig -p ssh
Exécuter FaPro en mode verbeux et démarrer le service web sur le port 8080 :
fapro run -v -l :8080
Pour les utilisateurs Windows, veuillez installer winpcap ou npcap.
Utiliser ELK pour analyser les journaux de protocole :

Cette section contient l'exemple de configuration utilisé par FaPro.
{
"version": "0.65",
"network": "127.0.0.1/32",
"network_build": "localhost",
"storage": null,
"geo_db": "/tmp/geoip_city.mmdb",
"hostname": "fapro1",
"use_logq": true,
"cert_name": "unknown",
"syn_dev": "any",
"udp_dev": "any",
"icmp_dev": "any",
"limiter": {
"period": 10,
"count": 3,
"block_period": 20
},
"exclusions": [],
"hosts": [
{
"ip": "127.0.0.1",
"handlers": [
{
"handler": "dcerpc",
"port": 135,
"params": {
"accounts": [
"administrator:123456",
],
"domain_name": "DESKTOP-Q1Test"
}
}
]
}
]
}
Créer un réseau virtuel. Le sous-réseau est 172.16.0.0/24, inclut 2 hôtes :
172.16.0.3 exécute les services dns, ssh,
et 172.16.0.5 exécute les services rpc, rdp,
les journaux d'accès au protocole sont sauvegardés dans elasticsearch, exclure les journaux d'accès de 127.0.0.1 et 8.8.8.8.
{
"version": "0.65",
"network": "172.16.0.0/24",
"network_build": "userdef",
"storage": "es://http://127.0.0.1:9200",
"use_logq": true,
"cert_name": "unknown",
"syn_dev": "any",
"udp_dev": "any",
"icmp_dev": "any",
"limiter": {
"period": 10,
"count": 3,
"block_period": 20
},
"exclusions": ["127.0.0.1", "8.8.8.8"],
"geo_db": "",
"hosts": [
{
"ip": "172.16.0.3",
"handlers": [
{
"handler": "dns",
"port": 53,
"params": {
"accounts": [
"admin:123456"
],
"appname": "domain"
}
},
{
"handler": "ssh",
"port": 22,
"params": {
"accounts": [
"root:5555555:/root:0"
],
"prompt": "$ ",
"server_version": "SSH-2.0-OpenSSH_7.4"
}
}
]
},
{
"ip": "172.16.0.5",
"handlers": [
{
"handler": "dcerpc",
"port": 135,
"params": {
"accounts": [
"administrator:123456"
],
"domain_name": "DESKTOP-Q1Test"
}
},
{
"handler": "rdp",
"port": 3389,
"params": {
"accounts": [
"administrator:123456"
],
"auth": false,
"domain_name": "DESKTOP-Q1Test",
"image": "rdp.jpg",
"sec_layer": "auto"
}
}
]
}
]
}
Utilisez le script ipclone.py dans Scripts. Vous pouvez cloner la configuration de service IP depuis fofa pour générer rapidement la configuration de service de la machine réelle.

Nous avons rassemblé quelques questions fréquemment posées. Avant de signaler un problème, veuillez vérifier si la FAQ contient la réponse à votre problème.
Les issues sont les bienvenues.
Utiliser TcpForward pour transférer le trafic réseau
Prise en charge de la journalisation TCP SYN
Prise en charge de la journalisation ICMP ping
Prise en charge de la journalisation des paquets UDP
Prise en charge de l'empreinte SSL JA3
Prise en charge du limiteur d'IP