Asterisk SIP服务器:从“信息”到“漏洞利用”
Carrie Roberts //
注意: 本博文中提到的技术和工具可能已过时,不适用于当前环境。但本文仍可作为学习机会,并可能用于更新或集成到现代工具和技术中。
我学到了一些新知识,这将使我在未来更加关注Nessus报告的“Asterisk检测”信息性发现……
在一次外部网络扫描中,Nessus报告了两台运行Asterisk SIP服务的主机,并将其列为信息性发现。
在浏览器中输入IP地址时,只返回了一个空白页面,但我对其运行了dirbuster,并在http://<ip地址>/mobile
找到了一个登录页面。
查看该页面的服务器响应显示,用户名和分机号在JavaScript中被泄露。
IPitomy用户手册指出,这些系统上存在一个登录页面,位于http://<ip地址>/ippbx
。该登录页面如下图所示。
手册指出,默认的管理员凭据是pbxadmin:ipitomy
,非管理员用户的用户名始终是其分机号,默认密码也等于分机号。例如,分机号123的用户名为123,默认密码为123。
在这种情况下,默认的管理员凭据无效,但一些默认的用户凭据有效。我使用Burp Suite的Intruder功能猜测了分机号100-999的相同用户名和密码。在Burp Intruder中,我使用了Battering ram攻击类型,在所有定义的位置放置相同的有效载荷,如下图所示。
在有效载荷选项卡中,我设置了“Numbers”类型的有效载荷,并将数字范围从100到999,以1为步长计数。
一些账户使用了默认密码。成功的登录凭据可以通过比较响应长度在Intruder结果窗口中识别。在这种情况下,响应长度为361 versus 231是指标。
比较响应长度通常是快速确定Intruder攻击成功的好方法,但当响应长度不够明显时,使用grep提取选项是救命稻草。您可以从Intruder选项菜单中定义要提取的响应部分,如下图所示。
我将grep提取表达式设置为显示“ocation:”之后和“Vary:”之前的任何文本,以提取重定向响应中的位置头。
这使得成功的响应非常突出,如下图所示。
通过成功登录,用户可以配置呼叫设置(如呼叫转移)、查看呼叫日志和收听语音邮件。
最后,我检查了账户锁定机制,通过在一分钟内猜测100个错误密码,紧接着使用正确密码成功登录。这意味着由于用户名已知且没有账户锁定机制,其他密码可能通过暴力破解被发现。
总而言之,Nessus报告的“Asterisk检测”信息性发现导致了在这种情况下三个漏洞的发现:
- 登录页面上泄露了员工的姓名和关联的电话分机号。
- 通过默认凭据获得非管理员用户账户的访问权限,从而访问呼叫设置和语音邮件。
- 没有账户锁定机制来防止对已知分机号的密码猜测。
您可以从Carrie的课程中学到更多!
查看这里:
攻击模拟工具:Atomic Red Team、CALDERA等
PowerShell for InfoSec
提供实时/虚拟和点播课程!