黑客通过我的 FreePBX IVR 拨打国际电话

Hacker makes international calls through my FreePBX IVR

我是运行: FreePBX 12.0.76.2 星号 11.18.0 FreePBX 64 位发行版 6.12.65

我有很多 POTS 线路用于呼入和呼出,还有一条 Twilio SIP trunk 用于拨出国际电话。

我刚刚多次接到来自南加州的三个不同来电显示的电话,他们试图拨打我们公司的许多内部分机。接听电话的员工会听到 "underwater garble of digital tones" 然后挂断。然后,这些呼叫者发现了一些方法,可以通过我的 Twilio 和本地 POTS 线路拨打数百美元的国际电话。目的地是布基纳法索和菲律宾的手机号码(其中大约三个人反复拨打,有的打了15分钟,有的打了4分钟,大部分无人接听)。

我看到 AMI 中存在一个漏洞,但自补丁发布以来我已经对其进行了修补。

我将正在呼入的 phone 号码列入黑名单(使用黑名单模块),这停止了呼叫。但是我仍然不知道他们设法利用了什么漏洞。

在 CDR 中,我确实看到了他们在进行出站呼叫时似乎正在使用的上下文,"macro-dial-one" 然后是 "from-internal-xfer" 或 "from-trunk-sip-TwilioTrunkOutB"。

同样的事情也发生在我们的旧 FreePBX 上,它是 运行 PIAF v1.2.9,Asterisk 1.4.21.2,除了它们似乎利用了一个小区的 Misc Destination phone(因为删除)以某种方式允许他们从我们的系统拨打国际号码。所以它似乎与任何远程代码执行或特权升级无关。这是一些 IVR 漏洞。

知道这是怎么发生的吗?我已经 google 搜索了所有可能的组合,但没有看到任何提及此漏洞的信息。

已解决!!!

当我在 "FreePBX web gui / Settings / Asterisk Log File Settings" 下打开 DTMF 保存在 Asterisk 的 /var/log/asterisk/full.log 中时,我发现违规者随机拨打分机直到他们得到一个有效的分机,当一名员工接听时,他们拨打了 *2(In-Call Asterisk Attended Transfer),这是供我们的员工拨打的。在违规者拨打 *2 的那一刻,Asterisk 给予他们转移呼叫的控制权(此时他们可以拨出他们想要的任何号码),让我们的员工沉默然后挂断,违规者继续他的国际(免费)电话,并且通话结束后,他们再次按 *2 并拨打另一个国际电话。

哎呀。好痛

解决方案 1: 因此,在 "FreePBX web gui / Admin / Feature Codes" 中,您可以禁用 *2 和 ##(以及任何其他可能被机器人利用的无用功能代码).

解决方案 2: 在 "FreePBX web gui / Settings / Advanced Settings / Dialplan and Operational / Asterisk Dial Options & Asterisk Outbound Trunk Dial Options" 中,您可以删除两个上的 "Tt",并保留第一个 "r"(编辑默认值在每个主干上......除非你在任何主干上绕过它)。并确保按下每个旁边的绿色复选标记并点击大红色 "Apply Config"。我测试了重新启用 *2 和 ## 功能,这个更改也将它们关闭。

我选择应用这两种解决方案。

感谢大家的帮助,我希望这能帮助任何其他因长途电话欺诈、重拨、war 拨号或他们所谓的任何东西而被黑客入侵的人。并使用此漏洞的欺诈电话卡公司或黑客见鬼去吧!

注意:我实际上(使用 ChanSpy)监听了其中一个电话,发现自己正在用西班牙语与菲律宾的某个人进行双向交流。它一定是一个可疑的电话卡服务,依靠毫无戒心的 Asterisk 受害者。耻辱。我希望我在这个问题上的许多帖子都能在 Google 上正确编入索引,以便其他遇到此问题的人都知道如何填补这个漏洞。

编辑: 在使用 FreePBX 提交工单后,他们跳上了它,并将在几天内(截至 2016 年 4 月 13 日)进行修复,让您可以选择将 "T" 选项限制为内部员工呼出系统。无论如何,调用者将从 Dial() 参数中删除 "T"。显然他们不能只是从他们的发行版中删除默认的 "Tt" 参数,因为有许多用户需要该功能来满足他们的情况。从 Asterisk 的第一天起,这显然就是一个问题。