Skip to content
This repository was archived by the owner on Jan 22, 2024. It is now read-only.

Ww #2

@naif51191

Description

@naif51191

Project Sandcastle - Android build
Projectsandcastle.org

Android instructions :
Caution - This will create a new volume on APFS. This should not hurt your ability to boot iOS. But if you are not willing to restore your device. Do not try this as it's still beta.

MAC:
You must have checkra1n installed in Applications to run this. Use checkra1n to boot your device into iOS. Run ./setup.sh - This is a one time setup and doesn’t need to be repeated for the same device. Once setup is complete you can put your device into DFU mode and run ./start.sh to boot Android.

Linux:
Checkra1n boot your device and login to it via SSH. Scp isetup file to /tmp on your iPhone and run chmod 755 /tmp/setup.sh && /tmp/setup.sh
Once setup is complete grab the latest loadlinux.c source code from our github https://github.com/corellium/projectsandcastle/ and compile it and run ./loadlinux Android.lzma dtbpack

Removing it:
If you wish to remove the Android NAND image and reclaim the space you can login via SSH to your checkra1ned device and mount the final volume and remove the nand file. To do this run ls /dev/disk0s1s* and find the last volume. You can verify its the right volume by running /System/Library/Filesystems/apfs.fs/apfs.util -p VOLUME_HERE and if it says Android, that's the correct one. Once you have the volume path you can then run
mkdir -p /tmp/mnt
mount -t apfs VOLUME_HERE /tmp/mnt
rm -rf /tmp/mnt/nand
umount /tmp/mnt
sync

And that will reclaim the space for you.

#!/bin/bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
cd "$DIR"
export DYLD_LIBRARY_PATH=./
killall -9 iproxy > /dev/null 2>&1
./iproxy 2222 44 > /dev/null 2>&1 &
disown

echo "Starting setup"
expect -c 'spawn scp -P2222 -o StrictHostKeyChecking=no isetup root@localhost:/tmp/setup.sh; expect "password:" { send "alpine\r" } "lost connection" { exit 1 };interact' >/dev/null 2>&1
if [ $? -ne 0 ]; then
echo "Failed to copy setup script";
killall -9 iproxy
exit 1;
fi

expect -c 'spawn ssh -oStrictHostKeyChecking=no -p2222 root@localhost "chmod 755 /tmp/setup.sh && /tmp/setup.sh"; expect "password:" { send "alpine\r" } "ssh: connect" { exit 1 }; interact; catch wait result; exit [lindex $result 3]'
if [ $? -ne 0 ]; then
echo "Setup failed";
killall -9 iproxy;
exit 1;
fi
echo "Setup was successful";
killall -9 iproxy > /dev/null 2>&1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions