import sys
import os
import time
import subprocess
import paramiko
from PyQt6.QtWidgets import QApplication, QWidget, QLabel, QPushButton, QVBoxLayout
# SSH Config
DEVICE_IP = "localhost"
DEVICE_PORT = 2222
USERNAME = "root"
PASSWORD = "alpine"
# Start iProxy
def start_iproxy():
subprocess.Popen(["iproxy", "2222", "22"], stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL)
time.sleep(3)
# Connect via SSH
def connect_ssh():
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
try:
client.connect(DEVICE_IP, port=DEVICE_PORT, username=USERNAME,
password=PASSWORD)
return client
except Exception:
return None
# Find Activation Record
def find_activation_record(ssh_client):
commands = ["find / -name 'activation_record.plist' 2>/dev/null"]
for cmd in commands:
stdin, stdout, stderr = ssh_client.exec_command(cmd)
result = stdout.read().decode().strip()
if result:
return result
return None
# Download Activation Record
def download_file(ssh_client, remote_path, local_path):
sftp = ssh_client.open_sftp()
try:
sftp.get(remote_path, local_path)
return True
except:
return False
finally:
sftp.close()
# Modify Activation Record
def modify_activation_record(local_path):
if os.path.exists(local_path):
with open(local_path, "r+") as f:
data = f.read()
data = data.replace("<true/>", "<false/>")
f.seek(0)
f.write(data)
f.truncate()
return True
return False
# Upload Modified File
def upload_file(ssh_client, local_path, remote_path):
sftp = ssh_client.open_sftp()
try:
sftp.put(local_path, remote_path)
return True
except:
return False
finally:
sftp.close()
# Restart Device
def restart_device(ssh_client):
ssh_client.exec_command("reboot")
# Bypass Process
def run_bypass():
start_iproxy()
ssh_client = connect_ssh()
if not ssh_client:
return "❌ SSH connection failed"
file_path = find_activation_record(ssh_client)
if not file_path:
ssh_client.close()
return "❌ Activation Record not found"
local_path = "activation_record.plist"
if not download_file(ssh_client, file_path, local_path):
ssh_client.close()
return "❌ File download failed"
if not modify_activation_record(local_path):
ssh_client.close()
return "❌ File modification failed"
if not upload_file(ssh_client, local_path, file_path):
ssh_client.close()
return "❌ File upload failed"
restart_device(ssh_client)
ssh_client.close()
return "✅ Bypass Untethered Successful!"
# GUI Application
class iOverlordApp(QWidget):
def init(self):
super().init()
self.initUI()
def initUI(self):
self.setWindowTitle("iOverlord V1 - Bypass Untethered iOS 15/16")
self.setGeometry(100, 100, 400, 200)
self.label = QLabel("🔍 Waiting for device...", self)
self.button = QPushButton("🔓 Start Bypass", self)
self.button.clicked.connect(self.startBypass)
layout = QVBoxLayout()
layout.addWidget(self.label)
layout.addWidget(self.button)
self.setLayout(layout)
def startBypass(self):
self.label.setText("⚙️ Processing...")
status = run_bypass()
self.label.setText(status)
# Run GUI
if name == "main":
app = QApplication(sys.argv)
window = iOverlordApp()
window.show()
sys.exit(app.exec())