【问题标题】:Insecure APIs (_memcpy) can still be found in the iOS Application仍然可以在 iOS 应用程序中找到不安全的 API (_memcpy)
【发布时间】:2021-06-03 21:34:14
【问题描述】:

我们开发了一个IOS应用程序,发现应用程序二进制文件内部某处使用了_malloc()函数。

otool MyAppName -Iv | grep _malloc
0x00000001008dd812 155991 _malloc
0x000000010092d9b0 155991 _malloc

otool MyAppName -Iv | grep_memcpy   
0x00000001008dd818 155992 _memcpy   
0x000000010092d9b8 155992 _memcpy

我们没有在代码中使用 malloc() 函数。 不知道为什么这个符号出现在我们的二进制文件中。 如何检查该函数的使用情况,或者我们如何从二进制文件中删除这个 memcpy?

【问题讨论】:

  • 嗨..这已经修复了吗?我也有同样的问题。

标签: swift memcpy otool


【解决方案1】:

你什么都没有恐慌。当用于将数据从一个位置复制到另一个位置时,Memcpy 非常安全。它完全按照锡上所说的那样做。如果开发人员太愚蠢而无法正确使用它,那就太难了。

如果您查看任何“更安全”的替代方案,他们将检查参数并拒绝操作或调用 memcpy。所以你在某个地方有 memcpy。

与 malloc 相同。当你在 C++、Objective-C 或 Swift 中分配一个新对象,或者为 std::vec 或 NSArray 分配一个新对象时,你认为会调用什么?

【讨论】:

    猜你喜欢
    • 2014-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    • 2012-11-15
    相关资源
    最近更新 更多