Tag: Infosec

适用于iOS的“ Meitu”应用程序中有关Analytics Collection的技术信息

今天有一些骚动涉及到名为Meitu的移动应用程序。 这篇文章仅关注iOS版本(如果有兴趣,其他人已经初步了解了Android版本)。 评估内容(v6.1.1) “ 美图秀秀 ”(com.meitu.mtxx) “ MTXXFilterExtension”( com.meitu.mtxx.MTXXFilterExtension ) “ MTMosaicMessage ”(com.meitu.mtxx.MTMosaicMessage) 收集的分析信息 设备IMEI,IMSI和MAC地址似乎没有发送到Meitu的第一方或任何打包的第三方分析服务器。 无法在更新为最新固件版本的iOS设备上获取与无线电有关的敏感信息。 在初步测试过程中,Meitu应用程序确实向服务器发送了伪造的MAC地址“ 02:00:00:00:00:00”。 乔纳森·兹齐亚斯基(Jonathan Zdziarski)提到了Meitu应用程序对MAC地址的使用,因为二进制代码仍包含用于获取设备MAC地址的功能。 但是,如上所述,App Store沙箱中的iOS应用程序无法访问设备的真实MAC地址(与IMEI和IMSI一样)。 对于iOS 8或更高版本的设备,此功能没有风险。 以下信息似乎确实已发送到Meitu分析服务器(adui.tg.meitu.com):iOS版本(例如“ 10.2”),设备型号(例如“ iPhone7,2”),网络类型(例如“ WiFi”),设备语言,设备区域设置,移动国家/地区代码以及随机生成的唯一标识符。 正如乔纳森·兹齐亚斯基(Jonathan Zdziarski)指出的,由于使用了第三方分析库,Meitu应用程序确实获得了蜂窝提供商的名称。 蜂窝提供商名称将发送到第三方分析提供商Umeng / Youmi(alogs.umeng.com)的服务器。 “ channel_id”也发送到adui.tg.meitu.com服务器。 由于大量使用“辅助”或“辅助”工具在该地区旁加载应用程序,因此这在中国应用程序中很常见。 直接从App Store下载应用程序后,将在此参数下发送值“ App Store”。 Meitu应用程序收集GPS位置( 如果已授权 ),并将其发送到分析服务器。 我无法高度确定发送GPS位置的分析服务器,但我有一定的信心,认为该分析服务器是第三方分析服务器,并未由Meitu本身直接调用(旁注:Meitu确实请求访问权限位置带有模糊信息“开启后美图秀秀才可访问你的地理位置哦”,但直接归因于美图本身的唯一用例是为用户检查当地天气。 专用API的使用 正如Jonathan Zdziarski所指出的那样,该应用程序包含从私有框架加载两个功能的代码。 但是, 此代码不能按原样工作 。 这是因为该应用程序从路径“ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/PrivateFrameworks/GraphicsServices.framework/ GraphicsServices”(此路径在iOS设备上不存在)。 Meitu应用程序中确实存在一些代码,可以允许在运行时动态加载私有框架。 但是,没有迹象表明已使用它。 […]

Apple iOS 12:有史以来最安全的iOS吗?

如果您碰巧看到了Apple在2018年6月4日发布的iOS 12初始版本,您可能已经注意到它缺少我们从其他iOS版本中看到的“大飞溅”。 部分原因是苹果公司忙于专注于新的iOS 12数据安全功能。 尽管将在2018年9月12日的Apple Keynote活动上发布更多功能,但已揭示的iOS 12的许多功能可能不会引起普通消费者的注意。 那是故意的。 良好的数据安全性功能对于大多数用户而言并不明显。 如果有的话,苹果最新的移动操作系统中的这些功能将使普通iPhone用户的生活更加轻松。 但是,如果您恰好是IT或安全专家,那么新的iOS 12可能会激起您的兴趣。 苹果公司对个人数据隐私和安全的强调引发了一个问题:iOS 12是苹果发布过的最安全的操作系统吗? 一言以蔽之。 让我们研究一下它为何如此安全。 更好的防黑客技术以保护数据隐私 苹果对新iOS安全所做的最大改变之一是USB受限模式的引入。 在iOS 11和更低版本的iOS上,基于USB的通信在手机锁定后最多可保持七天。 这意味着,如果iPhone被盗,则可能的黑客有7天的时间将强力设备(例如GrayKey)插入手机并强制其解锁。 纽约时报称此为期7天的窗口是iOS 11中的一个重大安全漏洞。 好消息是苹果正在关闭此窗口。 借助iOS 12上的USB受限模式,Apple将基于USB的通信时间缩短到手机锁定后仅一小时。 这使得在iOS 12上进行暴力攻击几乎是不可能的。 根据一位与我们交谈的应用程序开发人员的说法,“ USB受限模式本质上是在一小时后将手机变成电池供电的砖块。”除非该手机在该小时时间内被授权用户解锁,否则对黑客来说毫无用处。 为了进一步说明这一点,如果您公司的员工在iPhone上安装了iOS 11的iPhone被盗,那么窃贼很有可能在7天内获得对手机的访问权限。 但是,如果安装了iOS 12,则小偷将只有一个小时的时间来尝试暴力攻击。 在一个小时内实现这一目标的可能性很小。 新的操作系统会自动打开此数据隐私功能,但Apple确实提供了禁用它的选项: 图片来源 我们为提高个人数据安全性的实力和灵活性而感到兴奋。 密码重用审核 与任何数据安全系统一样,人是最薄弱的环节。 如果您开发了世界上最好的工具,但实际的操作人员没有使用它,那么它就一文不值。 这就是Apple试图在iOS 12中使密码管理尽可能简单的原因。使密码重用审核变得更加容易的功能之一。 此功能监视iPhone所有者用于不同服务的密码。 当它在不同的网站上捕获到使用相同密码的某人时,它会标记重复的密码,提供更安全的密码,然后将其保存到iCloud钥匙串。 图片来源 在不同网站上使用一个密码的问题已得到充分记录。 安全专家多年来一直在努力解决这些问题,Apple竭尽所能提供帮助。 Auth0使用基于令牌的无密码身份验证提供安全身份验证,该功能具有蛮力保护系统。 iCloud:房间里的大象 乍一看,此iOS 12安全功能似乎不太安全。 为了使用此功能,Apple必须记录您的当前密码并能够对其进行爬网以进行匹配。 同时,Apple将所有内容存储在iCloud中。 这种担忧导致苹果公司使该系统尽可能地安全。 […]

移动应用程序的密钥管理方法

你们中的一些人知道,而有些人却不知道,但是我们所有人都无法构建安全的移动应用程序。 今天我们将讨论密钥管理。 我们一步一步地开始我们的旅程:发现基础结构布局,挖掘威胁,信任和密钥的想法。 讨论密钥管理系统:什么是密钥生成,如何访问和撤销密钥以及许多其他令人兴奋的理论知识! 但是,当然,我们会将这些知识应用于移动应用程序。 看视频 通常,我们在服务器,移动设备,通过公共渠道传输的数据等方面建立信任。 我的意思是真实的东西。 像电缆之类的东西。 是的,我们的基础架构充满了密钥和数据,所有这些都通过电缆实现。 这些电缆很重要-它们不受您的控制,无论您到达办公室外的任何地方-您都依赖这些生物。 为什么我们需要信任? –为了保护这些电缆中的数据,邪恶的CIA和坏蛋饼干正在那里寻找您的秘密。 通过使用特殊的超级数学技术,我们为与受信任的密钥或机密绑定的受保护数据提供了机密性,真实性和完整性保证。 如果您正确地管理密钥,这是可证明的且不可破解的。 由于“密钥是我们信任的东西”,并且它们控制着系统中的信任,因此管理密钥就是管理信任。 因此,让我们谈谈密钥管理。 按键 –什么是钥匙? –这是一个字节数组。 根据正在进行的过程,我们需要具有不同属性的不同字节数组: 1.我们对对称密码使用秘密密钥。 2.非对称密码的公钥/私钥对 3.密码是您可以记住的字符串。 顺便说一句,这是一个糟糕的钥匙。 我们应该使用KDF代替用户密码本身。 4.一次性PIN很小,并且易于转移具有风险属性的密钥。 这是一个额外的信任令牌,就像您在登录银行系统时通过短信从银行获得的东西。 –我们在闪亮的iOS世界中知道哪些键? 应用令牌,服务器令牌,用户密码,证书,以及类似的东西,不是吗? 它们都是钥匙。 –我们需要它们做什么? 按键保护数据! 它们使您可以访问数据,验证数据的真实性和完整性。 当然,大多数情况下,我们会处理用户将其放入应用程序中的用户生成的数据。 但是,我们还关心访问外部资源(例如第三方服务或Web服务器)以及我们应用中其他用户的可识别数据(例如,来自喜欢您的推文的用户的信息,如果有的话)。 –我们如何保护数据? 哦,您知道,我们能够也无法应对所有这些威胁。 就像数据篡改和泄漏一样,中间人,主动和被动,当然还有橡胶软管密码分析之类的常见问题。 密钥是存储在某处的字节数组,它们解锁受保护的数据并促进信任。 当然,攻击者想要它们。 基本上,密钥是一小部分数据,它们也容易受到威胁。 密钥是一小部分数据,也应该受到保护! 按键会发生什么? 1.攻击者可以窃取密钥,这很糟糕(原因显而易见,不是吗?)。 2.更糟糕的是,被盗的密钥可以重播 -可以用来访问受保护的内容。 3.而且,如果攻击者足够幸运,而您却不是,那么甚至可以替换密钥:攻击者可以抛出自己的邪恶密钥来访问资源。 因此,我们需要构建一个保护和管理密钥的系统。 关键管理系统:目标和行动 在密钥管理中,有一个实际目标:保留信任和安全性,但系统仍然可用。 如果不这样做,您将得到另一个没人愿意使用的超安全超偏执端到端系统system 任何密钥管理系统都包含多个过程,这些过程按顺序链接:从生成到交换,从交换到存储和访问,通过吊销来控制受害和过时的密钥,以及旋转以确保密钥的寿命。 有时,该系统也应包含服务流程:例如备份和对加密数据的管理员访问。 产生与交流 […]