iOS应用程序构建中的安全问题:二进制文件可能包含以下被禁止的API\u memcpy、\u alloca、\u get

iOS应用程序构建中的安全问题:二进制文件可能包含以下被禁止的API\u memcpy、\u alloca、\u get,ios,swift,security,cocoapods,Ios,Swift,Security,Cocoapods,我的iOS应用程序是用swift开发的。它包含一些可可豆和其他受信任的第三方框架。构建是稳定的,并且处于运行模式。现在,当安全官员对该应用程序进行了安全评估后,他们提出了上述问题。该应用程序以可安装的形式共享,不知何故,他们使用了一些工具来分析该应用程序(虽然ipa未直接共享,但该工具在应用程序ipa中引发了此问题,此处不知道该工具) 现在,当我在整个项目中搜索上述API作为关键字时,我没有找到它的用法。在这方面,有人能提供帮助吗?如何跟踪我们的代码/其他库是否使用这些API,如果使用,如何纠正

我的iOS应用程序是用swift开发的。它包含一些可可豆和其他受信任的第三方框架。构建是稳定的,并且处于运行模式。现在,当安全官员对该应用程序进行了安全评估后,他们提出了上述问题。该应用程序以可安装的形式共享,不知何故,他们使用了一些工具来分析该应用程序(虽然ipa未直接共享,但该工具在应用程序ipa中引发了此问题,此处不知道该工具)


现在,当我在整个项目中搜索上述API作为关键字时,我没有找到它的用法。在这方面,有人能提供帮助吗?如何跟踪我们的代码/其他库是否使用这些API,如果使用,如何纠正其使用?

项目中使用的某些或某个第三方库很可能正在使用这些API。请务必确保应用程序使用的是最新版本的lib/s,可能值得与lib开发人员联系,以便查看他们是否在任何版本中解决了此类问题。为了获得更好的视角,请阅读苹果公司关于
memcpy
为什么被禁止的安全编码指南?它是标准C库的基本C函数,对于许多操作都是必不可少的。你将很难找到不使用它的第三方应用程序。甚至C/C++/Objective-C编译器也会生成对
memcpy
@Codo的调用。您看到下划线了吗?您确定这是相关的吗?在链接器级别,
memcpy
经常变成
\u memcpy
。我认为这也适用于iOS。或者,这是检查的要点:使用
memcpy
而不是
\u memcpy
?如果安全评估是用完成的,则错误消息可能是假阳性(请参阅)。而且很可能您的安全官员无法解释为什么
memcpy
是一个问题,因为没有记录对该工具的检查。