轻松逃脱某防火墙对ss的探测
ss里面有些诡异的日志(我用的是ss-go)
2017/10/1* 1*:5*:19 error getting request ***:*** ***:*** EOF
这种日志不多,一般新开一个端口使用之后,一天之内会出现一个这样的记录。看着像有人主动发了一个错误的包,因为我不可能主动发了一个错误的包,而且大小还不对。头包本来就很小,一个数据包就可以了,不需要两个包,所以也不可能在读取请求时候就出现EOF中断的情况。所以这很可能是防火墙对ss的主动探测。
其实防火墙对ss的探测原理很简单,因为aes这些加密算法,字节都是一一对应的。就是说,加密之后,虽然内容发生了变换,但是位置不变。所以我们可以根据ss协议,修改其中一些字节,发个包看看,服务器有没有主动断开,如果断开,那么很可能是ss服务器。
具体原理可以看破娃的一篇文章,标题大概是为什么要弃用一次性验证。
那么问题来了,如果检测到错误,很长时间才断开呢,是否能逃避探测?我将ss-go代码加入如下修改:

修改之后,重新编译上传至vps,起一个新端口,目前没有出现端口被f的情况。之前曾经新开端口,但是很快被f了,说明这次改动的确有效。
这样改动的坏处是遭到攻击,会造成资源泄漏的问题,可以考虑加个逻辑,把发起大量无意义链接的ip关了。禁止的上限可以是上万,链接在服务器里面是很cheap的,有内存就行。
改动很简单,而且这样改之后,防火墙无法根据sleep这种行为来判断是否是ss服务器。很多基于tcp的协议,到一段时间之后,也会主动把链接关了,所以防火墙根本分不清究竟是不是改动之后的ss。
轻松逃脱某防火墙对ss的探测的更多相关文章
- Linux kali信息探测以及 Nmap 初体验
Nmap是一个开源的网络连接端口扫描软件(内置于kali中) 打开Nmap: > nmap 打开桌面化Nmap——zenmap: > zenmap Nmap支持多种扫描方式,用法简单,参数 ...
- debian防火墙firestarter
Firestarter是一个非常好用的防火墙图形化配置工具,作者和开发者是芬兰人. 首先肯定的说Firestarter防火墙是一款非常优秀的基于GUI图形用户界面下的,完全免费的自由软件,它为中小型L ...
- Linux防火墙工具Firestarter
Firestarter是一个非常好用的防火墙图形化配置工具,作者和开发者是芬兰人. 首先肯定的说Firestarter防火墙是一款非常优秀的基于GUI图形用户界面下的,完全免费的自由软件,它为中小型L ...
- Web渗透测试笔记(基础部分)
信息收集: dns信息收集 格式:dns... -参数 域名 -参数 示例: root@xxSec:~# dnsenum baidu.com root@xxSec:~# dnsenum -f dns. ...
- 网络扫描工具nmap
nmap一般就用来扫描主机是否在线(特别是扫描局域网内存活的机器).开放了哪些端口.其他的功能用的比较少,做渗透的人可能要了解的多些. 1.1 选项说明 nmap需要自行安装. shell> y ...
- Nmap参考指南(Man Page)
Table of Contents 描述 译注 选项概要 目标说明 主机发现 端口扫描基础 端口扫描技术 端口说明和扫描顺序 服务和版本探测 操作系统探测 时间和性能 防火墙/IDS躲避和哄骗 输出 ...
- Nmap扫描基础常用命令(包含进阶使用)
Nmap扫描常用命令 - Nmap scans common commands 1.扫描单个目标 nmap ip 如:nmap 192.168.0.101 2.扫描多个目标 nmap ip1 ip2 ...
- 2018-2019-2 网络对抗技术 20165318 Exp6 信息搜集与漏洞扫描
2018-2019-2 网络对抗技术 20165318 Exp6 信息搜集与漏洞扫描 原理与实践说明 实践原理 实践内容概述 基础问题回答 实践过程记录 各种搜索技巧的应用 DNS IP注册信息的查询 ...
- Nmap命令的常用实例
一.Nmap简介 nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端.确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting).它是网络管 ...
随机推荐
- Android 当打开“开发人员模式”中的“不保留活动”后,程序应当怎么保持正常执行
Android 当打开"开发人员模式"中的"不保留活动"后,程序应当怎么保持正常执行咧. .? 在这几天,我一直在纠结这个问题.从发现,程序出现这个问题,是由于 ...
- Microsoft Graph 桌面应用程序
作者:陈希章 发表于 2017年3月22日 桌面应用程序,在我这篇文章的语境中,我是特指在Windows桌面上面直接运行的.NET应用程序,包括Console Application,WPF Appl ...
- 【python】递归(阶乘、斐波纳契、汉诺塔)
- C图形库Easyx的使用
学习Eaxy X图形库后我的成果: 花了一周时间做出并完善了Flappy Bird,目前功能如下: 1. 背景的显示 2. 加入小鸟image 3. 小鸟自由下落,按空格键/鼠标右键后上升 4. 加入 ...
- 首次在C#程序中用log4net
众所周知log4net是一个很强大的日志管理库,我自己也用了下,这里作下记录: 首先新建一个项目Log4NetTest,然后将log4net.dll程序集添加引用至Log4NetTest. 然后在Lo ...
- 通过 Sublime Package Control 安装插件后不能用的解决办法
最近使用 Sublime 写 SASS 的时候需要使用高亮功能,通过 Package Control 安装了相关插件,但是安装之后没有反应,再次打开 Package Control 的时候,已经搜索不 ...
- ADODB.Connection、ADODB.RecordSet
1.数据库连接对象(ADODB. Connection)该对象用于与ODBC数据库建立连接,所有对数据库的操作均通过该连接进行.数据库连接对象ADODB. Connection的作用象Delphi中的 ...
- 一张图讲清楚TCP流量控制
- python的属性(property)使用
在面向对象编程的时候,我们定义一个Person类 class Person: def __init__(self): self.age = 22 这样写法能够方便的访问属性age, p = Perso ...
- bzoj 2588 Count on a tree
Description 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权.其中lastans是上一个询问的答案,初始 ...