1

对于一个学校项目,我需要在 SIP 用户代理和 SIP 服务器之间进行窃听实验。实验必须包括以下步骤:

  i)Establish a voice/data communication between two SIP agent.

  ii) Capture the signal (i.e. SIP packets) in wireshark.

  iii) Change the content of the signal via wireshark or some 
  other tool that fits better to this purpose.

  iv) Encrypting/securing the communication between the agents somehow 
  to avoid third parties (e.g. wireshark to eavesdrop the communication) 
   from eavesdropping.

您能否告诉我是否有模拟上述场景的工具?实际上,我更喜欢以编程方式执行此操作,并且我知道有一个名为 resip (resiprocate.org) 的开源 SIP 堆栈,它提供了 C++ 中的示例用户代理和服务器。我可以以编程方式模拟这种情况,还是最好使用一些可以做到这一点的工具?

4

2 回答 2

0

您可以为您的项目目的检查/使用许多可能性。

i) 在两个 SIP 代理之间建立语音/数据通信

最好的方法是使用一些已经制定的解决方案(例如一些软 SIP 电话)。

iii)通过wireshark或其他更适合此目的的工具更改信号的内容。

我认为根本不可能使用wireshark来改变流量。这只是数据包嗅探器,因此您无需对其进行任何修改即可抓取数据包。您将需要一些能够读取和修改数据包负载的工具(查看一些开源 IPS 代码以获得一些提示)。

iv) 以某种方式加密/保护代理之间的通信
以避免第三方(例如,wireshark 窃听通信)窃听。

最简单的方法是在客户端和服务器之间建立一些隧道(例如 VPN)。这将加密和保护通信。

于 2012-11-05T14:30:27.997 回答
0

如果设置正确,sip 代理将能够捕获、操作/修改 sip 数据包以及实施 SSL 加密。通常,这些服务器位于 2 个 sip UA 之间。一些流行的 sip 代理是

于 2017-09-16T20:33:53.453 回答