当前位置: 首页 > news >正文

Portforge:一款功能强大的轻量级端口混淆工具

关于Portforge

Portforge是一款功能强大的轻量级端口混淆工具,该工具使用Crystal语言开发,可以帮助广大研究人员防止网络映射,这样一来,他人就无法查看到你设备正在运行(或没有运行)的服务和程序了。简而言之,该工具是一个抵御网络侦查的强大工具。

Portforge可以在我们的设备上按需求打开大量套接字(1024-65535之间),低于1024的端口也可以实现,但必须要使用到root用户权限。

技术细节

Portforge.cr脚本使用了Crystal编译器的一种名为Fibers的内置技术,这种技术类类似于系统线程,但Fibers更加轻量级,且可以通过进程来管理执行。

我们所选择的端口号范围越大,脚本执行加载每个套接字所需的时间就越长,但脚本总共执行时间也就是几分钟,具体取决于操作系统和配置。

工作机制

该工具的运行分为两个步骤:

1、它首先会在系统上执行扫描,以识别已经打开了的端口信息,然后将已打开的端口存储在一个列表中,并将关闭的端口存储到另外一个列表中;

2、打开关闭的端口,因此该脚本会选择列表中所有关闭的端口,并在每个端口上打开一个套接字;

当主Fiber在每一个端口上打开一个套接字时,会调用其他的Fiber,并监听传入的连接。这个过程会不断重复进行,直到脚本中断执行为止。

工具要求

Crystal编译器 

工具下载

由于该工具基于Crystal语言开发,因此我们首先需要在本地设备上安装并配置好Crystal编译器环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/Beyarz/Portforge.git

工具运行

./portforge IP startport endport

工具使用演示

下图显示为Portforge的运行界面:

下图显示的是Nmap的扫描结果,我们可以看到,Nmap会认为我们的设备运行了下图所示的所有服务,但实际上我们只是运行了Portforge:

许可证协议

本项目的开发与发布遵循Unlicense授权许可协议。

项目地址

Portforge:【GitHub传送门】

参考资料

Concurrency - Crystal

Install - The Crystal Programming Language

http://www.lryc.cn/news/347325.html

相关文章:

  • 1.8. 离散时间鞅-无界停时定理与随机游走
  • Google Pixel4手机刷机+Root+逆向环境详细教程
  • IT项目管理-小题计算【太原理工大学】
  • ARP欺骗使局域网内设备断网
  • Android动画(四):PathMeasure实现路径动画
  • HTTP 连接详解
  • 练习题(2024/5/12)
  • Day50代码随想录动态规划part12:309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费
  • 【软考】scrum的步骤
  • 【C语言】编译与链接
  • Consul 注册的服务地址变成了 127.0.1.1
  • 数字水印 | 离散小波变换 DWT 的 Python 代码实现
  • [框架] Unity 公共执行器
  • 二进制转为HEX数组小工具
  • 数据结构-二叉树-红黑树
  • C++11 新特性 decltype 说明符
  • java线程局部变量使用方式
  • 【隧道篇 / WAN优化】(7.4) ❀ 01. 启动WAN优化 ❀ FortiGate 防火墙
  • 2024数维杯数学建模B题生物质和煤共热解问题的研究原创论文分享
  • 中国电子学会(CEIT)2022年12月真题C语言软件编程等级考试三级(含详细解析答案)
  • 今日早报 每日精选15条新闻简报 每天一分钟 知晓天下事 5月12日,星期日
  • 微服务思想以及实现
  • C语法:格式符号%f和%lf引发的错误
  • Java基础入门day48
  • C++笔记(体系结构与内核分析)
  • c++ 唤醒指定线程
  • java报错:使用mybatis plus查询一个只返回一条数据的sql,却报错返回了1000多条
  • AI图书推荐:利用生成式AI实现业务流程超自动化
  • 什么事防抖和节流,有什么区别,如何实现
  • PanguSync大数据量初始化脚本