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

Analysing the DSC in a project doesn't work #6050

Open
WeiN76LQh opened this issue Oct 28, 2024 · 0 comments
Open

Analysing the DSC in a project doesn't work #6050

WeiN76LQh opened this issue Oct 28, 2024 · 0 comments
Assignees
Labels
File Format: SharedCache Issue with the dyld_shared_cache plugin Impact: High Issue adds or blocks important functionality State: Awaiting Triage Issue is waiting for more in-depth triage from a developer
Milestone

Comments

@WeiN76LQh
Copy link

Version and Platform (required):

  • Binary Ninja Version: 4.2.6304-dev (65f49c87)
  • OS: macOS
  • OS Version: 15.0
  • CPU Architecture: M1

Bug Description:
Analyzing the DSC in a project causes the following error:

[Default] Serious VM Error: Couldn't read file at <redacted>/dyld_shared_cache_arm64e.bnpr/data/94/650f86-f414-4a81-9829-cc0bea30ba3d.01
[Default] Error: 2 (No such file or directory)
[SharedCache] Failed to perform initial load of Shared Cache

It is trying to load dyld_shared_cache_arm64e.01, one of the many files that make up the DSC, but it can't find it within the project directory. The file path is almost correct except the file is stored without the .01 file extension. The path in the error log should have been <redacted>/dyld_shared_cache_arm64e.bnpr/data/94/650f86-f414-4a81-9829-cc0bea30ba3d to have been valid. This results in the DSC being unanalyzable within a project and the DSCViewAlpha does not display any information or allow the loading of images within the DSC.

Steps To Reproduce:

  1. Use ipsw to extract the DSC from an iOS 18.0 IPSW file.
  2. Create a new project in Binary Ninja
  3. Import all the extract DSC files into the project
  4. Analyze the main DSC file (the one that doesn't have a file extension)

Expected Behavior:
Binary Ninja should be able to identify the correct file paths for all the different files that make up the DSC when analyzing the DSC in a project.

Additional Information:
The current work around for this issue is to analyze the DSC without a project and save the analysis as a new BNDB. Then import the BNDB into a project. The BNDB file will load and work fine within a project, including the ability to load additional images in the DSC.

@xusheng6 xusheng6 added the State: Awaiting Triage Issue is waiting for more in-depth triage from a developer label Oct 29, 2024
@plafosse plafosse added this to the Frogstar milestone Oct 29, 2024
@plafosse plafosse added Impact: High Issue adds or blocks important functionality File Format: SharedCache Issue with the dyld_shared_cache plugin labels Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
File Format: SharedCache Issue with the dyld_shared_cache plugin Impact: High Issue adds or blocks important functionality State: Awaiting Triage Issue is waiting for more in-depth triage from a developer
Projects
None yet
Development

No branches or pull requests

5 participants