mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 05:03:35 +00:00
10 KiB
10 KiB
iOS Pentesting Checklist
Trickest를 사용하여 세계에서 가장 고급 커뮤니티 도구로 자동화된 워크플로우를 쉽게 구축하세요.
오늘 바로 액세스하세요:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
htARTE (HackTricks AWS Red Team Expert)로부터 제로부터 영웅이 될 때까지 AWS 해킹을 배우세요
HackTricks를 지원하는 다른 방법:
- 회사가 HackTricks에 광고를 하거나 PDF 형식의 HackTricks를 다운로드하려면 구독 요금제를 확인하세요!
- 공식 PEASS & HackTricks 스왜그를 구매하세요
- The PEASS Family를 발견하세요, 당사의 독점 NFTs 컬렉션
- 💬 Discord 그룹 또는 텔레그램 그룹에 가입하거나 트위터 🐦 @carlospolopm를 팔로우하세요.
- HackTricks 및 HackTricks Cloud github 저장소로 PR 제출하여 해킹 트릭을 공유하세요.
Try Hard Security Group
{% embed url="https://discord.gg/tryhardsecurity" %}
준비
- iOS 기본 사항을 읽으세요
- iOS 테스트 환경을 읽어 환경을 준비하세요
- iOS 초기 분석의 모든 섹션을 읽어 iOS 애플리케이션을 펜테스트하는 일반적인 작업을 배우세요
데이터 저장
- Plist 파일은 민감한 정보를 저장하는 데 사용될 수 있습니다.
- Core Data (SQLite 데이터베이스)는 민감한 정보를 저장할 수 있습니다.
- YapDatabases (SQLite 데이터베이스)는 민감한 정보를 저장할 수 있습니다.
- Firebase 구성 오류.
- Realm 데이터베이스는 민감한 정보를 저장할 수 있습니다.
- Couchbase Lite 데이터베이스는 민감한 정보를 저장할 수 있습니다.
- 바이너리 쿠키는 민감한 정보를 저장할 수 있습니다.
- 캐시 데이터는 민감한 정보를 저장할 수 있습니다.
- 자동 스냅샷은 시각적으로 민감한 정보를 저장할 수 있습니다.
- 키체인은 일반적으로 전화기를 재판매할 때 남을 수 있는 민감한 정보를 저장하는 데 사용됩니다.
- 요약하면, 파일 시스템에 응용 프로그램에 의해 저장된 민감한 정보를 확인하세요
키보드
- 응용 프로그램이 사용자 정의 키보드를 사용할 수 있게 허용하는지 확인하세요.
- 민감한 정보가 키보드 캐시 파일에 저장되었는지 확인하세요
로그
- 민감한 정보가 기록되고 있는지 확인하세요
백업
- 백업은 파일 시스템에 저장된 민감한 정보에 액세스하는 데 사용될 수 있습니다 (이 체크리스트의 초기 지점을 확인하세요)
- 또한, 백업은 일부 구성을 수정하고, 그 수정된 구성이 로드될 때 일부 (보안) 기능이 우회될 수 있도록 응용 프로그램의 구성을 변경할 수 있습니다
응용 프로그램 메모리
- 응용 프로그램의 메모리 내에 민감한 정보가 있는지 확인하세요
암호화 깨짐
- 암호화에 사용된 비밀번호를 찾을 수 있는지 확인하세요
- 민감한 데이터를 전송/저장하기 위해 폐기된/약한 알고리즘을 사용하는지 확인하세요
- 암호화 함수를 후킹하고 모니터링하는지 확인하세요
로컬 인증
- 응용 프로그램에서 로컬 인증을 사용하는 경우, 인증이 어떻게 작동하는지 확인하세요.
- 로컬 인증 프레임워크를 사용하는 경우 쉽게 우회될 수 있습니다
- 동적으로 우회할 수 있는 함수를 사용하는 경우 사용자 지정 frida 스크립트를 만들 수 있습니다
IPC를 통한 민감한 기능 노출
- 사용자 지정 URI 핸들러 / 딥링크 / 사용자 지정 스키마
- 응용 프로그램이 어떤 프로토콜/스키마를 등록하는지 확인하세요
- 응용 프로그램이 사용하기 위해 등록하는지 확인하세요 어떤 프로토콜/스키마
- 응용 프로그램이 사용자 지정 스키마를 통해 수신할 예정인 민감한 정보를 다른 응용 프로그램이 동일한 스키마를 등록하여 가로챌 수 있는지 확인하세요
- 응용 프로그램이 사용자 입력을 확인하고 정리하지 않는지 확인하고 일부 취약점을 악용할 수 있는지 확인하세요
- 응용 프로그램이 사용자 지정 스키마를 통해 어디서든 호출할 수 있는 민감한 작업을 노출하는지 확인하세요
- Universal Links
- 응용 프로그램이 어떤 유니버설 프로토콜/스키마를 등록하는지 확인하세요
apple-app-site-association
파일을 확인하세요- 응용 프로그램이 사용자 입력을 확인하고 정리하지 않는지 확인하고 일부 취약점을 악용할 수 있는지 확인하세요
- 응용 프로그램이 사용자 지정 스키마를 통해 어디서든 호출할 수 있는 민감한 작업을 노출하는지 확인하세요
- UIActivity 공유
- 응용 프로그램이 UIActivities를 수신할 수 있는지 확인하고 특별히 설계된 활동으로 취약점을 악용할 수 있는지 확인하세요
- UIPasteboard
- 응용 프로그램이 일반 붙여넣기에 무언가를 복사하는지 확인하세요
- 응용 프로그램이 일반 붙여넣기에서 데이터를 사용하는지 확인하세요
- 민감한 데이터가 복사되었는지 확인하기 위해 붙여넣기를 모니터링하세요
- 앱 확장
- 응용 프로그램이 확장을 사용하는지 확인하세요
- WebViews
- 사용 중인 웹뷰 종류를 확인하세요
javaScriptEnabled
,JavaScriptCanOpenWindowsAutomatically
, **hasOnlySecureContent
**의 상태를 확인하세요- 웹뷰가
file://
프로토콜로 로컬 파일에 액세스할 수 있는지 확인하세요 (**allowFileAccessFromFileURLs
,allowUniversalAccessFromFileURLs
) - Javascript가 Native 메서드에 액세스할 수 있는지 확인하세요 (
JSContext
,postMessage
)
네트워크 통신
- 통신에 대한 MitM을 수행하고 웹 취약점을 검색합니다.
- 인증서의 호스트 이름이 확인되었는지 확인합니다.
- 인증서 핀닝을 확인하거나 우회합니다.
기타
- 자동 패치/업데이트 메커니즘을 확인합니다.
- 악의적인 제3자 라이브러리를 확인합니다.
Try Hard Security Group
{% embed url="https://discord.gg/tryhardsecurity" %}
htARTE (HackTricks AWS Red Team Expert)를 통해 **제로부터 영웅까지의 AWS 해킹을 배우세요**!
HackTricks를 지원하는 다른 방법:
- 회사를 HackTricks에서 광고하거나 PDF로 다운로드하려면 구독 요금제를 확인하세요!
- 공식 PEASS & HackTricks 스왜그를 구매하세요.
- The PEASS Family를 발견하세요, 당사의 독점 NFTs 컬렉션.
- 💬 디스코드 그룹 또는 텔레그램 그룹에 가입하거나트위터** 🐦 @carlospolopm를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 저장소에 PR을 제출하여 해킹 트릭을 공유하세요.
Trickest를 사용하여 세계에서 가장 고급 커뮤니티 도구를 활용한 워크플로우를 쉽게 구축하고 자동화하세요.
오늘 바로 액세스하세요:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}