阿里通服务器 阿里文件服务器
阿里通电话服务器拒绝检测怎么办
阿里聚安全的Android应用漏洞扫描器有一个检测项是本地拒绝服务漏洞的检测,采用的是静态分析加动态模糊测试的方法来检测,检测结果准确全面。本文将讲一下应用漏洞扫描器在针对本地拒绝服务的检测方法。
一、本地拒绝服务产生原因和影响
Android应用使用Intent机制在组件之间传递数据,如果应用在使用getIntent(),getAction(),Intent.getXXXExtra()获取到空数据、异常或者畸形数据时没有进行异常捕获,应用就会发生Crash,应用不可使用(本地拒绝服务)。恶意应用可通过向受害者应用发送此类空数据、异常或者畸形数据从而使应用产生本地拒绝服务。
阿里聚安全的博客以前有一篇文章《Android应用本地拒绝服务漏洞浅析》,里面详细讲了产生本地拒绝服务的四种情况:
1、NullPointerException空数据异常:应用程序没有对getAction()等获取到的数据进行空指针判断,从而导致空指针异常而导致应用崩溃。
2、ClassCastException类型转换异常:程序没有对getSerializableExtra()等获取到的数据进行类型判断而进行强制类型转换,从而导致类型转换异常而导致应用崩溃。
3、IndexOutOfBoundsException数组越界异常:程序没有对getIntegerArrayListExtra()等获取到的数据数组元素大小的判断,从而导致数组访问越界而导致应用崩溃。
4、ClassNotFoundException异常:程序没有无法找到从getSerializableExtra()获取到的序列化类对象的类定义,因此发生类未定义的异常而导致应用崩溃。
当应用被恶意应用攻击时,本地拒绝服务一般会导致正在运行的应用崩溃,首先影响用户体验,其次影响到后台的Crash统计数据,另外比较严重的后果是应用如果是系统级的软件,可能导致手机重启。Nexus 5曾经出现过这样的情况,它预装了一个用来测试网络连通性的系统应用,这个应用是隐藏状态,无法在桌面上打开,包名为com.lge.SprintHiddenMenu。在Android 4.4.3之前的版本里,这个应用里有大量导出的activity,这些 activity不需要任何权限就可以被外部调用。其中一个为com.lge.SprintHiddenMenu.sprintspec.SCRTN的组件是导出的,并且没有任何权限限制,给它发送一个空Intent,可导致Nexus 5手机重启。
二、阿里聚安全扫描器的进化提升
一个简单的本地拒绝服务类漏洞,要想进行大规模的自动化扫描,扫描器也要做不少的工作,并且随着对本地拒绝服务漏洞的认识,阿里聚安全的漏洞扫描器也在不断进行优化提高。
2.1空Intent阶段
这个阶段的扫描器是初级阶段,一般只是通过AndroidManifest.xml文件获取应用导出的组件,然后使用adb命令发送空intent给导出组件,捕获应用日志输出,查看是否有崩溃产生。
针对空Intent导致的本地拒绝服务情况可发送如下命令测试:
adb shell am start-n com.jaq.dosappsample/.DosActivity
adb shell am startservice-n com.jaq.dosappsample/.DosService
adb shell am broadcast-n com.jaq.dosappsample/.DosReceiver
何为导出的组件?
在AndroidManifest.xml文件中如果应用的组件android:exported属性显式指定为“true”,或者并没有显式指定为“true”也没有显式指定为“false”,什么也没有写,但是有intent-filter并指定了相应的Action,则此组件为导出的组件。
2.2解析Key值阶段
空Intent导致的拒绝服务毕竟只是一部分,还有类型转换异常、数组越界异常等导致的本地拒绝服务。在解析Key值阶段扫描器需要分析组件代码中是否使用了一些关键函数。
在Activity组件中的onCreate()方法中,Service组件中的onBind()和onStartCommand()方法中,BroadcastReceiver组件的onReceive()方法中,如果组件没有做好权限控制,都可接受任意外部应用传过来的Intent,通过查找getIntent()、getAction()和getXXExtra()这些关键函数,检测其是否有try catch异常保护,如果没有则会有本地拒绝服务风险。
在这一阶段扫描器遇到的挑战是找到这些关键函数中的Key值,Action值,不仅要找到,还要找到key对应的类型,来组装adb命令,发送命令给安装好的应用进行测试。
2.3通用型拒绝服务阶段
2015年年初的时候,业界又爆出了通用型拒绝服务,由于应用中使用了getSerializableExtra()的API,应用开发者没有对传入的数据做异常判断,恶意应用可以通过传入序列化数据,导致应用本地拒绝服务。此种方法传入的key值不管是否与漏洞应用相同,都会抛出类未定义的异常,相比解析Key值阶段通用性大大得到了提高。
针对这个常用的手工检测POC代码如下:
此阶段扫描器遇到的难题是无法直接通过adb命令进行测试,因为无法用adb命令传递序列化对象给应用。业界大部分漏洞扫描器也因为无法发送序列化对象给应用都止步解析Key值组装adb命令阶段,而阿里聚安全的漏洞扫描器能够发送序列化对象数据给指定的应用,再结合静态分析查找导出的组件和关键函数,动态运行应用,精确识别出会发生本地拒绝服务的应用组件,同时实现了大规模自动化测试。
2.4动态注册BroadcastReceiver阶段
BroadcastReceiver组件一般分为两种,一种是静态注册,提前在AndroidManifest.xml声明组件;另外一种是动态注册,在代码中使用registerReceiver()方法注册BroadcastReceiver,只有当registerReceiver()的代码执行到了才进行注册。
动态注册BroadcastReceiver的常见使用方法如下:
很多开发者没有意识到,如上使用registerReceiver()方法注册的是全局BroadcastReceiver,和静态注册BroadcastReceiver android:exported属性为true性质一样,如果没有指定权限访问控制(permission参数),可以被任意外部应用访问,向其传递Intent,根据具体情况产生的危害可能不同,一种比较普遍的情况是容易产生本地拒绝服务漏洞。
动态注册BroadcastReceiver导致导出的Receiver这种情况非常少被大家注意,现有的一些安全检测工具、扫描器都不能发现动态注册的BroadcastReceiver。在此阶段,动态注册BroadcastReceiver隐藏在所有代码中,在应用的任何地方都可能出现,需要扫描器全局分析应用的代码找出关键函数registerReceiver,还要找出其IntentFilter所设置的Action和Receiver的权限设置,现在一般一个普通的正常Android应用都有几十M的大小,反编译成smali代码会更多,扫描器遇到的挑战主要是查找的时间和空间挑战,还有多个参数查找的准确性。目前业界只有阿里聚安全的扫描器有准确扫描动态注册BroadcastReceiver导致的本地拒绝服务的能力。
通过阿里聚安全的漏洞扫描器对一些样本进行了检测,也发现了不少动态注册BroadcastReceiver导致的本地拒绝服务攻击。
三、本地拒绝服务漏洞现状
为了了解本地拒绝服务漏洞的现状,阿里聚安全的应用漏洞扫描器针对国内外的各行业主要APP进行了扫描,共扫描了三百多款APP。
国内行业主要是通过采集国内某应用市场的APP,我们采集了各个行业的TOP APP总共有151个,发现拒绝服务漏洞的总个数为970个,平均个数为6.4个,其中影音播放类的APP本地拒绝服务个数最多,健康类安全类和运营商类比较少、游戏类的最少。
国内行业APP本地拒绝服务漏洞情况:
柱状图是国内各个行业APP按本地拒绝服务漏洞平均个数排序:
下图是各个组件引起的本地拒绝服务的数量、占比情况:
国内行业动态注册BroadcastReceiver导致的本地拒绝服务漏洞有247个,约占拒绝服务漏洞总数的25%,比静态注册BroadcastReceiver的要多不少:
国外行业主要是通过采集Google Play上的APP,我们也采集了各个行业的TOP APP总共有177个,发现拒绝服务漏洞的总个数是649个,平均漏洞个数为3.7个,平均漏洞个数最多的是办公类应用,最少的和国内行业一样是游戏。
国外行业APP本地拒绝服务漏洞情况:
国外各个行业的应用本地拒绝服务漏洞平均个数排序:
各个组件引起的本地拒绝服务的数量、占比情况:
国外行业动态注册BroadcastReceiver导致的本地拒绝服务漏洞有147个,约占拒绝服务漏洞总数的23%,比国内的情况略少,可见动态注册BroadcastReceiver导致的本地拒绝服务都没有引起大家的重视。
总体上来看,本地拒绝服务风险因为具有Android版本无关性,漏洞本身对APP影响也不大,只与应用开发者是否注意、重视有关,所以现在还经常在应用中出现。在各大厂商的安全应急响应中心评级为低危漏洞,也有厂商不收此类漏洞,但是这些攻击面依然存在,如果深入分析这些组件,有的不仅仅是引发本地拒绝服务风险,必须遵循最小权限原则,没有必要导出的组件不要导出。
四、阿里聚安全对开发者建议
(1)阿里聚安全的漏洞扫描器已经具备覆盖动态注册Receiver产生的拒绝服务漏洞(目前,还没发现友商的漏洞扫描器有这样的能力),使用阿里聚安全的漏洞扫描器进行扫描,可及时发现这些漏洞。
(2)不必要导出的组件将其exported属性显式的设为“false”,这样可以减少应用的攻击面。
(3)导出的组件在getIntent()后,Intent.getXXXExtra()时用try…catch做好异常处理。
(4)在导出的组件设置好权限控制,不让任意第三方应用访问。
(5)对于动态注册的BroadcastReceiver,尽量少用registerReceiver()方法,如果只在本应用内通信,改用LocalBroadcastManager的registerReceiver()进行本地注册,如果必须导出给外部应用,在使用registerReceiver()时要指定好相应的访问权限。
阿里通功能与使用方法介绍
一、阿里通操作简易,功能强大。
界面人性化设计,拨打习惯与普通电话一致,一分钟让您轻松上手。其强大的功能展示,又让你觉得它简易却不简单。集网络电话、收发短信、在线回拨、通讯录、录音、彩话、常用小工具箱于一身,切身方便每一位客户需求。功能详解如下:
1、软件拨打电话功能
阿里通网络电话可以拨打全球所有国家与地区电话,拨打各国国家与地区的拨号规则为: 00国家代码区号(不带0)电话号码的格式。
拨号方式介绍:
①国内固话:区号+电话号码 0755 28785678
②国内手机:0+电话号码0 13800138000
③国际长途座机:00国家区号电话号码 00 86-755 28785678
④国际长途手机: 00国家手机号码 00 86 13800138000
2、软件收发短信功能
资费标准:支持发送到中国移动手机、中国联通手机,0.1元/条,不支持小灵通和国际手机;
关于接收:您可告知被叫手机收到短信后直接回复,您就可以马上收到,发送方扣费0.1元/条;
关于群发:普通用户单次最多支持群发10条短信,VIP用户单次最多支持群发5000条短信;
3、软件在线回拨功能
资费说明:回拨相当与阿里通同时呼叫软件上面填入的两个号码,话费为分别呼叫上述两个号码后从接通到最后挂机的计费总和。
号码输入规则—
固话/小灵通:0+区号+电话号码示例:010xxxxxxxx
移动电话:移动电话号码示例:13xxxxxxxxx
国际长途:00+国际代码+电话号码示例:001xxxxxxxxxx
4、网络通信录功能
点击主窗口中的“通讯录”,即可分组添加联系人并编辑其信息,也可直接导入联系人,十分便捷。选择列表中的联系人即可给该联系人发送短信,拨打电话了。
5、彩话、录音功能
通话过程中,您可以点击主窗口中的“彩话”按钮,然后在列表中选择一个合适的背景音,在提示栏中确认您的选择后,点击“播放彩话”按钮即可使用。同时,通话过程中,也可以点击“录音”按钮进行通话录音。
6、小工具箱功能
实用快捷的小工具箱,可以随时查询IP地址、手机归属地、身份证、城市区号邮编、区号查询城市、英汉词典翻译、Google搜索、百度搜索。
7、登陆软件时,系统会自动选择服务器和线路,用户也可手工切换,比较人性化。
8、全面支持呼入、呼出、来显功能
阿里通最新推出号码卡,让您从此拥有固话号码,不再烦恼呼入、呼出无号码问题。不过需要单独购买号码卡才行,话费要0.12元。
与众多网络电话软件都转身往娱乐化,即时通讯方向转变不同,阿里通是专注于提供高质量,低价格的网络通讯方案,不断提升通话质量和降低费用为主要目标,正在吸引越来越多的用户。阿里通偏执,专注通讯领域发展,或许又再次验证了英特尔公司创始人安迪•格鲁夫的名言:只有偏执狂才能生存。
阿里通是什么电话卡
阿里通是网络电话的电话卡。
阿里通(英文名:alicall)是香港电讯运营商阿里通科技有限公司(香港电讯管理局PNETS牌照第1368号)面向全球推出的一款网络电话产品。
阿里通采用最先进的语音平台,以P2P为主要技术,一直专注于提供优质廉价的专业语音通信服务。
阿里通网络电话已经发展了很多版本,包括有web版即网页版本,软件版本,回拨版本等等。而且每个版本都支持在线发短信。
扩展资料:
阿里通的优点:
1、通达全球
可拨打全球300余国家/地区的固定与移动电话,资费低廉。
2、清晰安全
采用世界上最先进的语音平台,语音加密,独创语音引擎,优化解决其他软件常出现的断续、杂音、回声等问题,音质媲美传统电话。并独家具备手动切换服务器和落地线路的功能。
3、计费精准
市面其他软件可能公开资费比较低,但很多都是打1分钟扣2分钟的钱,或者1分钟只有50几秒,阿里通在计费方面非常精准,足分足秒。
4、稳定性强
稳定才是硬道理,阿里通是业内故障率最低,稳定性最好的软件。
5、功能丰富
与其他软件相比,阿里通全面支持直拨、回拨、短信、通讯录、手机版、WEB电话、FLASH电话等,多功能的产品与时尚接轨,全面满足用户需求。
参考资料:百度百科-阿里通