[开源工具][协议模拟]FaPro
官方简介开源地址:https://github.com/fofapro/fapro
免费、跨平台、单文件部署的网络协议服务端模拟器
FaPro是一个服务端协议模拟工具,可以轻松启停多个网络服务。
目标是支持尽可能多的协议,每个协议尽可能提供深度的交互支持。
特性
[*]支持的运行模式
[*] 本地模式
[*] 虚拟网络
[*]支持的网络协议
[*] DNS
[*] DCE/RPC
[*] EIP
[*] Elasticsearch
[*] FTP
[*] HTTP
[*] IEC 104
[*] Memcached
[*] Modbus
[*] MQTT
[*] MySQL
[*] RDP
[*] Redis
[*] S7
[*] SMB
[*] SMTP
[*] SNMP
[*] SSH
[*] Telnet
[*] VNC
[*]使用TcpForward进行端口转发
协议模拟演示Rdp支持 credssp ntlmv2 nla 认证。支持配置用户登陆时的图片。 https://github.com/fofapro/fapro/raw/master/docs/rdp.gif
SSH支持用户登陆。 支持部分终端命令,比如id、uid、whoami等。账户格式: username:password:home:uid https://github.com/fofapro/fapro/raw/master/docs/ssh.gif
HTTP支持网站克隆。使用指南生成配置可以使用genConfig子命令生成所有协议和参数的配置文件。使用172.16.0.0/16子网生成配置文件:
fapro genConfig > fapro.json运行协议模拟器使用Verbose模式运行FaPro, 并在8080端口启动web服务:
日志分析使用ELK分析协议日志,例如: https://github.com/fofapro/fapro/raw/master/docs/FaProLogs.jpg
配置文件配置文件的简单介绍:{
"version": "0.33",
"network": "127.0.0.1/32",
"network_build": "localhost",
"storage": null,
"hosts": [
{
"ip": "127.0.0.1",
"handlers": [
{
"handler": "dcerpc",
"port": 135,
"params": {
"accounts": [
"administrator:123456",
],
"domain_name": "DESKTOP-Q1Test"
}
}
]
}
]
}
[*]version: 配置文件版本号
[*]network: 虚拟网络使用的子网,或者本机模式下绑定的ip地址
[*]network_build: 网络模式(支持: localhost, all, userdef)
[*]localhost: 本地模式,所有服务在本机监听
[*]all: 创建虚拟网络中的所有主机(子网中的所有主机都可以ping通)
[*]userdef: 只创建hosts配置中指定的主机
[*]storage: 指定日志收集的存储, 支持sqlite, mysql, elasticsearch. 示例:
[*]sqlite3:logs.db
[*]mysql://user:password@tcp(127.0.0.1:3306)/logs
[*]es://http://127.0.0.1:9200
[*]hosts: 主机列表,每一项为一个主机配置
[*]handlers: 服务列表,每一项为一个服务配置
[*]handler: 服务名(协议名)
[*]params: 设置服务支持的参数
示例
使用子网172.16.0.0/24创建一个虚拟网络,包含2个主机:
172.16.0.3 运行dns、ssh服务
172.16.0.5 运行rpc、rdp服务
协议访问支持保存到elasticsearch。
{
"version": "0.33",
"network": "172.16.0.0/24",
"network_build": "userdef",
"storage": "es://http://127.0.0.1:9200",
"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"
}
}
]
}
]
}
常见问题我们收集了一些常见问题. 报告issue前,请先看看常见问题集中是否有你要找的答案。 谢谢楼主分享,收下学习 谢谢分享,已回复
页:
[1]