当前位置:网站首页>设置iptables规则来保护CS服务器
设置iptables规则来保护CS服务器
2022-08-10 17:42:00 【MssnHarvey】
之前在网络上看到大多都使用socat这个工具进行流量转发,但最近和一些师傅交流了解到,有时候使用socat进行转发的时候其稳定性以及速率可能不是那么好,对于流量比较多的情况也许可以使用iptables进行此操作,同时对cs服务器设定一些访问策略,对真实的cs服务器起到一定保护作用。这里简单说一下iptables在此场景的使用,各位师傅如有其他的思路或者工具还请多多交流
iptables中的“四表五链”及“拥堵策略”
“四表”是指,iptables的功能——filter, nat, mangle, raw
filter:控制数据包是否允许进出及转发(INPUT、OUTPUT、FORWARD),可以控制的链路 有input, forward, output
nat:控制数据包中地址转换,可以控制的链路有prerouting(路由前), input, output, postrouting
mangle:修改数据包中的原数据,可以控制的链路有prerouting), input, forward, output, postrouting
raw:控制nat表中连接追踪机制的启用状况,可以控制的链路有prerouting, output
有关iptables具体介绍可以看下面这篇文章
https://www.cnblogs.com/vathe/p/6973656.html
使用示例:
iptables –[A|I 链] [-i|o 网络接口] [-p 协议] [-s 来源ip/网域] [-d 目标ip/网域] –j[ACCEPT|DROP]
Iptables设置
首先我需要在跳板机A上使用以下命令将8081端口接收到的流量转发至CS服务器的80端口 (协议和端口可自由替换)
iptables -I INPUT -p tcp -m tcp --dport 8081 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 8081 -j DNAT --to-destination xxx.xxx.xxx.xxx:8081//
这个45323是我的teamserver连接端口,我也给转发到跳板机上去了,以后都从跳板机进行登录了
iptables -I INPUT -p tcp -m tcp --dport 45323 -j ACCEPT iptables -t nat -A PREROUTING -p tcp --dport 45323 -j DNAT --to-destination xxx.xxx.xxx.xxx:45323 iptables -t nat -A POSTROUTING -j MASQUERADE sysctl net.ipv4.ip_forward=1
使用iptables -nL --line-number -t 表名 查看当前设置好的规则
然后我们在cs服务器上设置对8081端口,以及45323端口的访问控制,以及在cs服务器上设置 对整个服务器(全部ip)禁止9100端口
iptables -I INPUT -p tcp --dport 8081 -j DROP
iptables -I INPUT -p tcp --dport 45323 -j DROP //只允许跳板机访问这些端口端口
iptables -I INPUT -s xxx.xxx.xxx.xxx -p tcp --dport 8081 -j ACCEPT
iptables -I INPUT -s xxx.xxx.xxx.xxx -p tcp --dport 45323 -j ACCEPT
我们可以看到 截图里同意来自xxxx访问45323,8081端口,拒绝了其他地址对45323以及8081端口的访问,iptables的策略设置完成
CS配置以及应用
ok 我们打开cs 连接试一下
不出意外连接失败
把服务器地址改成跳板机的ip
ok 连接成功 然后我们建立一个http的监听器看看,host和stager都填写我的跳板机
简单生成一个后门
运行上线,可以看到cs的web日志显示出我的跳板机访问了 checksum8算法生成的url
最近看到一些文章通过URL的生成算法,以及对Beacon stage的解析来寻找Beacon staging server
https://mp.weixin.qq.com/s/WUf96myUi8F3X_eNWPRTdw
对于如何Bypass cs beacon的扫描,各位可以看下这篇文章
https://mp.weixin.qq.com/s/fhcTTWV4Ddz4h9KxHVRcnw
访问跳板机的此目录可下载stage文件,直接访问真实的cs服务器则无法下载。当然这种办法治标不治本,只能对真实的cs服务器起到那么一点保护作用,cs服务器的一些前期隐藏工作和检测规避手段网上有很多,这里就不一一举例了。
边栏推荐
- R语言检验时间序列的平稳性:使用fUnitRoots包中的adfTest函数检验时间序列数据是否具有平稳性(设置参数type为nc时、既不去除趋势也不进行中心化处理)
- 华为云连续5年保持中国政务云基础设施市场份额第一…
- 如何学习性能测试?
- Oracle Install [email protected] 7.6
- 6月各手机银行活跃用户较快增长,创半年新高
- dedecms支持PowerPoint粘贴
- 强网杯2021final
- R语言使用ggpubr包的ggbarplot函数可视化柱状图、设置add参数为mean_se和jitter可视化不同水平均值的柱状图并为柱状图添加误差线(se标准误差)和抖动数据点分布
- 同一块中出现两个 * 就不能正常显示
- Allegro软件Shape菜单下的每个命令的含义
猜你喜欢
Go 语言快速入门指南:第四篇 与数据为舞之数组
Toronto Research Chemicals萜烯分析丨反式植物醇
Making Pre-trained Language Models Better Few-Shot Learners
dedecms支持PowerPoint粘贴
FFmpeg extract H264 nalu from the mp4
机器人控制器编程实践指导书旧版-实践六 LCD液晶显示(点阵)
CDH6.3.2之Kerberos安全认证_大数据培训
自动化测试 RobotFramework安装以及使用教程
【燃】是时候展现真正的实力了!一文看懂2022华为开发者大赛技术亮点
直播回顾|多云时代,如何建设企业级云管理平台?(附建设指南下载)
随机推荐
机器人控制器编程实践指导书旧版-实践八 机器人综合设计
欧洲核子研究中心首次在量子机器学习研究中取得实效
Kong自定义插件初体验
Live Review|How to build an enterprise-level cloud management platform in the multi-cloud era?(with the download of the construction guide)
文件包含漏洞复习总结
「软件架构」10种常见的软件架构模式
「企业架构」什么是Zachman框架?
Go 语言快速入门指南:第四篇 与数据为舞之数组
【Web3 系列开发教程——创建你的第一个 NFT(8)】如何开发一个成功的 NFT 项目 | NFT 社区建设技巧
fastjson chain analysis (1.2.22-47)
Moonbeam于Moonbase Alpha构建新式XCM对EVM跨链功能
LeetCode 0640.求解方程:过几天就看不懂了的迷惑性代码,但是是详解
函数柯里化(curry)
【严重】Nps 鉴权绕过 0day 漏洞
awk if else if else
最新手机号码的正则
Splitting and merging long markdown documents
R语言ggplot2可视化:使用ggpubr包的ggscatter函数可视化分组散点图、stat_mean函数在分组数据点外侧绘制凸包并突出显示分组均值点、自定会均值点的大小以及透明度
Your local docbook2man was found to work with SGML rather than XML
微信小程序富文本标签rich-text