פוסט זה נועד לאפשר חזרה על הפעולות שביצעתי במהלך ביצוע המחקר בנושא חבילת תוכנה מסויימת.
ע"י מעבר על השלבים שמפורסמים פה ובפוסטים נוספים אני מקווה כי ניתן יהיה לשחזר ולבצע ביקורת עמיתים פשוטה.
כלים דרושים:
מערכת דביאן סיד , הפעולות בוצעו ע"י משתמש בשם user הקבצים הורדו לתיקיות pikud ו tmp.
apktool
unzip
grep
גישה לאינטרנט.
קבלת התוכנה עצמה:
הפעולה הראשונה היא הורדת ה APK עצמו ללא שימוש בחנות האפליקציות, במאמר עצמו אני מתייחס לנקודה הזאת שחוסמים את האפשרות של אנשים להם אין אפשרות להוריד מחנות האפליקציות (מכשיר ללא גישה לחנות האפליקציות, אין להם באמת מכשיר המקושר לחשבון).
ניתן להשתמש ב apkpure.com או apk-dl כל מערכת אחרת שמאפשרת הורדת אפצליקציות שלא מהסטור עצמו. ראויי לציין כי מכיוון שאנו מורידים מצד שלישי קוד המקור יכול להיות שעבר שינוי.
מסיבה זו אני מפרסם את ההאשים שקיבלתי (דרך שתי האתרים האלה הם היו זהים).
ההאשים של הAPK שלי הם :
פריסת נתונים:
ביצוע פריסת הקבצים ופיענוח התוכן בוצעה ע"י apktool
ביצוע הפריסה התבצע ע"י
לאחר ביצוע הפיענוח הראשוני מתקבלים קבצי .smali שהם המקבילה (?) של קבצי אסמבלי לbytecode בעולם האנדרויד.
אימות הממצאים בוצע ע"י בידקה מתוצרי ה jadx.
פריסה ופיענוח באמצעות jadx
נשמור את הקובץ בתת תיקיה (בשביל להקל בדיקות לאחר מכן).
הפיכת קובץ ה APK ל zip וביצוע פריסה שלו:
ביצוע פריסה שלו (השתמשתי בתוכנת ה unzip שמגיעה מחבילת unzip בדביאן):
בשונה מקבצי smali את קבצי ה dex נאלץ להמיר לקוד קריא יותר כך :
ע"י מעבר על השלבים שמפורסמים פה ובפוסטים נוספים אני מקווה כי ניתן יהיה לשחזר ולבצע ביקורת עמיתים פשוטה.
כלים דרושים:
מערכת דביאן סיד , הפעולות בוצעו ע"י משתמש בשם user הקבצים הורדו לתיקיות pikud ו tmp.
apktool
unzip
grep
גישה לאינטרנט.
קבלת התוכנה עצמה:
הפעולה הראשונה היא הורדת ה APK עצמו ללא שימוש בחנות האפליקציות, במאמר עצמו אני מתייחס לנקודה הזאת שחוסמים את האפשרות של אנשים להם אין אפשרות להוריד מחנות האפליקציות (מכשיר ללא גישה לחנות האפליקציות, אין להם באמת מכשיר המקושר לחשבון).
ניתן להשתמש ב apkpure.com או apk-dl כל מערכת אחרת שמאפשרת הורדת אפצליקציות שלא מהסטור עצמו. ראויי לציין כי מכיוון שאנו מורידים מצד שלישי קוד המקור יכול להיות שעבר שינוי.
מסיבה זו אני מפרסם את ההאשים שקיבלתי (דרך שתי האתרים האלה הם היו זהים).
ההאשים של הAPK שלי הם :
user@laptop:~/pikud$ sha512sum Home%20Front%20Command_1.2_apk-dl.com.apk 28da60bf0e2941d632a65fe\
76960f45a715835d0567f0a\
3840eded45de7c63cef41d45\
817b5853d496b005d81b5e70\
713559957cf842daaaa0656ceb9ab6d075 Home%20Front%20Command_1.2_apk-dl.com.apk
user@laptop:~/pikud$ md5sum Home%20Front%20Command_1.2_apk-dl.com.apk 81282187c7395e0cf1c72cabeeaa8b87 Home%20Front%20Command_1.2_apk-dl.com.apk
פריסת נתונים:
ביצוע פריסת הקבצים ופיענוח התוכן בוצעה ע"י apktool
Apktool v2.1.1-dirty - a tool for reengineering Android apk files with smali v2.1.3-dev and baksmali v2.1.3-dev Copyright 2014 Ryszard Wiśniewskiהותקן ע"י חבילה סטנדרטית :Updated by Connor Tumbleson
apt-cache policy apktool apktool: Installed: 2.1.1+dfsg-3 Candidate: 2.1.1+dfsg-3 Version table:
ביצוע הפריסה התבצע ע"י
user@laptop:~/pikud/$apktool d Home%20Front%20Command_1.2_apk-dl.com.apk I: Using Apktool 2.1.1-dirty on Home%20Front%20Command_1.2_apk-dl.com.apk I: Loading resource table... I: Decoding AndroidManifest.xml with resources... I: Loading resource table from file: /home/user/.local/share/apktool/framework/1.apk I: Regular manifest package... I: Decoding file-resources... I: Decoding values */* XMLs... I: Baksmaling classes.dex... I: Copying assets and libs... I: Copying unknown files... I: Copying original files...לאחר הפעולה תתקבל תיקייה Home%20Front%20Command_1.2_apk-dl.com מציאת הכתובת בוצעה ע"י :
user@laptop:~/pikud$ grep mailto -rn * js/appObjs/globalMethods.js:60:
window.location = "mailto:itayg@elad.co.il?subject=Ioref%20Bug%20Report&body="+mailBoady;
js/controllers/contactUsController.js:51: window.plugins.inAppBrowswer.open('mailto:info-oref@idf.gov.il?subject=Something to share with you...','_system');
grep .co.il -rn * AndroidManifest.xml:20: <meta-data android:name="server_url"
android:value="https://ioref.co.il"> AndroidManifest.xml:21: <meta-data android:name="dr_server_url"
android:value="https://dr.ioref.co.il"> assets/www/js/appObjs/globalMethods.js:60:
window.location = "mailto:itayg@elad.co.il?subject=Ioref%20Bug%20Report&body="+mailBoady;
grep .org.il -rn *
assets/www/js/controllers/contactUsController.js:41: window.plugins.inAppBrowswer.open('http://www.oref.org.il','_system');
assets/www/js/controllers/contactUsController.js:45: window.location = "http://www.oref.org.il";
לאחר ביצוע הפיענוח הראשוני מתקבלים קבצי .smali שהם המקבילה (?) של קבצי אסמבלי לbytecode בעולם האנדרויד.
אימות הממצאים בוצע ע"י בידקה מתוצרי ה jadx.
פריסה ופיענוח באמצעות jadx
- שימוש שימוש באתרים שמבצעים jadx , לשם שימוש מעלים את קובץ הapk שהורד קודם לאתר והוא מבצע המרת החבילה לקוד java שהוא קריא טיפה יותר מקבצי smali.
- ביצוע פריסת jadx עצמאית
נשמור את הקובץ בתת תיקיה (בשביל להקל בדיקות לאחר מכן).
הפיכת קובץ ה APK ל zip וביצוע פריסה שלו:
user@laptop:~/pikud/zip$ mv Home\ Front\ Command_v1.2.apk Home\ Front\ Command_v1.2.apk.zip
ביצוע פריסה שלו (השתמשתי בתוכנת ה unzip שמגיעה מחבילת unzip בדביאן):
user@laptop:~/pikud/zip$ unzip -x Home\ Front\ Command_v1.2.apk.zip Archive: Home Front Command_v1.2.apk.zip extracting: assets/www/css/images/ajax-loader.gif inflating: assets/www/css/idangerous.swiper.css inflating: assets/www/css/index.css inflating: assets/www/css/jquery.mobile-1.4.2.min.css inflating: assets/www/css/toggle-switch.css extracting: assets/www/img/A_minus.png extracting: assets/www/img/A_plus.png extracting: assets/www/img/AntennaRed.png extracting: assets/www/img/Locate.png extracting: assets/www/img/antenna.png extracting: assets/www/img/arrow1.png extracting: assets/www/img/arrow1Right.png extracting: assets/www/img/arrowDown.png extracting: assets/www/img/arrowLeft.png extracting: assets/www/img/arrowRight.png extracting: assets/www/img/back.png extracting: assets/www/img/background.png extracting: assets/www/img/call.png extracting: assets/www/img/call2.png extracting: assets/www/img/cellBlue.png extracting: assets/www/img/cellOrange.png extracting: assets/www/img/cellRed.png extracting: assets/www/img/cellyellow.png extracting: assets/www/img/checkBox1Off.png extracting: assets/www/img/checkBox1On.png extracting: assets/www/img/choosingShelter.jpg extracting: assets/www/img/close.png extracting: assets/www/img/earthquake.jpg extracting: assets/www/img/emergencyBag.jpg extracting: assets/www/img/facebook.png extracting: assets/www/img/familyReadiness.jpg extracting: assets/www/img/filterBar.png extracting: assets/www/img/forbiddenMaterials.jpg extracting: assets/www/img/home.png extracting: assets/www/img/info.png extracting: assets/www/img/key1.png extracting: assets/www/img/location2.png extracting: assets/www/img/locationIcon.png extracting: assets/www/img/logo.png extracting: assets/www/img/mail.png extracting: assets/www/img/menu.png extracting: assets/www/img/navBar.png extracting: assets/www/img/news_icon_Yellow.png extracting: assets/www/img/onAlarm.jpg extracting: assets/www/img/progressBig0.png extracting: assets/www/img/progressBig100.png extracting: assets/www/img/progressBig20.png extracting: assets/www/img/progressBig40.png extracting: assets/www/img/progressBig60.png extracting: assets/www/img/progressBig80.png extracting: assets/www/img/progressSmall0.png extracting: assets/www/img/progressSmall100.png extracting: assets/www/img/progressSmall20.png extracting: assets/www/img/progressSmall40.png extracting: assets/www/img/progressSmall60.png extracting: assets/www/img/progressSmall80.png extracting: assets/www/img/protectiveZonesMap.jpg extracting: assets/www/img/radio.png extracting: assets/www/img/radio2.png extracting: assets/www/img/ready.png extracting: assets/www/img/settings.png extracting: assets/www/img/situation.png extracting: assets/www/img/textBox2.png extracting: assets/www/img/textBox3.png extracting: assets/www/img/time2.png extracting: assets/www/img/timeIcon.png extracting: assets/www/img/twitter.png extracting: assets/www/img/update.png extracting: assets/www/img/web.png extracting: assets/www/img/youtube.png inflating: assets/www/js/appObjs/appMenu.js extracting: assets/www/js/appObjs/appMessages.js inflating: assets/www/js/appObjs/contentLoader.js inflating: assets/www/js/appObjs/errorsManager.js inflating: assets/www/js/appObjs/globalMethods.js inflating: assets/www/js/appObjs/globalVariables.js inflating: assets/www/js/appObjs/languageManager.js inflating: assets/www/js/appObjs/locationManager.js inflating: assets/www/js/appObjs/navigationManager.js inflating: assets/www/js/appObjs/requireConfig.js inflating: assets/www/js/controllers/appLobbyController.js inflating: assets/www/js/controllers/contactUsController.js inflating: assets/www/js/controllers/messageDetailsController.js inflating: assets/www/js/controllers/readinessController.js inflating: assets/www/js/controllers/readinessDetailsController.js inflating: assets/www/js/controllers/settingsController.js inflating: assets/www/js/controllers/situationRoomController.js inflating: assets/www/js/controllers/wizard_chooseLocationController.js inflating: assets/www/js/controllers/wizard_choosingShelterController.js inflating: assets/www/js/controllers/wizard_earthquakeReadinessController.js inflating: assets/www/js/controllers/wizard_emergencyBagController.js inflating: assets/www/js/controllers/wizard_progressStateController.js inflating: assets/www/js/lib/idangerous.swiper.js inflating: assets/www/js/lib/idangerous.swiper.min.js inflating: assets/www/js/lib/jquery-1.7.1.min.js inflating: assets/www/js/lib/jquery.blockUI.js inflating: assets/www/js/lib/jquery.js inflating: assets/www/js/lib/jquery.mobile-1.4.2.js inflating: assets/www/js/lib/jquery.mobile-1.4.2.min.js inflating: assets/www/js/lib/jquery.scrollTo.js inflating: assets/www/js/lib/jquery.touchSwipe.min.js inflating: assets/www/js/lib/require.js inflating: assets/www/js/lib/rtl.jquery.mobile-1.2.0.min.js inflating: assets/www/js/lib/rtl.jquery.mobile-1.4.0.js inflating: assets/www/js/lib/text.js inflating: assets/www/js/lib/underscore.js inflating: assets/www/js/localization/ar/offlineContent/appTerms.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_about.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_choosingShelter.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_earthquakeReadiness.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_emergencyBag.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_familyReadiness.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_forbiddenMaterials.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_onAlarmBehavior.html inflating: assets/www/js/localization/ar/offlineContent/offlineContent_protectiveZonesMap.html inflating: assets/www/js/localization/ar/arabic.js inflating: assets/www/js/localization/ar/cities_ar_EG inflating: assets/www/js/localization/ar/situationRoomMessagesAR.js inflating: assets/www/js/localization/en/offlineContent/appTerms.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_about.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_choosingShelter.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_earthquakeReadiness.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_emergencyBag.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_familyReadiness.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_forbiddenMaterials.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_onAlarmBehavior.html inflating: assets/www/js/localization/en/offlineContent/offlineContent_protectiveZonesMap.html inflating: assets/www/js/localization/en/cities_en_US inflating: assets/www/js/localization/en/english.js inflating: assets/www/js/localization/en/situationRoomMessagesEN.js inflating: assets/www/js/localization/he/offlineContent/appTerms.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_about.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_choosingShelter.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_earthquakeReadiness.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_emergencyBag.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_familyReadiness.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_forbiddenMaterials.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_onAlarmBehavior.html inflating: assets/www/js/localization/he/offlineContent/offlineContent_protectiveZonesMap.html inflating: assets/www/js/localization/he/cities_iw_IL inflating: assets/www/js/localization/he/hebrew.js inflating: assets/www/js/localization/he/situationRoomMessagesHE.js inflating: assets/www/js/localization/ru/offlineContent/appTerms.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_about.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_choosingShelter.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_earthquakeReadiness.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_emergencyBag.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_familyReadiness.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_forbiddenMaterials.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_onAlarmBehavior.html inflating: assets/www/js/localization/ru/offlineContent/offlineContent_protectiveZonesMap.html inflating: assets/www/js/localization/ru/cities_ru_RU inflating: assets/www/js/localization/ru/russian.js inflating: assets/www/js/localization/ru/situationRoomMessagesRU.js inflating: assets/www/js/models/getCityName.js inflating: assets/www/js/app.js inflating: assets/www/plugins/org.apache.cordova.dialogs/www/android/notification.js inflating: assets/www/plugins/org.apache.cordova.dialogs/www/notification.js inflating: assets/www/plugins/appSettings.js inflating: assets/www/plugins/appStorage.js inflating: assets/www/plugins/debuggerPlugin.js inflating: assets/www/plugins/errorsManagerPlugin.js inflating: assets/www/plugins/geoLocation.js inflating: assets/www/plugins/getAboutInfo.js inflating: assets/www/plugins/getMessages.js inflating: assets/www/plugins/getSegments.js inflating: assets/www/plugins/getShelterEstimateTime.js inflating: assets/www/plugins/inappbrowser.js inflating: assets/www/plugins/login.js inflating: assets/www/plugins/softKeyBoard.js inflating: assets/www/plugins/updateServer.js inflating: assets/www/plugins/updateStatistics.js inflating: assets/www/plugins/video.js inflating: assets/www/templates/pages/appLobbyTemplate.html inflating: assets/www/templates/pages/chooseLocationTemplate.html inflating: assets/www/templates/pages/choosingShelterTemplate.html inflating: assets/www/templates/pages/contactUsTemplate.html inflating: assets/www/templates/pages/earthquakeReadinessTemplate.html inflating: assets/www/templates/pages/emergencyBagTemplate.html inflating: assets/www/templates/pages/messageDetailsTemplate.html inflating: assets/www/templates/pages/progressStateTemplate.html inflating: assets/www/templates/pages/readinessDetailsTemplate.html inflating: assets/www/templates/pages/readinessTemplate.html inflating: assets/www/templates/pages/settingsTemplate.html inflating: assets/www/templates/pages/situationRoomTemplate.html inflating: assets/www/templates/emergencyBagItem.html inflating: assets/www/templates/menuTemplate.html inflating: assets/www/templates/readinessItem.html inflating: assets/www/templates/situationRoomMessage.html extracting: assets/www/config.xml inflating: assets/www/cordova.js inflating: assets/www/cordova_plugins.js inflating: assets/www/index.html extracting: assets/alert.mp3 extracting: assets/info.mp3 inflating: res/color/common_signin_btn_text_dark.xml inflating: res/color/common_signin_btn_text_light.xml extracting: res/drawable/alert_icon.png inflating: res/drawable/button_border.xml inflating: res/drawable/common_signin_btn_icon_dark.xml inflating: res/drawable/common_signin_btn_icon_light.xml inflating: res/drawable/common_signin_btn_text_dark.xml inflating: res/drawable/common_signin_btn_text_light.xml inflating: res/drawable/dialog_border.xml inflating: res/drawable/dialog_header_border.xml extracting: res/drawable/ic_notification.png extracting: res/drawable/icon.png extracting: res/drawable/info_circle.png extracting: res/drawable/ioref_logo.png extracting: res/drawable/splash.png inflating: res/drawable/toast_border.xml inflating: res/layout/dialog_push_message.xml inflating: res/layout/splash.xml inflating: res/layout/toast.xml inflating: res/raw/smart_trust_store.bks inflating: res/xml/config.xml inflating: AndroidManifest.xml extracting: resources.arsc extracting: res/drawable-hdpi-v4/common_signin_btn_icon_disabled_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_disabled_focus_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_disabled_focus_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_disabled_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_focus_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_focus_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_normal_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_normal_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_pressed_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_icon_pressed_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_disabled_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_disabled_focus_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_disabled_focus_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_disabled_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_focus_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_focus_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_normal_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_normal_light.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_pressed_dark.9.png extracting: res/drawable-hdpi-v4/common_signin_btn_text_pressed_light.9.png extracting: res/drawable-hdpi-v4/ic_plusone_medium_off_client.png extracting: res/drawable-hdpi-v4/ic_plusone_small_off_client.png extracting: res/drawable-hdpi-v4/ic_plusone_standard_off_client.png extracting: res/drawable-hdpi-v4/ic_plusone_tall_off_client.png extracting: res/drawable-hdpi-v4/icon.png extracting: res/drawable-hdpi-v4/splash.png extracting: res/drawable-ldpi-v4/icon.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_disabled_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_disabled_focus_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_disabled_focus_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_disabled_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_focus_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_focus_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_normal_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_normal_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_pressed_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_icon_pressed_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_disabled_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_disabled_focus_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_disabled_focus_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_disabled_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_focus_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_focus_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_normal_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_normal_light.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_pressed_dark.9.png extracting: res/drawable-mdpi-v4/common_signin_btn_text_pressed_light.9.png extracting: res/drawable-mdpi-v4/ic_plusone_medium_off_client.png extracting: res/drawable-mdpi-v4/ic_plusone_small_off_client.png extracting: res/drawable-mdpi-v4/ic_plusone_standard_off_client.png extracting: res/drawable-mdpi-v4/ic_plusone_tall_off_client.png extracting: res/drawable-mdpi-v4/icon.png extracting: res/drawable-mdpi-v4/splash.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_disabled_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_disabled_focus_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_disabled_focus_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_disabled_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_focus_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_focus_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_normal_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_normal_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_pressed_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_icon_pressed_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_disabled_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_disabled_focus_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_disabled_focus_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_disabled_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_focus_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_focus_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_normal_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_normal_light.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_pressed_dark.9.png extracting: res/drawable-xhdpi-v4/common_signin_btn_text_pressed_light.9.png extracting: res/drawable-xhdpi-v4/ic_plusone_medium_off_client.png extracting: res/drawable-xhdpi-v4/ic_plusone_small_off_client.png extracting: res/drawable-xhdpi-v4/ic_plusone_standard_off_client.png extracting: res/drawable-xhdpi-v4/ic_plusone_tall_off_client.png extracting: res/drawable-xhdpi-v4/icon.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_disabled_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_disabled_focus_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_disabled_focus_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_disabled_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_focus_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_focus_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_normal_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_normal_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_pressed_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_icon_pressed_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_disabled_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_disabled_focus_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_disabled_focus_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_disabled_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_focus_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_focus_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_normal_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_normal_light.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_pressed_dark.9.png extracting: res/drawable-xxhdpi-v4/common_signin_btn_text_pressed_light.9.png extracting: res/drawable-xxhdpi-v4/ic_plusone_medium_off_client.png extracting: res/drawable-xxhdpi-v4/ic_plusone_small_off_client.png extracting: res/drawable-xxhdpi-v4/ic_plusone_standard_off_client.png extracting: res/drawable-xxhdpi-v4/ic_plusone_tall_off_client.png inflating: classes.dex inflating: org/apache/http/entity/mime/version.properties inflating: META-INF/MANIFEST.MF inflating: META-INF/CERT.SF
בשונה מקבצי smali את קבצי ה dex נאלץ להמיר לקוד קריא יותר כך :
jadx -d out classes.dex
אין תגובות:
הוסף רשומת תגובה