FaPro是一个服务端协议模拟工具,可以轻松启停多个网络服务。
目标是支持尽可能多的协议,每个协议尽可能提供深度的交互支持。
支持的运行模式
支持的网络协议
使用TcpForward进行端口转发
支持tcp syn请求记录
支持ping请求记录
支持udp数据包记录
支持SSL ja3指纹
支持ip限速控制
支持 credssp ntlmv2 nla 认证。
支持配置用户登陆时的图片。

支持用户登陆。 支持部分终端命令,比如id、uid、whoami等。
账户格式: username:password:home:uid

支持用户登陆并进行交互。

支持sql语句查询交互。

支持用户登陆并进行交互。

当前只支持nmap指纹欺骗

支持登录与交互

支持登录与交互

支持基本信息

支持登录与交互

当前只支持nmap指纹欺骗

支持网站克隆。 需要安装chrome浏览器和chrome driver才能使用。
可以使用genConfig子命令生成所有协议和参数的配置文件。
使用172.16.0.0/16子网生成配置文件:
fapro genConfig -n 172.16.0.0/16 > fapro.json
或者使用本机地址,不创建虚拟网络:
fapro genConfig > fapro.json
只创建ssh协议的配置:
./fapro genConfig -p ssh
使用Verbose模式运行FaPro, 并在8080端口启动web服务:
fapro run -v -l :8080
对于windows用户,请先安装winpcap或npcap。
使用ELK分析协议日志,例如:

配置文件的简单介绍:
{
"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"
}
}
]
}
]
}
使用子网172.16.0.0/24创建一个虚拟网络,包含2个主机:
172.16.0.3 运行dns、ssh服务
172.16.0.5 运行rpc、rdp服务