Skip to content

Instantly share code, notes, and snippets.

@fi01
fi01 / SH-06E MMC WP
Created October 19, 2013 12:59
SH-06EのMMC WP(ライトプロテクト)まとめ
SH-06EのMMC WP(ライトプロテクト)まとめ
自分の見た資料ではMMCのWPは下記の様になっている。
MMCのコマンド
SEND_WRITE_PROT_TYPE
現在のプロテクトステータスを得る。
ステータスは2ビットで表される。
11:permanent 電源を切ってもWPが有効。
10:power-on 電源を切るまでWPが有効。
過去にCWM対応させた物はビルド用のデバイス定義を android_device_sharp_xxx というリポジトリで置いてあります。
多分参考になると思います。
recovery/root/init.recovery.qcom.rcが肝で、ここに機種依存の設定を書きます。
これを仕上げるのが結構大変です。
adbやCWMの動作に必要な、/systemにあるサービスのバイナリと使用するライブラリはproprietary-files.txtに書いてextract-files.shを実行してツリーに取り込みます。
これらのファイルはramdiskの/vendor配下に展開されます。
そのままでは/vendorに置いても動作しないので、extract-files.shは取り込みを行う際に/vendorで動く様にパッチします。
また、/vendor/binに実行権限が付与されないのでadd_permission_for_vendor.patchを適用する必要があります。
私が使っているCWMと通常起動を分岐させるスクリプトです。
起動時に音量キーを連打するとCWM起動になります。
bootイメージを展開して/initを/init.origにリネームし、代わりにこのスクリプトを/initに配置します。
busybox環境を/binに配置します。
CWM起動用のramdiskをtarで固めて/bin/recovery.tar.gzに配置します。
また、/bin/_suを配置しておくと良いと思います。
SH-04EとSH-06Eはexecでinit.origを実行すると何故か電波を掴まないので、CWMを起動しない場合はreboot recoveryします。
この機種は通常起動のブートイメージをrecoveryに焼いて下さい。
@fi01
fi01 / ptrace_test.c
Created November 16, 2013 14:54
CVE-2013-6282 exploit SH-06E ビルド01.00.07のMIYABI解除済みの環境で/sys/kernel/uevent_helperに"test_data"を書き込む。 下記のコードを流用した。 https://android.googlesource.com/platform/cts/ branch android-4.4_r1.1 ./tests/tests/security/jni/android_security_cts_NativeCodeTest.cpp
/*
* Copyright (C) 2013 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
@fi01
fi01 / cube-towel.c
Last active March 13, 2018 23:54
CVE-2014-3153 exploit code
//Android.mk にて、「LOCAL_CFLAGS := -fno-stack-protector -mno-thumb -O0」を指定すること。
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <pthread.h>
#include <sys/mman.h>
#include <sys/syscall.h>
#include <linux/futex.h>
@fi01
fi01 / SO-02J_BLU_Root_Docomo.txt
Created October 24, 2020 08:13
SO-02JのBLUとRoot化メモ(Docomoファーム)
アンロック前のバックアップ
Flashtool 0.9.25.0で34.1.B.0.336を焼く
TA領域をBackupTA_v2で取得
BLU準備
qUnlock Toolsでアンロック
サービスメニューのConfigurationで値の確認
「Bootloader unlock allowed: Yes」
この状態のTA領域をBackupTA_v2で取得