
iOS/macOS 연구용 스위스 아미 나이프
iOS/macOS 리서치 스위스 아미 나이프
ipsw란 무엇인가? 🤔ipsw는 iOS와 macOS를 위한 포괄적인 커맨드라인 리서치 프레임워크입니다. 보안 연구원, 리버스 엔지니어, 탈옥 개발자, iOS 매니아를 위한 광범위한 도구 모음을 제공하여 Apple 펌웨어를 다운로드하고, 파싱하고, 분석하며 iOS 기기와 상호작용할 수 있게 해줍니다.
blacktop tap 사용 (추가 기능 포함)
brew install blacktop/tap/ipsw
공식 Homebrew formula 사용
brew install ipsw
sudo snap install ipsw
scoop bucket add blacktop https://github.com/blacktop/scoop-bucket.git
scoop install blacktop/ipsw
# Download latest iOS IPSW
ipsw download ipsw --device iPhone16,1 --latest
# Extract kernelcache
ipsw extract --kernel iPhone16,1_18.2_22C150_Restore.ipsw
# Analyze dyld_shared_cache
ipsw dyld info /path/to/dyld_shared_cache_arm64
# Get device information
ipsw idev list
ipsw download ipsw --device iPhone16,1 --latest
ipsw extract --kernel iPhone16,1_18.2_22C150_Restore.ipsw
ipsw diff iPhone16,1_18.1_22B83_Restore.ipsw iPhone16,1_18.2_22C150_Restore.ipsw
ipsw macho info /path/to/binary
ipsw macho disass /path/to/binary --symbol _main
ipsw macho search /path/to/binary --string "password"
ipsw dyld info /path/to/dyld_shared_cache
ipsw dyld extract /path/to/dyld_shared_cache --dylib Foundation
ipsw dyld objc class /path/to/dyld_shared_cache --class NSString
idev)ipsw idev list
ipsw idev afc ls /
ipsw idev apps ls
ipsw idev backup create
ipsw idev syslog
ipsw img4 dec iBoot.img4
ipsw fw sep iPhone16,1_18.2_22C150_Restore.ipsw
ipsw fw iboot iPhone16,1_18.2_22C150_Restore.ipsw
ipsw appstore cert ls
ipsw appstore device reg --name "My Device" --udid 1234567890
ipsw appstore profile create --name "Development Profile"
ipsw symbolicate crash.ips --dsym /path/to/symbols
ipsw class-dump /path/to/binary
ipsw ssh debugserver
ipsw는 두 가지 주요 구성 요소로 이루어져 있습니다:
ipsw - 완전한 분석 기능을 갖춘 메인 CLI 도구ipswd - 원격 작업 및 자동화를 위한 REST API 데몬ipsw는 YAML 설정 파일과 환경 변수를 지원합니다:
# Create config directory
mkdir -p ~/.config/ipsw
# Copy example config
cp config.example.yml ~/.config/ipsw/config.yaml
❱ ipsw macho disass /System/Library/PrivateFrameworks/ApplePushService.framework/apsd --entry \
--dec --dec-model "Claude 3.7 Sonnet"
• Loading symbol cache file...
• Decompiling... 🕒
int main(int argc, char *argv[]) {
@autoreleasepool {
__set_user_dir_suffix(@"com.apple.apsd");
@autoreleasepool {
APSDaemon *daemon = [[APSDaemon alloc] init];
if (daemon) {
NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
[runLoop run];
[runLoop release];
}
[daemon release];
}
return 0;
}
@catch (NSException *exception) {
if ([exception reason] == 1) {
id exceptionObj = [exception retain];
id logger = [APSLog daemon];
if (_os_log_type_enabled(logger, 0x11)) {
[exceptionObj logWithLogger:logger];
}
[logger release];
[exceptionObj release];
}
}
}
ipswd 실행 시 /docs에서 제공되는 REST API 문서ipsw의 슈퍼 파워로 AI 에이전트를 강화하세요
npx skills add https://github.com/blacktop/ipsw-skill --skill ipsw
AI를 사용하여 저장소에 대해 질문하세요:
[!WARNING] AI 응답에는 환각(hallucination)이 포함될 수 있습니다 - 중요한 정보는 검증하세요.
사전 계산된 펌웨어 차이점: ipsw-diffs
기여를 환영합니다! 가이드라인은 CONTRIBUTING.md를 참조하세요.
git clone https://github.com/blacktop/ipsw.git
cd ipsw
make build
문제가 발생하면 issue를 생성해 주세요 - 수정 사항이 우선 처리됩니다! 포괄적인 테스트 스위트는 향후 릴리스에서 계획되어 있습니다.
큰 감사를 드립니다:
MIT 라이선스 - 자세한 내용은 LICENSE를 참조하세요.