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

rtpinsertsound:语音注入攻击!全参数详细教程!Kali Linux教程!

简介

2006年8月至9月期间,我们创建了一个用于将音频插入指定音频(即RTP)流的工具。该工具名为rtpinsertsound。
该工具已在Linux Red Hat Fedora Core 4平台(奔腾IV,2.5 GHz)上进行了测试,但预计该工具能够在各种Linux发行版上成功构建和执行。该工具的第一个发行版是:v1.1。

v3.0是2007年1月发布的升级版本,旨在支持通过libfindrtp自动检测RTP会话端点地址和端口。

v2.0 是 2006 年 10 月发布的升级版本,除了 v1.1 中支持的 tcpdump 格式文件(即 G.711 RTP/UDP/IP/ETHERNET 捕获)的音频输入外,还支持直接将某些波形(即 .wav)文件输入到工具中作为要插入的音频源。

本工具的开发初衷是

  • 帮助 VoIP 基础设施所有者测试、审计和发现其部署中的安全漏洞。
  • 帮助第三方测试、审计和发现其 VoIP 基础设施所有者(与其签订合同或以其他方式明确授权第三方评估该 VoIP 基础设施)的安全漏洞。
  • 帮助 VoIP 基础设施生产商测试、审计和发现其生产的 VoIP 硬件/软件/系统中的安全漏洞。
  • 用于集体教育活动或个人出于自身求知欲、娱乐或炫耀目的目的使用(除非存在恶意)。

严禁非法使用此工具。

构建 rtpinsertsound 时,需要特别注意以下开源库

1) libnet v1.1.2.1(该工具至少需要此版本)
2) libpcap v0.9.4(该工具可能兼容某些早期版本)
3) libfindrtp [例如,用于嗅探 RTP 会话的实用程序 - libfindrtp_find_rtp()]
4) hack_library [例如,用于嗅探 RTP 会话的实用程序 - Str2IP()]

注意:rtpinsertsound 的 Makefile 假定 hack_library.o 和 hack_library.h 位于 rtpinsertsound 目录下 Makefile 对应的 ../hack_library 文件夹中。

5) 基于 SUN 公司于 20 世纪 90 年代初发布的开源代码的 G.711 编解码器转换库,由 Borge Lindberg 于 1994 年 12 月 30 日更新。

注意:rtpinsertsound 工具的 Makefile 假定原始 g711.c 文件已重命名为 g711conversions.c,并且已添加 g711conversions.h 文件。rtpinsertsound 工具的 Makefile 假定此库的头文件和对象位于 ../g711conversions 文件夹中,该文件夹与 rtpinsertsound 的构建文件夹相对。

安装

源码安装

通过以下命令来进行克隆项目源码,建议请先提前挂好代理进行克隆项目。

git clone https://github.com/foreni-packages/rtpinsertsound.git

进入目录并查看。 

cd rtpinsertsound/
ls

进入 g711conversions 目录并查看。

cd g711conversions
ls

 

编译一下

make

 

回到上一级目录,并进入 hack_library 目标查看。

cd ..
cd hack_library
ls

 

编译一下

make

回到上一级目录并进入 rtpinsertsound_v3.0 目录并查看。

cd ..
cd rtpinsertsound_v3.0/
ls

编译

make

运行以下命令,如果出现这个界面,就说明安装成功了。

./rtpinsertsound -h

APT包管理器安装

Kali Linux 默认已经安装好 rtpinsertsound 工具了,如果还未安装的话,也可以通过以下命令来进行安装。

sudo apt install rtpinsertsound

使用

1. -h

帮助 - 打印此用法

rtpinsertsound -h

2. 常规使用

注意:要使用 root 权限才能运行。

sudo rtpinsertsound test2.wav -v

 

要将音频混入目标实时音频流的文件路径名。如果文件扩展名是 .wav,则该文件必须是符合以下约束的标准 Microsoft RIFF 格式的 WAVE 文件:
1) 标头“块”必须是以下两种序列之一:
        RIFF, fmt, fact, data 或 RIFF, fmt, data
2) 压缩码 = 1(PCM/未压缩)
3) 声道数 = 1(单声道)
4) 采样率 (Hz) = 8000
5) 有效位/采样 =
有符号,线性 16 位或
无符号,线性 8 位
如果文件名未指定 .wav 扩展名,则该文件被假定为 tcpdump 格式的文件,包含一系列仅包含 G.711 u-law RTP/UDP/IP/ETHERNET 消息的序列
注意:是的,即使此文件必须包含,该格式也被称为“tcpdump” UDP 消息

注意:如果您在具有多个已启动以太网接口的主机上运行此工具,请注意,这些接口在路由表中的显示顺序以及可从这些接口访问的网络可能会迫使 Linux 将欺骗的音频数据包输出到与您在命令行中指定的接口不同的接口。这应该不会影响该工具,除非这些欺骗的数据包通过您在命令行中指定的接口返回主机(例如,这些接口通过集线器连接)。

3. -a

源 RTP IPv4 地址

4. -A

源 RTP 端口

5. -b

目标 RTP IPv4 地址

6. -B

目标 RTP 端口

sudo rtpinsertsound test2.wav -a 192.168.174.134 -A 5060 -b 192.168.174.132 -B 5060 

7. -f spoof factor

用于以下操作的数值:
a) 递增从第 i 个合法数据包获得的 RTP hdr 序列号,以生成第 i 个欺骗数据包的 RTP hdr 序列号
b) 将 RTP 有效载荷长度相乘,并将该乘积与从第 i 个合法数据包获得的 RTP hdr 时间戳相加,以生成第 i 个欺骗数据包的 RTP hdr 时间戳
c) 递增从第 i 个合法数据包获得的 IP hdr ID 号,以生成第 i 个欺骗数据包的 IP hdr ID 号
[范围:+/- 1000,默认值:2]

sudo rtpinsertsound test2.wav -v -f 2

8. -i

接口(例如 eth0)

sudo rtpinsertsound test2.wav -v -i eth0

9. -j jitter factor

在目标音频流中接收到合法 RTP 数据包后,将启用下一个音频流的输出欺骗数据包。此因子决定了该欺骗数据包的实际传输时间。该因子与您希望启用的欺骗数据包与下一个合法数据包的传输间隔有多近有关。例如,-j 10 表示编解码器传输间隔的 10%。如果传输间隔 = 20,000 微秒(即 G.711),则延迟欺骗 RTP 数据包的输出,直到时间位于下一个合法 RTP 数据包预期时间的 2000 微秒(即 10%)以内。换句话说,延迟 100% 减去抖动因子,即本例中的 18,000 微秒。抖动因子越小,在收到下一个合法 RTP 数据包之前无法输出当前欺骗数据包的风险就越大。因此,建议使用大于 10 的因子。
[范围:0 - 80,默认值:80 = 尽快输出欺骗数据包]

sudo rtpinsertsound test2.wav -v -j 80 

10. -p

设置和注入之间的暂停秒数

sudo rtpinsertsound test2.wav -v -p 10

11. -v

详细输出模式

sudo rtpinsertsound test2.wav -v

综合使用

通过网络插入音频文件(/usr/share/rtpinsertsound/stapler.wav)并使用详细输出(-v)

sudo rtpinsertsound /usr/share/rtpinsertsound/stapler.wav -v

总结

rtpinsertsound 是一款针对 RTP 协议的语音注入工具,可用于向未加密或未认证的 VoIP 通话中插入音频数据。在合法授权的测试环境中,rtpinsertsound 有助于安全人员验证 RTP 流是否存在内容篡改或劫持风险。通过该工具,用户可以深入理解语音传输链路中的安全薄弱点,尤其是在未启用 SRTP 等加密机制的场景中。作为一款典型的“主动干扰”类测试工具,rtpinsertsound 为语音通信安全提供了重要的攻防验证手段。

在此特别强调,本教程仅在合法授权的情况下进行测试和研究,请勿用于其他用途。未经授权使用此类工具可能会侵犯他人隐私,触犯相关法律,任何因此引发的法律或利益纠纷与本人无关。

欢迎各位大佬,小白来找我交流。

相关文章:

rtpinsertsound:语音注入攻击!全参数详细教程!Kali Linux教程!

简介 2006年8月至9月期间,我们创建了一个用于将音频插入指定音频(即RTP)流的工具。该工具名为rtpinsertsound。 该工具已在Linux Red Hat Fedora Core 4平台(奔腾IV,2.5 GHz)上进行了测试,但预…...

django项目开启debug页面操作有数据操作记录

在项目的主文件中setting中配置 """ Django settings for ProjectPrictice project.Generated by django-admin startproject using Django 3.0.1.For more information on this file, see https://docs.djangoproject.com/en/3.0/topics/settings/For the ful…...

【Vim】高效编辑技巧全解析

本篇将从光标移动技巧、常用快捷操作、组合命令运用等方面逐步讲解 vim 的使用。 📘 高效光标移动技巧 在 Vim 中,光标移动是编辑效率的核心之一。以下是一些必须掌握的移动命令,按使用频率和实用程度分类整理: 🔹 基…...

基于 Node.js 的 Express 服务是什么?

Express 是基于 ‌Node.js‌ 的一个轻量级、灵活的 Web 应用框架,用于快速构建 ‌HTTP 服务‌(如网站、API 接口等),以下是详细解析: ‌一、Express 的核心作用‌ ‌简化 Node.js 原生开发‌ Node.js 原生 http 模块虽…...

【C++】入门基础知识(1.5w字详解)

本篇博客给大家带来的是一些C基础知识!包含函数栈帧的详解! 🐟🐟文章专栏:C 🚀🚀若有问题评论区下讨论,我会及时回答 ❤❤欢迎大家点赞、收藏、分享! 今日思想&#xff1…...

Excel数据脱敏利器:自动保留格式的智能脱敏脚本

源码: import openpyxl import re import random import string from openpyxl.utils import get_column_letter from copy import copy from tqdm import tqdmdef mask_data(value):"""脱敏处理数据"""if isinstance(value, str):i…...

Photoshop2025(PS2025)软件及安装教程

在数字图像编辑领域,Adobe Photoshop 一直是无可争议的王者。如今,Photoshop 2025 重磅登场,再次为我们带来了惊喜与变革,进一步巩固了它在行业中的领先地位。 Photoshop 2025 在人工智能方面的升级令人瞩目。其全新的 “Magic Se…...

AI赋能开源:如何借助MCP快速解锁开源项目并提交你的首个PR

引子 很多同学都梦想为开源项目贡献力量,然而现实往往是——面对庞大复杂的项目,从入门到提交第一个有实质性代码的PR,时间跨度可能长达数年。传统路径通常是先从文档贡献开始,逐步深入理解项目架构,最终才能进行代码…...

计算机视觉---GT(ground truth)

在计算机视觉(Computer Vision, CV)领域,Ground Truth(GT,中文常译为“真值”或“ ground truth”) 是指关于数据的真实标签或客观事实,是模型训练、评估和验证的基准。它是连接算法与现实世界的…...

SQL进阶之旅 Day 9:高级索引策略

【SQL进阶之旅 Day 9】高级索引策略 在SQL查询性能调优中,索引是最为关键的优化手段之一。Day 3我们已经介绍了基础索引类型,今天我们将深入探讨高级索引策略,包括覆盖索引、索引选择性分析、强制使用索引等实用技巧。这些技术能显著提升复杂…...

R 语言科研绘图第 52 期 --- 网络图-分组

在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...

姜老师的MBTI课程:MBTI是可以转变的

我们先来看内向和外向这条轴,I和E内向和外向受先天遗传因素的影响还是比较大的,因为它事关到了你的硬件,也就是大脑的模型。但是我们在大五人格的排雷避坑和这套课程里面都强调了一个观点,内向和外向各有优势,也各有不…...

Django【应用 02】第一个Django应用开发流程图

第 1 部分 安装 Django创建项目初始化应用配置视图、路由 第 2 部分 数据库配置语言和时区配置应用设置表初始化模型创建、激活、表创建管理员账号创建应用加入管理页面 第 3 部分 更多视图(添加模板及模板调用、render、get_object_or_404、去除模板里的硬编码…...

湖北理元理律师事务所:用科学规划重塑债务人生

在债务问题日益普遍的当下,如何平衡还款压力与生活质量成为社会性难题。湖北理元理律师事务所通过“债务优化生活保障”的双轨服务模式,为债务人构建可持续的解决方案。其核心逻辑在于:债务处置不是剥夺生活,而是重建财务秩序。 …...

《江西棒球资讯》棒球运动发展·棒球1号位

联赛体系结构 | League Structure MLB模式 MLB采用分层体系(大联盟、小联盟),强调梯队建设和长期发展。 MLB operates a tiered system (Major League, Minor League) with a focus on talent pipelines and long-term development. 中国现…...

华为OD机试_2025 B卷_静态扫描(Python,100分)(附详细解题思路)

题目描述 静态扫描可以快速识别源代码的缺陷,静态扫描的结果以扫描报告作为输出: 1、文件扫描的成本和文件大小相关,如果文件大小为N,则扫描成本为N个金币 2、扫描报告的缓存成本和文件大小无关,每缓存一个报告需要…...

python打卡训练营打卡记录day41

知识回顾 数据增强卷积神经网络定义的写法batch归一化:调整一个批次的分布,常用与图像数据特征图:只有卷积操作输出的才叫特征图调度器:直接修改基础学习率 卷积操作常见流程如下: 1. 输入 → 卷积层 → Batch归一化层…...

GD32F103系列工程模版创建记录

准备条件: 1:首先需要下载GD32F103的官方库 2:GD32F103的软件包 3:KEIL5软件 4:单片机GD32F103C8T6 本文已经默认KEIL5已将安装好GD32F103的软件包了 步骤一 基本模版创建 1 打开KEIL5软件,新建工程&am…...

PH热榜 | 2025-05-24

1. Chance AI: Visual Reasoning 标语:通过视觉推理模型即时进行可视化搜索 介绍:Chance AI 是你的视觉小助手——只需拍一张照片,就能揭示你所看到事物背后的故事。通过我们全新的视觉推理功能,它不仅能识别物体,还…...

《高等数学》(同济大学·第7版) 的 详细章节目录

上册 第一章 函数与极限 映射与函数 数列的极限 函数的极限 无穷小与无穷大 极限运算法则 极限存在准则 两个重要极限 无穷小的比较 函数的连续性与间断点 连续函数的运算与初等函数的连续性 闭区间上连续函数的性质 🔹 重点节: 2-3&#xff…...

能源领域新兴技术论坛:EMQ 实时数据引擎构建工业智能中枢

5 月 26 日,由沙特阿美亚洲公司主办的能源领域新兴技术论坛在上海顺利举行。本次论坛聚焦智能工厂、无人机与机器人、可靠性与完整性、先进材料四大技术赛道,吸引了来自全球的能源企业、技术供应商及行业专家。 作为业内知名的 MQ AI 实时数据与智能产…...

kafka 常用知识点

文章目录 前言kafka 常用知识点1. kafka 概念2. 消息共享和广播3. 分区和副本数量奇偶数 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差&#xff0…...

Vue 核心技术与实战day07

1. vuex概述 2. 构建 vuex [多组件数据共享] 环境 <template><div id"app"><h1>根组件- {{ title }}- {{ count }}</h1><input :value"count" input"handleInput" type"text"><Son1></Son1>…...

关于5090安装tensorrt(python api)的过程

前提条件 硬件5090 ubuntu24.04 cuda版本12.8 找到适配的tensorrt版本 Nvidia官网 完事了之后找到对应版本tar安装包 tar -xvzf tensorrt-你的安装包.tar 然后记得将路径加入到环境变量中 #在这里插入代码片 gedit ~/.bashrc # 添加 export PATH/PATH/To/TensorRT-你的按安…...

[蓝桥杯]分考场

题目描述 nn 个人参加某项特殊考试。 为了公平&#xff0c;要求任何两个认识的人不能分在同一个考场。 求是少需要分几个考场才能满足条件。 输入描述 输入格式&#xff1a; 第一行&#xff0c;一个整数 nn (1≤n≤1001≤n≤100)&#xff0c;表示参加考试的人数。 第二行…...

CSS专题之层叠上下文

前言 石匠敲击石头的第 15 次 在平常开发的时候&#xff0c;有时候会遇到使用 z-index 调整元素层级没有效果的情况&#xff0c;究其原因还是因为对层叠上下文不太了解&#xff0c;看了网上很多前辈的文章&#xff0c;决定打算写一篇文章来梳理一下&#xff0c;如果哪里写的有问…...

Nginx基础篇(Nginx目录结构分析、Nginx的启用方式和停止方式、Nginx配置文件nginx.conf文件的结构、Nginx基础配置实战)

文章目录 1. Nginx目录结构分析1.1 conf目录1.2 html目录1.3 logs目录1.4 sbin目录 2. Nginx的启用方式和停止方式2.1 信号控制2.1.1 信号2.1.2 调用命令 2.2 命令行控制2.2.1 基础操作类2.2.2 配置测试类2.2.3 进程控制类2.2.4 路径与文件类2.2.5 高级配置类 3. Nginx配置文件…...

Kafka 的 ISR 机制深度解析:保障数据可靠性的核心防线

在 Kafka 的消息处理体系中&#xff0c;数据的可靠性和高可用性是至关重要的目标。而 ISR&#xff08;In-Sync Replicas&#xff0c;同步副本&#xff09;机制作为 Kafka 实现这一目标的关键技术&#xff0c;在消息复制、故障容错等方面发挥着核心作用。接下来&#xff0c;我们…...

移动安全Android——客户端静态安全

一、反编译保护 测试工具 Jadx GitHub - skylot/jadx: Dex to Java decompiler PKID [下载]PKID-APP查壳工具-Android安全-看雪-安全社区|安全招聘|kanxue.com 测试流程 &#xff08;1&#xff09;通过Jadx对客户端APK文件进行反编译&#xff0c;观察是否进行代码混淆 &…...

LeetCode 1524. 和为奇数的子数组数目

好的&#xff01;让我们详细解释 LeetCode 1524. 和为奇数的子数组数目 这道题的思路和解法。 题目&#xff1a; https://leetcode.cn/problems/number-of-sub-arrays-with-odd-sum/description/ 题目分析 问题描述&#xff1a; 给定一个整数数组 arr&#xff0c;返回其中和…...