ATS随着2015年9月发布的iOS 9发布而推出,其工作原理是阻止应用程序与其远程服务器之间的所有HTTP连接。
在WWDC 2016大会上,Apple宣布计划从2017年1月开始对所有iOS应用程序强制执行ATS,但该公司在2016年12月放弃了其计划,即执法生效前几周。
ATS仍默认为所有iOS应用程序启用,开发人员必须在编写应用程序时禁用它,以防他们需要与HTTP域或可能默认返回HTTP的容易出错的HTTPS网站进行通信 - 并触发ATS禁令。
Wandera在其报告中表示,在其扫描的30,000个应用中,只有27%正在使用ATS来强制执行加密通信并阻止明文HTTP连接。
大约5.3%使用ATS,但是对于某些域,它们对它进行了细致的禁用。
根据Wandera的说法,三年后ATS安全功能几乎没有被采用的原因似乎是广告框架/网络经常在他们的文档中建议iOS开发人员禁用应用内的ATS,以防止iOS阻止与广告服务器的通信一个错误。
“广告网络运营商处于竞争空间,并希望简化开发人员使他们的应用兼容的流程,”Wandera说。“通过删除加密要求等”障碍“,可以让更多开发人员更轻松地将广告网络整合到他们的应用中。”
这似乎是ATS经常被禁用的主要原因。例如,Wandera表示,ATS在付费应用中更广泛使用,不依赖于广告收入,而应用开发者没有理由禁用ATS来保护他们的利润。
一些付费应用程序仍然禁用ATS,但这似乎与内容管理有关,一些应用程序制造商希望确保HTTP上的远程托管内容或容易出错的HTTPS加载而不会出现故障。
此外,这些百分比应该用一粒盐,因为ATS被禁用并不一定意味着那些iOS应用程序没有使用HTTPS。
“这只意味着系统安全措施被禁用,因此[HTTPS]错误的空间更大,”Wandera团队表示。