diff --git a/Android/.gitignore b/Android/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..f51b071778a76813d0a4a5d06db773e19a2d0f90 --- /dev/null +++ b/Android/.gitignore @@ -0,0 +1,2 @@ +flashable.zip +flashable/data/misc/keychain/*_blacklist.txt diff --git a/Android/README b/Android/README new file mode 100644 index 0000000000000000000000000000000000000000..3d980e67ca73bafb948c6fcf8cbc01c88faad375 --- /dev/null +++ b/Android/README @@ -0,0 +1,6 @@ +Android Certificates Blacklisting +===================================================== + +This tool generates flashable zip to use with custom recovery on an +Android 4.1+ device. + diff --git a/Android/flashable.sh b/Android/flashable.sh index a7665df44fbe1ec2430be0c931d6c87d2af180e3..ac4ec5f150f3f1673fcc8d7054ac683df2186943 100755 --- a/Android/flashable.sh +++ b/Android/flashable.sh @@ -4,6 +4,9 @@ GEN_ZIP='flashable.zip' mkdir -p flashable/data/misc/keychain + +rm $GEN_ZIP + cp pubkey_blacklist.txt flashable/data/misc/keychain cp serial_blacklist.txt flashable/data/misc/keychain (cd flashable; zip ../$GEN_ZIP -r *) diff --git a/Android/flashable/data/misc/keychain/pubkey_blacklist.txt b/Android/flashable/data/misc/keychain/pubkey_blacklist.txt index b9d1c905ceb5aa7bdf7dfd69801279c095517f5a..5415b79e4ab3e212ce176a9d02795063aacbbea2 100644 --- a/Android/flashable/data/misc/keychain/pubkey_blacklist.txt +++ b/Android/flashable/data/misc/keychain/pubkey_blacklist.txt @@ -1 +1 @@ -5f3ab33d55007054bc5e3e5553cd8d8465d77c61,783333c9687df63377efceddd82efa9101913e8e,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,c206fbd53bba0ceef2d2d2453d0752263a9fe75f,c206fbd53bba0ceef2d2d2453d0752263a9fe75f,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,3592761947e2907b7ac880f429bf2be66c81511a,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,bb2d75ce172accdf05d9a86d278298889986c891,313f4613292545f326f99ed52f39984851290f4d,55921a5b2e62b0e07b8ba9ae9ffca0f6e656263c,4bd5e15116a2a7eda3a5c7e0ffb187180ec0e3d5,999b76540b4a9c7a35ca8f0f2eaa747a0faec56e,59c4eac320386f231960f00c9a40575e15fcf7fc,8e50b2eaf0918b206ac00ea293e19e56e0a35eb0,9bc82bc98b8b7e0f04e32c98855cd5d2240fd683,338201361c67b6b318e8f5d1d9aaab0366094fec,e167132d8a321df76ef8c4437b0501ffd1326fd8,1385e3b2cfb0acf63bd1c1341323cd1b6874b08b,53b4fcaf73a83f05aada6591db7de0ec2f1eb1f2,91006fb7f72ea6e663728df481d33c3eecc62595,1bcdfe7c5a0832b44f7e533b8f927881c7932dc1,051c6d0c7ca9b0d9b9e50a5bc8f9f5e38348eb78,c8188f7a06a99bf579dd9f8896afd1d91f19bc2a,512f553fc62ace8ab3852d74cade03e78d8d9ef1,2cdd8e7bef3b800169a389712256018a6337f416,1af49f3422fb42ac986d0a59a898d99eac88554a,2b4da71b2b88d19b8b83e66bc088e3847cc67cb7,ae9d8d5e418c1bfbade8f4574dc43758ea628289,8080355e6edde7f01bf7d9d340d9e0ef52c3c1cd,361a7afb69a9add6ba6f295e0aedaeba7fcd4a69,28a4baee613e0ab8158395654e4fcc13c170e3e3,90e241c211418b95b1a9e09c37247e849fe4bea1,f8920be908a9c5d5a0fbf39aaa98a5743749ad9f,ad0e6682a87932e81c8bc594049ed7d0aec958e8,8a534b089bc61c824d694f55d9c902a58c67b661,79ef6f41e89da009aefc1c00289fd3a301fae845,68c76297f5f2e7c3ceea09d195f48971ca7ab97e,d69f981e878991857486449306aa950c8283035f,de87a22419f1c1c39ed12d43dfa740de8372b097,3f89633e2cd86a916895b3af56afa2ed31490e73,f9dae5809fd2d82419aa30c7f903640a55df944f,58f4733635ba21d4d9d63f2dcdec69bcb7d45dde,aeeca8e857e9bf7da296c473c071f8cabc31999f,3f89633e2cd86a916895b3af56afa2ed31490e73,f9dae5809fd2d82419aa30c7f903640a55df944f,58f4733635ba21d4d9d63f2dcdec69bcb7d45dde,aeeca8e857e9bf7da296c473c071f8cabc31999f, +5f3ab33d55007054bc5e3e5553cd8d8465d77c61,783333c9687df63377efceddd82efa9101913e8e,3592761947e2907b7ac880f429bf2be66c81511a,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,bb2d75ce172accdf05d9a86d278298889986c891,55921a5b2e62b0e07b8ba9ae9ffca0f6e656263c,4bd5e15116a2a7eda3a5c7e0ffb187180ec0e3d5,1bcdfe7c5a0832b44f7e533b8f927881c7932dc1,ae9d8d5e418c1bfbade8f4574dc43758ea628289,8080355e6edde7f01bf7d9d340d9e0ef52c3c1cd,79ef6f41e89da009aefc1c00289fd3a301fae845,68c76297f5f2e7c3ceea09d195f48971ca7ab97e,d69f981e878991857486449306aa950c8283035f,de87a22419f1c1c39ed12d43dfa740de8372b097, diff --git a/Android/generate.sh b/Android/generate.sh index bf0ae4a7d7d3affccbd81285d53fcefae714bec1..54e7c811dfaac3390991b3822e2f69d09fb16f76 100755 --- a/Android/generate.sh +++ b/Android/generate.sh @@ -2,18 +2,35 @@ set -e -# TODO: Explicitly distinguish between CA & EE certificates. -CA_CERTS=`ls ../Windows/Certs/*.crt` -EE_CERTS=`ls ../Windows/Certs/\[Fake\]*.crt` +if [ ${1:-extended} = 'all' ];then + echo "Generating ALL CRL set" + # TODO: Explicitly distinguish between CA & EE certificates. + CA_CERTS=`ls ../Windows/Certs/*.crt` + EE_CERTS=`ls ../Windows/Certs/\[Fake\]*.crt` + echo "all" +elif [ ${1:-extended} = 'extended' ];then + echo "Generating EXTENDED CRL set" + CA_CERTS=`ls ../Windows/Certs/CNNIC_*.crt ../Windows/Certs/China_Internet_Network_Information_Center_EV_Certificates_Root.crt ../Windows/Certs/[Suspicious]WaccBaiduCom.crt ../Windows/Certs/GiantRootCA.crt ../Windows/Certs/CFCA_*.crt ../Windows/Certs/UCA_*.crt ../Windows/Certs/[Suspicious]GoAgent_CA.crt` + EE_CERTS=`ls ../Windows/Certs/\[Fake\]*.crt` +else + echo "Generating Basic CRL set" + CA_CERTS=`ls ../Windows/Certs/CNNIC_*.crt ../Windows/Certs/China_Internet_Network_Information_Center_EV_Certificates_Root.crt ../Windows/Certs/[Suspicious]WaccBaiduCom.crt ../Windows/Certs/GiantRootCA.crt` + EE_CERTS=`ls ../Windows/Certs/\[Fake\]*.crt` +fi +echo "Generating Configurations" # Generate a blacklist of CA cert public keys PUBKEYS=`bash ca-blacklist.sh ${CA_CERTS} | tr '\n' ','` # Generate a blacklist of EE cert serial numbers SERIALS=`bash ee-blacklist.sh ${EE_CERTS} | tr '\n' ','` +echo "Writing Configurations" echo $PUBKEYS > pubkey_blacklist.txt echo $SERIALS > serial_blacklist.txt echo "Generated and saved to pubkey_blacklist.txt and serial_blacklist.txt" +echo "Building Flashable Zip" bash flashable.sh + +echo "Done!" diff --git a/Android/pubkey_blacklist.txt b/Android/pubkey_blacklist.txt index b9d1c905ceb5aa7bdf7dfd69801279c095517f5a..5415b79e4ab3e212ce176a9d02795063aacbbea2 100644 --- a/Android/pubkey_blacklist.txt +++ b/Android/pubkey_blacklist.txt @@ -1 +1 @@ -5f3ab33d55007054bc5e3e5553cd8d8465d77c61,783333c9687df63377efceddd82efa9101913e8e,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,c206fbd53bba0ceef2d2d2453d0752263a9fe75f,c206fbd53bba0ceef2d2d2453d0752263a9fe75f,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,699f1b7ae9b8da18496c608bce4f4eaaf9f0b7aa,3592761947e2907b7ac880f429bf2be66c81511a,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,bb2d75ce172accdf05d9a86d278298889986c891,313f4613292545f326f99ed52f39984851290f4d,55921a5b2e62b0e07b8ba9ae9ffca0f6e656263c,4bd5e15116a2a7eda3a5c7e0ffb187180ec0e3d5,999b76540b4a9c7a35ca8f0f2eaa747a0faec56e,59c4eac320386f231960f00c9a40575e15fcf7fc,8e50b2eaf0918b206ac00ea293e19e56e0a35eb0,9bc82bc98b8b7e0f04e32c98855cd5d2240fd683,338201361c67b6b318e8f5d1d9aaab0366094fec,e167132d8a321df76ef8c4437b0501ffd1326fd8,1385e3b2cfb0acf63bd1c1341323cd1b6874b08b,53b4fcaf73a83f05aada6591db7de0ec2f1eb1f2,91006fb7f72ea6e663728df481d33c3eecc62595,1bcdfe7c5a0832b44f7e533b8f927881c7932dc1,051c6d0c7ca9b0d9b9e50a5bc8f9f5e38348eb78,c8188f7a06a99bf579dd9f8896afd1d91f19bc2a,512f553fc62ace8ab3852d74cade03e78d8d9ef1,2cdd8e7bef3b800169a389712256018a6337f416,1af49f3422fb42ac986d0a59a898d99eac88554a,2b4da71b2b88d19b8b83e66bc088e3847cc67cb7,ae9d8d5e418c1bfbade8f4574dc43758ea628289,8080355e6edde7f01bf7d9d340d9e0ef52c3c1cd,361a7afb69a9add6ba6f295e0aedaeba7fcd4a69,28a4baee613e0ab8158395654e4fcc13c170e3e3,90e241c211418b95b1a9e09c37247e849fe4bea1,f8920be908a9c5d5a0fbf39aaa98a5743749ad9f,ad0e6682a87932e81c8bc594049ed7d0aec958e8,8a534b089bc61c824d694f55d9c902a58c67b661,79ef6f41e89da009aefc1c00289fd3a301fae845,68c76297f5f2e7c3ceea09d195f48971ca7ab97e,d69f981e878991857486449306aa950c8283035f,de87a22419f1c1c39ed12d43dfa740de8372b097,3f89633e2cd86a916895b3af56afa2ed31490e73,f9dae5809fd2d82419aa30c7f903640a55df944f,58f4733635ba21d4d9d63f2dcdec69bcb7d45dde,aeeca8e857e9bf7da296c473c071f8cabc31999f,3f89633e2cd86a916895b3af56afa2ed31490e73,f9dae5809fd2d82419aa30c7f903640a55df944f,58f4733635ba21d4d9d63f2dcdec69bcb7d45dde,aeeca8e857e9bf7da296c473c071f8cabc31999f, +5f3ab33d55007054bc5e3e5553cd8d8465d77c61,783333c9687df63377efceddd82efa9101913e8e,3592761947e2907b7ac880f429bf2be66c81511a,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,8476c303b2e34d57fd0645a7c4315f2dbeaaf0a4,bb2d75ce172accdf05d9a86d278298889986c891,55921a5b2e62b0e07b8ba9ae9ffca0f6e656263c,4bd5e15116a2a7eda3a5c7e0ffb187180ec0e3d5,1bcdfe7c5a0832b44f7e533b8f927881c7932dc1,ae9d8d5e418c1bfbade8f4574dc43758ea628289,8080355e6edde7f01bf7d9d340d9e0ef52c3c1cd,79ef6f41e89da009aefc1c00289fd3a301fae845,68c76297f5f2e7c3ceea09d195f48971ca7ab97e,d69f981e878991857486449306aa950c8283035f,de87a22419f1c1c39ed12d43dfa740de8372b097, diff --git a/Android/rooted.sh b/Android/rooted.sh new file mode 100644 index 0000000000000000000000000000000000000000..454ca6c9da1dc6a8540f033366a71a1d60d68709 --- /dev/null +++ b/Android/rooted.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +adb push pubkey_blacklist.txt /sdcard/pubkey_blacklist.txt +adb push serial_blacklist.txt /sdcard/serial_blacklist.txt + +adb shell su -c "cp /sdcard/pubkey_blacklist.txt /data/misc/keychain/pubkey_blacklist.txt" +adb shell su -c "cp /sdcard/serial_blacklist.txt /data/misc/keychain/serial_blacklist.txt" + +echo "Please reboot your phone"