![](/img/trans.png)
[英]Have an iOS signed app execute an unsigned app on a jailbroken device
[英]Detect Jailbroken iOS Device by Running Unsigned Executable
最后我检查过,沙盒应用程序甚至无法fork()
。 我不确定他们是否可以调用execve()
。 如果他们也做不到,那么只需调用execve()
就可以了。
我不确定越狱干扰了多少。 可以进行越狱,允许您从未签名的应用程序运行未签名的应用程序,但如果调用者已签名则行为正常。
很可能在库中“打包”可执行文件:只需要static unsigned char const data [] = { ... };
,将其写入文件chmod()
,并尝试执行它。
但是,在一天结束时,这可能会对您的用户造成伤害。 越狱手机并不意味着您的应用程序已被盗版。 除非你认识一个有越狱手机的人愿意做一些测试(以及不同的越狱测试),否则你可能会为自己做好准备“它只会崩溃!” 评论。
(如果它确实崩溃了,那么有人会来破解你的应用程序。在决定是否需要修复之前,最好谨慎并监控“问题”。)
越狱发生的次数比你想象的要多。 我已经将MobileSubstrate的检查添加到我们的自动崩溃报告符号脚本中,因为我们已经在很大比例的崩溃中看到过它。 OTOH,将应用程序安装到/ Applications中的崩溃比例(曾经是破解应用程序的传统应用程序;可能不再存在)可以忽略不计。
我试图通过从项目中添加可执行文件来在IOS应用程序中打包可执行文件,该项目的main()函数只是向我的项目返回一个整数。 部署时将此文件复制到手机上,但在没有执行权限的情况下复制。 尽管文件所有者与当前用户(移动设备)相同,但尝试chmod文件以使其执行会导致“不允许操作”错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.