渗透中面对的大部分目标除了暴露在互联网的部分,还有隐藏在内网的大量资产,这部分资产往往无法联通外网,很少暴露在攻击者面前,与此同时安全一般也没有外部资产做的全面 。如果我们从某一外部互联网入口成功进入了内网,就可以利用frp工具搭建起一个隧道,对这些资产进行测试。
项目地址
https://github.com/fatedier/frp
通过release页面下载对应系统的压缩包解压即可
基本使用介绍
服务端配置
1 2 3 4 |
# frps.ini [common] bind_port = 7000 token = www.baidu.com |
使用如下命令开启服务器
1
|
frps -c frps.ini
|
客户端配置(socks5隧道)
配置客户端时,要注意common中的ip和端口指向服务器,token与服务器中保持一致,每个socks代理,需要单独起plugin_name,并使用不同的remote_port。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
[common] server_addr = x.x.x.x server_port = 7000 tls_enable = true token = www.baidu.com pool_count = 5 protocol = tcp #协议类型 health_check_type = tcp health_check_interval_s = 100 [socks-001] type = tcp remote_port = 6666 #代理的端口 plugin = socks5 #使用的协议 plugin_user = admin plugin_passwd = www.baidu.com use_encryption = true #是否加密 use_compression = true |
使用如下命令开启客户端
1 2 3 4 |
普通模式: frpc -c frpc.ini 后台无回显模式: nohup frpc -c frpc.ini & |
此时在proxyfire等代理工具中配置:
- ip为server_ip
- port为remote_port
- 用户为plugin_user
- 密码为plugin_passwd
即可将客户端网络作为代理出口使用
客户端配置(web转发)
1 2 3 4 5 6 7 8 9 |
# frpc.ini [common] server_addr = x.x.x.x server_port = 7000 token = www.baidu.com [web] type = http local_port = 8080 custom_domains = www.yourdomain.com |
客户端配置(ssh转发)
1 2 3 4 5 6 7 8 9 10 |
# frpc.ini [common] server_addr = x.x.x.x server_port = 7000 token = www.baidu.com [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 |