Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blocks Low Power Mode Updates/State changes on iOS 16 #106

Closed
flodaniel opened this issue Dec 4, 2023 · 1 comment
Closed

Blocks Low Power Mode Updates/State changes on iOS 16 #106

flodaniel opened this issue Dec 4, 2023 · 1 comment

Comments

@flodaniel
Copy link

We use IOSSecuritySuite in our flutter app through a wrapper plugin (https://github.com/jeroentrappers/flutter_jailbreak_detection).
on iOS 16.* any changes to the lower power mode are no longer picked up at runtime and only a force close and restart gets the correct state. When we downgrade our flutter_jailbreak_detection to a version before it uses IOSSecuritySuite, the issue is no longer reproducable.

This is how we read the low power mode:
result(@([[NSProcessInfo processInfo] isLowPowerModeEnabled]));

We had other third party vendors that suffered from the same bug and they came back to us with this info on how they identified and fixed the bug:

we added some logic that creates an instance of ProcessInfo as opposed to using ProcessInfo.processInfo. We believe this causes iOS to assign an invalid ProcessInfo to an internal singleton, which processInfo always returns. So when any other code in the app requests the process info via processInfo, it receives this invalid instance, which has its values “frozen”. As we understand it, if we don’t create this independent ProcessInfo instance, then calling ProcessInfo.processInfo internally creates a “correct” singleton instance that’s properly hooked up to system changes (i.e. not frozen). It’s a strange behaviour, and could be some kind of overlooked/buggy implementation in iOS.

On iOS 17.* this is resolved, but as some iPhones stop getting updates with iOS 16.*, it would be great to resolve this.

@flodaniel flodaniel changed the title Blocks Low Power Mode Updates/State changes Blocks Low Power Mode Updates/State changes on iOS 16 Dec 4, 2023
@r3ggi
Copy link
Collaborator

r3ggi commented Jan 31, 2024

Thx for the info, it should be fixed in https://github.com/securing/IOSSecuritySuite/releases/tag/1.9.11

@r3ggi r3ggi closed this as completed Jan 31, 2024
r3ggi added a commit that referenced this issue Mar 26, 2024
philbluefox added a commit to philbluefox/IOSSecuritySuite that referenced this issue Aug 7, 2024
* new checks added + dropping support for iOS 10

* Update README.md

* minimum deploy target changed to iOS 11

* Shadow detector now detected :-)

* Update IOSSecuritySuite.podspec

* Add support for checking the Parent process id

* Resolve various swiftlint warnings

* Add checking for known OpenSSH and checkra1n open ports

* Add addional checking for [FridaGadget, frida, libcycript] libraries

* check for existence of Suspicious Files with [stat(), fopen(), access()]. Check for non read-only path with [statvfs(), statfs(), getfsstat()]

* Fix Swiftlint build error due to the identifier_name rule

* #6040 #6041 - Fix xcode 14.x is not compatible with 13.4.1 build, due to FailedChecks not conforming to CaseIterable

* Revert "#6040 #6041 - Fix xcode 14.x is not compatible with 13.4.1 build, due to FailedChecks not conforming to CaseIterable"

This reverts commit 319e9a0.

* Update README.md

* UIApplication.shared.canOpenURL() background thread change

* Update IOSSecuritySuite.podspec

* let's play a game with the Shadow's dev <haha>

* 1.9.9

* iASE promotion

* Update README.md

* Improve checkDYLD performance

By optimizing the case insensitive comparison.

* Use set for storing suspicious libraries

* Update README.md (removed Swiftshield)

* Update README.md

* Update IOSSecuritySuite.podspec

* Update README.md

* Update README.md

* Improve code style

* Fix many swiftlint issues

* bug fixes after last PR

* Swiftlint + Xcode 15 compatibility support

* Update RuntimeHookChecker.swift

* Update FrameworkClientApp.xcscheme

* Update IOSSecuritySuite.xcscheme

* fix for securing/issues/107

* 1.9.11

* nslog -> print

* fix for securing/issues/106

* add ios privacy manifest

* Removed obsolete `LSApplicationQueriesSchemes` from README.md.

* lockdown mode detector

* Update README.md

* new EULA license

* Update README.md

* Update README.md

* Update IOSSecuritySuite.podspec

* Update README.md

* typo fix

* Update IOSSecuritySuite.podspec

* search symbols from `__DATA_CONST` segment

* check protection before writing

* Fix missing PrivacyInfo.xcprivacy in xcodeproj

* Fix missing PrivacyInfo.xcprivacy : Update swift-tools to 5.3 to allow resources defintion in targets

Fix missing PrivacyInfo.xcprivacy when building framework using Xcode Package Dependencies.

* Fix missing PrivacyInfo.xcprivacy : Move top root Resources folder inside target folder

Fix missing PrivacyInfo.xcprivacy when building framework using Xcode Package Dependencies.
- Resources folder must be part of a target folder hierarchy

* Fix missing PrivacyInfo.xcprivacy : Add resources to target definition

Fix missing PrivacyInfo.xcprivacy when building framework using Xcode Package Dependencies.

* Update IOSSecuritySuite.podspec

* fix podspec

* Dopamine hide-jailbreak detector

* VPN detection added

* 2.1.0 docs update

---------

Co-authored-by: Wojciech Reguła <wojciechregula@yahoo.pl>
Co-authored-by: Mario Sepulveda <msepulveda@mobolize.com>
Co-authored-by: Matěj Kašpar Jirásek <matej.jirasek@me.com>
Co-authored-by: Izabella Melo <izabella.melo@tempest.com.br>
Co-authored-by: longxiang.guo <longxiang.guo@partner.bmw.com>
Co-authored-by: Lippmann, Erik <Erik.Lippmann@sys.aok.de>
Co-authored-by: p-x9 <50244599+p-x9@users.noreply.github.com>
Co-authored-by: Blazej SLEBODA <5544365+Adobels@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants