Android Applications Pentesting

Jifunze AWS hacking kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Jiunge na HackenProof Discord server ili kuwasiliana na wadukuzi wenye uzoefu na wawindaji wa zawadi za mdudu!

Machapisho ya Udukuzi Shiriki na maudhui yanayochimba kina katika msisimko na changamoto za udukuzi

Habari za Udukuzi za Muda Halisi Kaa sasa na ulimwengu wa udukuzi wenye kasi kupitia habari za muda halisi na ufahamu

Matangazo Mapya Baki mwelewa na zawadi mpya za mdudu zinazoanzishwa na sasisho muhimu za jukwaa

Jiunge nasi kwenye Discord na anza kushirikiana na wadukuzi bora leo!

Msingi wa Programu za Android

Inapendekezwa sana kuanza kusoma ukurasa huu ili kujua kuhusu sehemu muhimu zaidi zinazohusiana na usalama wa Android na sehemu hatari zaidi katika programu ya Android:

ADB (Daraja la Udukuzi wa Android)

Hii ni zana kuu unayohitaji kuunganisha kifaa cha Android (kielekezwa au halisi). ADB inaruhusu kudhibiti vifaa kupitia USB au Mtandao kutoka kwenye kompyuta. Zana hii inawezesha kukopi faili kwa pande zote, ufungaji na ufutaji wa programu, utekelezaji wa amri za shell, kuhifadhi data, kusoma magogo, miongoni mwa kazi nyingine.

Angalia orodha ifuatayo ya Amri za ADB kujifunza jinsi ya kutumia adb.

Smali

Marafiki ni muhimu kurekebisha msimbo wa programu ili kupata habari iliyofichwa (labda nywila zilizofichwa vizuri au bendera). Kwa hivyo, inaweza kuwa muhimu kudecompile apk, kurekebisha msimbo na kuirekebisha. Katika mafunzo haya unaweza kujifunza jinsi ya kudecompile na APK, kurekebisha msimbo wa Smali na kuirekebisha APK na kazi mpya. Hii inaweza kuwa muhimu sana kama mbadala kwa vipimo kadhaa wakati wa uchambuzi wa kudumu ambao utawasilishwa. Kisha, kuwa na uwezekano huu akilini daima.

Mbinu zingine za kuvutia

adb shell pm list packages
com.android.insecurebankv2

adb shell pm path com.android.insecurebankv2
package:/data/app/com.android.insecurebankv2-Jnf8pNgwy3QA_U5f-n_4jQ==/base.apk

adb pull /data/app/com.android.insecurebankv2-Jnf8pNgwy3QA_U5f-n_4jQ==/base.apk
  • Unganisha vipande vyote vilivyogawanyika na apk za msingi na APKEditor:

mkdir splits
adb shell pm path com.android.insecurebankv2 | cut -d ':' -f 1 | xargs -n1 -i adb pull {} splits
java -jar ../APKEditor.jar m -i splits/ -o merged.apk

# after merging, you will need to align and sign the apk, personally, I like to use the uberapksigner
java -jar uber-apk-signer.jar -a merged.apk --allowResign -o merged_signed

Uchambuzi wa Stati

Kwanza kabisa, kwa kuchambua APK unapaswa kutazama msimbo wa Java kwa kutumia decompiler. Tafadhali, soma hapa kupata habari kuhusu decompilers tofauti zilizopo.

Kutafuta Habari Muhimu

Kwa kuchunguza maneno ya APK unaweza kutafuta manenosiri, URLs (https://github.com/ndelphit/apkurlgrep), funguo za api, encryption, bluetooth uuids, tokens na chochote kingine kinachovutia... tafuta hata backdoors za utekelezaji wa msimbo au backdoors za uthibitishaji (vitambulisho vya msimamizi vilivyowekwa kwa nguvu kwenye programu).

Firebase

Tilia maanani URLs za firebase na hakikisha kama imeconfigure vibaya. Maelezo zaidi kuhusu ni nini Firebase na jinsi ya kuitumia vibaya hapa.

Kuelewa Msingi wa Programu - Manifest.xml, strings.xml

Uchunguzi wa faili za _Manifest.xml na strings.xml wa programu unaweza kufichua mapungufu ya usalama yanayowezekana. Faili hizi zinaweza kupatikana kwa kutumia decompilers au kwa kubadilisha kificho cha faili ya APK kuwa .zip na kisha kufungua.

Mapungufu yanayotambuliwa kutoka kwa Manifest.xml ni pamoja na:

  • Programu za Debuggable: Programu zilizowekwa kama debuggable (debuggable="true") kwenye faili ya Manifest.xml zinaweza kuwa hatari kwani zinaruhusu uhusiano ambao unaweza kusababisha unyanyasaji. Kwa uelewa zaidi kuhusu jinsi ya kutumia vibaya programu za debuggable, rejea mafunzo kuhusu kutafuta na kutumia vibaya programu za debuggable kwenye kifaa.

  • Mipangilio ya Backup: Sifa ya android:allowBackup="false" inapaswa kuwekwa wazi kwa programu zinazoshughulikia habari nyeti ili kuzuia nakala za data zisizoidhinishwa kupitia adb, hasa wakati uwezeshaji wa usb debugging unawezeshwa.

  • Usalama wa Mtandao: Mipangilio ya usalama wa mtandao ya desturi (android:networkSecurityConfig="@xml/network_security_config") katika res/xml/ inaweza kubainisha maelezo ya usalama kama vile pins za vyeti na mipangilio ya trafiki ya HTTP. Mfano ni kuruhusu trafiki ya HTTP kwa udomeni maalum.

  • Shughuli na Huduma Zilizotolewa: Kutambua shughuli na huduma zilizotolewa katika manifest kunaweza kufichua vipengele vinavyoweza kutumiwa vibaya. Uchambuzi zaidi wakati wa upimaji wa kudurufu unaweza kufunua jinsi ya kutumia vibaya vipengele hivi.

  • Watoaji wa Yaliyomo na Watoaji wa Faili: Watoaji wa yaliyomo waliowekwa wazi wanaweza kuruhusu ufikiaji usiohalali au ubadilishaji wa data. Usanidi wa Watoaji wa Faili pia unapaswa kuchunguzwa kwa makini.

  • Wapokeaji wa Matangazo na Mipango ya URL: Vipengele hivi vinaweza kutumika kwa kutumia vibaya, kwa umakini maalum kwa jinsi mipango ya URL inavyosimamiwa kwa mapungufu ya kuingiza.

  • Toleo la SDK: Sifa za minSdkVersion, targetSDKVersion, na maxSdkVersion zinaonyesha toleo la Android linaloungwa mkono, ikisisitiza umuhimu wa kutokuidhinisha toleo la zamani, lenye mapungufu la Android kwa sababu za usalama.

Kutoka kwa faili ya strings.xml, habari nyeti kama vile funguo za API, mipangilio ya desturi, na maelezo mengine ya watengenezaji yanaweza kugunduliwa, ikisisitiza umuhimu wa kupitia upya kwa uangalifu rasilimali hizi.

Tapjacking

Tapjacking ni shambulio ambapo programu mbovu inazinduliwa na kujipanga juu ya programu ya mwathiriwa. Mara tu inapofunika programu ya mwathiriwa, kiolesura chake cha mtumiaji kimeundwa kwa njia ambayo inadanganya mtumiaji kuingiliana nacho, wakati inapitisha mwingiliano kwa programu ya mwathiriwa. Kimsingi, inamfanya mtumiaji ashindwe kujua kwamba kimsingi anatekeleza vitendo kwenye programu ya mwathiriwa.

Pata habari zaidi hapa:

Utekapishaji wa Kazi

Shughuli yenye launchMode iliyowekwa kama singleTask bila taskAffinity iliyofafanuliwa inaweza kudhuriwa na utekapishaji wa kazi. Hii inamaanisha, kwamba programu inaweza kusakinishwa na ikiwa itazinduliwa kabla ya programu halisi inaweza kuteka kazi ya programu halisi (hivyo mtumiaji atakuwa anaingiliana na programu mbovu akidhani anatumia ile halisi).

Maelezo zaidi katika:

Uhifadhi wa Data usio Salama

Uhifadhi wa Ndani

Katika Android, faili zilizohifadhiwa kwenye uhifadhi wa ndani zimedhamiriwa kuwa inapatikana kipekee na programu iliyo iumba. Hatua hii ya usalama inazingatiwa na mfumo wa uendeshaji wa Android na kwa ujumla ni ya kutosha kwa mahitaji ya usalama ya programu nyingi. Hata hivyo, watengenezaji mara nyingi hutumia njia kama MODE_WORLD_READABLE na MODE_WORLD_WRITABLE ku ruhusu faili kushirikiwa kati ya programu tofauti. Hata hivyo, njia hizi hazizuili upatikanaji wa faili hizi na programu nyingine, ikiwemo zile zenye nia mbaya.

  1. Uchambuzi wa Stati:

  • Hakikisha matumizi ya MODE_WORLD_READABLE na MODE_WORLD_WRITABLE yanachunguzwa kwa uangalifu. Njia hizi zinaweza kufichua faili kwa upatikanaji usiokusudiwa au usiohalali.

  1. Uchambuzi wa Kisasa:

  • Thibitisha ruhusa zilizowekwa kwenye faili zilizoundwa na programu. Hasa, angalia kama kuna faili zilizowekwa kuwa za kusomwa au kuandikwa kwa ulimwengu wote. Hii inaweza kuwa hatari kubwa ya usalama, kwani itaruhusu programu yoyote iliyosakinishwa kwenye kifaa, bila kujali asili au nia yake, kusoma au kuhariri faili hizo.

Uhifadhi wa Nje

Wakati unashughulika na faili kwenye uhifadhi wa nje, kama Kadi za SD, tahadhari fulani inapaswa kuchukuliwa:

  1. Upatikanaji:

  • Faili kwenye uhifadhi wa nje ni zinazosomwa na kuandikwa kimataifa. Hii inamaanisha programu au mtumiaji yeyote anaweza kufikia faili hizo.

  1. Masuala ya Usalama:

  • Kwa urahisi wa upatikanaji, inashauriwa kutokuhifadhi habari nyeti kwenye uhifadhi wa nje.

  • Uhifadhi wa nje unaweza kuondolewa au kufikiwa na programu yoyote, ikifanya kuwa si salama.

  1. Kushughulikia Data kutoka kwa Uhifadhi wa Nje:

  • Daima fanya uthibitishaji wa kuingiza kwenye data inayopatikana kutoka kwa uhifadhi wa nje. Hii ni muhimu kwa sababu data inatoka kwenye chanzo kisichoweza kudhibitishwa.

  • Kuhifadhi faili za kutekelezeka au faili za darasa kwenye uhifadhi wa nje kwa kupakia kwa kudurufu kunashauriwa sana.

  • Ikiwa programu yako lazima ipate faili za kutekelezeka kutoka kwa uhifadhi wa nje, hakikisha faili hizi zinasainiwa na kuthibitishwa kwa njia ya kriptografia kabla ya kupakiwa kwa kudurufu. Hatua hii ni muhimu kwa kudumisha usalama wa programu yako.

Uhifadhi wa nje unaweza kufikiwa kwenye /storage/emulated/0, /sdcard, /mnt/sdcard

Kuanzia Android 4.4 (API 17), kadi ya SD ina muundo wa saraka ambao unazuia upatikanaji kutoka kwa programu kwenye saraka maalum kwa programu hiyo. Hii inazuia programu mbovu kupata upatikanaji wa kusoma au kuandika faili za programu nyingine.

Data nyeti iliyohifadhiwa kwa maandishi wazi

  • Mapendeleo ya Kushirikiana: Android inaruhusu kila programu kuokoa faili za xml kwa njia ya /data/data/<jina la pakiti>/shared_prefs/ na mara nyingine inawezekana kupata habari nyeti kwa maandishi wazi kwenye folda hiyo.

  • Maktaba za Data: Android inaruhusu kila programu kuokoa maktaba za sqlite kwa njia ya /data/data/<jina la pakiti>/databases/ na mara nyingine inawezekana kupata habari nyeti kwa maandishi wazi kwenye folda hiyo.

TLS iliyovunjika

Kubali Vyeti Vyote

Kwa sababu fulani mara nyingine watengenezaji wanakubali vyeti vyote hata kama kwa mfano jina la mwenyeji halilingani na mistari ya msimbo kama ifuatavyo:

SSLSocketFactory sf = new cc(trustStore);
sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);

Ufumbuzi wa Kuvunja

Mchakato Mbaya wa Usimamizi wa Funguo

Baadhi ya watengenezaji hufadhi data nyeti kwenye hifadhi ya ndani na kuiweka kwenye fichezo/predictable katika nambari. Hii haipaswi kufanywa kwani baadhi ya kugeuza inaweza kuruhusu wachomaji kutoa habari za siri.

Matumizi ya Alama za Usalama na/au Alama Zilizopitwa na Wakati

Watengenezaji hawapaswi kutumia alama zilizopitwa na wakati kufanya uchunguzi wa idhini, kufadhi au kupeleka data. Baadhi ya alama hizi ni: RC4, MD4, MD5, SHA1... Ikiwa hashes hutumiwa kufadhi nywila kwa mfano, hashes zenye upinzani wa nguvu wa kufanya nguvu inapaswa kutumika na chumvi.

Uchunguzi Mwingine

  • Inapendekezwa kufanya APK kuwa ngumu ili kufanya kazi ya kugeuza nyuma kuwa ngumu kwa wachomaji.

  • Ikiwa programu ni nyeti (kama programu za benki), inapaswa kufanya uchunguzi wake mwenyewe kuona ikiwa simu ya mkononi imepata mizizi na kuchukua hatua kulingana na hilo.

  • Ikiwa programu ni nyeti (kama programu za benki), inapaswa kuangalia ikiwa emulator inatumika.

  • Ikiwa programu ni nyeti (kama programu za benki), inapaswa kuangalia uadilifu wake mwenyewe kabla ya kutekelezwa ili kuona ikiwa imebadilishwa.

  • Tumia APKiD kuangalia ni kipi kimepakwa/pakwa/kuwekwa kwenye APK

Programu ya React Native

Soma ukurasa ufuatao kujifunza jinsi ya kupata urahisi nambari ya javascript ya programu za React:

Programu za Xamarin

Soma ukurasa ufuatao kujifunza jinsi ya kupata nambari ya C# ya programu za xamarin:

Programu Zilizojaa

Kulingana na chapisho hiki la blogi zilizojaa ni algorithm ya Meta ambayo hupunguza maudhui ya programu kuwa faili moja. Blogi inazungumzia uwezekano wa kuunda programu ambayo inafungua programu za aina hii... na njia ya haraka ambayo inahusisha kutekeleza programu na kukusanya faili zilizopunguzwa kutoka kwa mfumo wa faili.

Uchambuzi wa Kanuni wa Stati wa Kiotomatiki

Zana ya mariana-trench inaweza kupata udhaifu kwa kuchanganua kanuni ya programu. Zana hii ina safu ya vyanzo vilivyofahamika (ambavyo vinaonyesha zana maeneo ambapo mwingiliano unadhibitiwa na mtumiaji), mabwawa (ambayo inaonyesha zana mahali hatari ambapo mwingiliano mbaya wa mtumiaji unaweza kusababisha uharibifu) na kanuni. Kanuni hizi zinaonyesha muungano wa vyanzo-mabwawa ambao unaonyesha udhaifu.

Kwa maarifa haya, mariana-trench itapitia kanuni na kupata udhaifu unaowezekana ndani yake.

Siri Zilizovuja

Programu inaweza kuwa na siri (funguo za API, nywila, viungo vilivyofichwa, subdomains...) ndani yake ambazo unaweza kugundua. Unaweza kutumia zana kama https://github.com/dwisiswant0/apkleaks

Kuvuka Uthibitishaji wa Kibaiometriki

Kazi Nyingine za Kuvutia

  • Utekelezaji wa Kanuni: Runtime.exec(), ProcessBuilder(), kanuni ya asili:system()

  • Tuma SMS: tumaUjumbeWaMaandishi, tumaUjumbeWaMaandishiWaSehemu

  • Kazi za asili zilizotangazwa kama asili: umma asili, System.loadLibrary, System.load

Mbinu Nyingine


Jiunge na HackenProof Discord server ili kuwasiliana na wachomaji wenye uzoefu na wawindaji wa tuzo za mdudu!

Machapisho ya Kuvamia Shiriki na yaliyomo yanayochimba katika msisimko na changamoto za kuvamia

Habari za Kuvamia za Wakati Halisi Kaa sawa na ulimwengu wa kuvamia unaobadilika haraka kupitia habari na ufahamu wa wakati halisi

Matangazo ya Hivi Karibuni Baki na habari za hivi karibuni za tuzo za mdudu zinazoanzishwa na sasisho muhimu za jukwaa

Jiunge nasi kwenye Discord na anza kushirikiana na wachomaji bora leo!


Uchambuzi wa Kiotomatiki

Kwanza kabisa, unahitaji mazingira ambapo unaweza kusakinisha programu na mazingira yote (cheti cha Burp CA, Drozer na Frida hasa). Kwa hivyo, kifaa kilichopandwa (kimeigizwa au la) kinapendekezwa sana.

Uchambuzi wa Kiotomatiki Mtandaoni

Unaweza kuunda akaunti ya bure katika: https://appetize.io/. Jukwaa hili linakuruhusu kupakia na kutekeleza APKs, hivyo ni muhimu kuona jinsi apk inavyotenda.

Unaweza hata kuona magogo ya programu yako kwenye wavuti na kuunganisha kupitia adb.

Kutokana na uhusiano wa ADB unaweza kutumia Drozer na Frida ndani ya wachomaji.

Uchambuzi wa Kiotomatiki wa Ndani

Kutumia kigeuzi

  • Android Studio (Unaweza kuunda vifaa vya x86 na arm, na kulingana na hii x86 za hivi karibuni zinasaidia maktaba za ARM bila kuhitaji kigeuzi cha arm polepole).

  • Jifunze kuweka katika ukurasa huu:

  • Genymotion (Toleo la Bure: Toleo la Kibinafsi, unahitaji kuunda akaunti. Inapendekezwa kupakua toleo NA VirtualBox ili kuepuka makosa yanayowezekana.)

  • Nox (Bure, lakini haisaidii Frida au Drozer).

Unapounda kigeuzi kipya kwenye jukwaa lolote, kumbuka kwamba skrini ni kubwa, ndivyo kigeuzi kitakavyokuwa polepole. Chagua skrini ndogo ikiwezekana.

Kuweka huduma za google (kama Duka la Programu) kwenye Genymotion unahitaji bonyeza kitufe kilichopigwa nyekundu kwenye picha ifuatayo:

Pia, kumbuka kuwa katika usakinishaji wa VM ya Android katika Genymotion unaweza kuchagua mode ya Mtandao wa Daraja (hii itakuwa muhimu ikiwa utakuwa unajiunga na VM ya Android kutoka kwa VM tofauti na zana).

Tumia kifaa halisi

Unahitaji kuamsha chaguo za uchunguzi na itakuwa nzuri ikiwa unaweza kuipandisha mizizi:

  1. Vipimo.

  2. (Kutoka Android 8.0) Chagua Mfumo.

  3. Chagua Kuhusu simu.

  4. Bonyeza Nambari ya Kujenga mara 7.

  5. Rudi nyuma na utapata Chaguzi za Watengenezaji.

Mara baada ya kusakinisha programu, jambo la kwanza unapaswa kufanya ni kujaribu na kuchunguza inafanya nini, inafanyaje kazi na kupata faraja nayo. Nitapendekeza kufanya uchambuzi wa kiotomatiki wa awali kwa kutumia uchambuzi wa kiotomatiki wa MobSF + pidcat, hivyo tutaweza kujifunza jinsi programu inavyofanya kazi wakati MobSF inakamata data nyingi ya kuvutia unaweza kuchunguza baadaye.

Kutokuwa na Uvuvi wa Data

Kuingiza Kumbukumbu

Wabunifu wanapaswa kuwa makini kuhusu kuweka wazi taarifa za kurekebisha hitilafu kwa umma, kwani inaweza kusababisha uvujaji wa data nyeti. Zana pidcat na adb logcat zinapendekezwa kwa kufuatilia kumbukumbu za maombi ili kutambua na kulinda taarifa nyeti. Pidcat inapendelewa kwa urahisi wake wa matumizi na uwekaji wa maandishi.

Tambua kwamba kutoka baadaye mpya kuliko Android 4.0, maombi yanaweza tu kupata kumbukumbu zao wenyewe. Kwa hivyo, maombi hawawezi kupata kumbukumbu za programu zingine. Hata hivyo, bado inapendekezwa kutoandika taarifa nyeti.

Kukariri/Kubandika Kumbukumbu za Kuficha

Mfumo wa ubao wa kukariri wa Android unawezesha utendaji wa kunakili/kubandika kwenye programu, lakini unaweka hatari kwa kuwa maombi mengine yanaweza kupata ubao wa kukariri, ikifichua data nyeti. Ni muhimu kulemaza utendaji wa kunakili/kubandika kwa sehemu nyeti za programu, kama vile maelezo ya kadi ya mkopo, ili kuzuia uvujaji wa data.

Kumbukumbu za Kukwama

Ikiwa programu inakwama na kuhifadhi kumbukumbu, kumbukumbu hizi zinaweza kusaidia wachomaji, hasa wakati programu haiwezi kugeuzwa kwa kurudisha nyuma. Ili kupunguza hatari hii, epuka kuandika kumbukumbu wakati wa kushindwa, na ikiwa kumbukumbu lazima itumwe kupitia mtandao, hakikisha zinatumwa kupitia kituo cha SSL kwa usalama.

Kama mchunguzi wa uvamizi, jaribu kutazama kumbukumbu hizi.

Data ya Takwimu Inayotumwa kwa Watu wa Tatu

Maombi mara nyingi hujumuisha huduma kama Google Adsense, ambayo inaweza kwa bahati mbaya kufichua data nyeti kutokana na utekelezaji usio sahihi wa wabunifu. Ili kutambua uvujaji wa data, ni vyema kukamata trafiki ya programu na kuangalia kama kuna taarifa nyeti inayotumwa kwa huduma za watu wa tatu.

SQLite DBs

Zaidi ya maombi yataitumia databases za ndani za SQLite kuokoa taarifa. Wakati wa uvamizi jaribu kutazama databases zilizoundwa, majina ya meza na vitengo vyote vya data iliyookolewa kwa sababu unaweza kupata taarifa nyeti (ambayo itakuwa dosari). Databases zinapaswa kuwa katika /data/data/jina.la.pakiti/databases kama /data/data/com.mwr.example.sieve/databases

Ikiwa database inaokoa taarifa za siri na ime fichwa lakini unaweza kupata nywila ndani ya programu bado ni dosari.

Panga meza kwa kutumia .tables na panga vitengo vya meza kwa kufanya .schema <jina_la_meza>

Drozer (Shughuli za Uvamizi, Watoa Huduma wa Yaliyomo na Huduma)

Kutoka Drozer Docs: Drozer inakuruhusu kuchukua jukumu la programu ya Android na kuingiliana na programu zingine. Inaweza kufanya chochote ambacho programu iliyosakinishwa inaweza kufanya, kama vile kutumia Mawasiliano ya Mchakato wa Android (IPC) na kuingiliana na mfumo wa uendeshaji wa msingi. . Drozer ni zana muhimu kwa kutumia shughuli zilizo nje, huduma zilizo nje na Watoa Huduma wa Yaliyomo kama utakavyojifunza katika sehemu zifuatazo.

Kutumia Shughuli Zilizo Nje

Soma hii ikiwa unataka kufahamu upya ni nini Shughuli ya Android. Pia kumbuka kuwa msimbo wa shughuli huanza katika njia ya onCreate.

Kupita Kibali

Wakati Shughuli inapoenezwa unaweza kuita skrini yake kutoka kwa programu ya nje. Kwa hivyo, ikiwa shughuli yenye taarifa nyeti ime enezwa unaweza kupita njia za uthibitishaji kufikia hiyo.

Jifunze jinsi ya kutumia shughuli zilizo nje na Drozer.

Unaweza pia kuanzisha shughuli iliyonjezwa kutoka adb:

  • Jina la Pakiti ni com.example.demo

  • Jina la Shughuli Iliyoenzwa ni com.example.test.MainActivity

adb shell am start -n com.example.demo/com.example.test.MainActivity

TAARIFA: MobSF itagundua kama ni hatari kutumia singleTask/singleInstance kama android:launchMode katika activity, lakini kutokana na hii, inaonekana hii ni hatari kwa toleo za zamani tu (toleo la API < 21).

Tafadhali kumbuka kwamba kukiuka idhini sio lazima iwe tishio kila wakati, itategemea jinsi kukiuka hufanya kazi na ni habari gani inafichuliwa.

Kuvuja kwa Taarifa Zenye Hisia

Activities pia zinaweza kurudisha matokeo. Ikiwa unafanikiwa kupata activity iliyotolewa na isiyolindwa ikitoa mbinu ya setResult na kurudisha taarifa zenye hisia, hii ni kuvuja kwa taarifa zenye hisia.

Tapjacking

Ikiwa tapjacking haijazuiliwa, unaweza kutumia activity iliyotolewa kufanya mtumiaji afanye vitendo visivyotarajiwa. Kwa habari zaidi kuhusu ni nini Tapjacking fuata kiungo hiki.

Kutumia Watoa Huduma - Kupata na kubadilisha taarifa zenye hisia

Soma hii ikiwa unataka kufahamu upya ni nini Mtoa Huduma. Watoa huduma kimsingi hutumiwa kwa ajili ya kushiriki data. Ikiwa programu ina watoa huduma zilizopo unaweza kuweza kutoa data zenye hisia kutoka kwao. Pia ni muhimu kufanya majaribio ya SQL injections na Path Traversals kwani wanaweza kuwa na mapungufu.

Jifunze jinsi ya kutumia Watoa Huduma na Drozer.

Kutumia Huduma

Soma hii ikiwa unataka kufahamu upya ni nini Huduma. Kumbuka kuwa hatua za Huduma huanza katika njia onStartCommand.

Huduma ni kitu ambacho kimsingi inaweza kupokea data, kuiprocess na kurudisha (au la) majibu. Kwa hiyo, ikiwa programu inatoa huduma fulani unapaswa kuangalia mimbo ili kuelewa inafanya nini na kuifanyia majaribio kwa njia ya kudukuliwa ili kutoa taarifa za siri, kukiuka hatua za uthibitishaji... Jifunze jinsi ya kutumia Huduma na Drozer.

Kutumia Wapokeaji wa Matangazo (Broadcast Receivers)

Soma hii ikiwa unataka kufahamu upya ni nini Wapokeaji wa Matangazo (Broadcast Receiver). Kumbuka kuwa hatua za Wapokeaji wa Matangazo huanza katika njia onReceive.

Wapokeaji wa matangazo hufuatilia aina fulani ya ujumbe. Kulingana na jinsi mpokeaji anavyoshughulikia ujumbe, inaweza kuwa na mapungufu. Jifunze jinsi ya kutumia Wapokeaji wa Matangazo na Drozer.

Unaweza kutafuta viungo vya kina kwa mkono, kutumia zana kama MobSF au hati kama hii. Unaweza kufungua mpango uliotangazwa kwa kutumia adb au kivinjari:

adb shell am start -a android.intent.action.VIEW -d "scheme://hostname/path?param=value" [your.package.name]

Note kwamba unaweza kuacha jina la pakiti na simu itaita moja kwa moja programu inayopaswa kufungua kiungo hicho.

<!-- Browser regular link -->
<a href="scheme://hostname/path?param=value">Click me</a>
<!-- fallback in your url you could try the intent url -->
<a href="intent://hostname#Intent;scheme=scheme;package=your.package.name;S.browser_fallback_url=http%3A%2F%2Fwww.example.com;end">with alternative</a>

Msimbo ulioendeshwa

Ili kupata msimbo utakaotekelezwa kwenye Programu, nenda kwenye shughuli iliyoitwa na kiungo kirefu na tafuta kazi ya onNewIntent.

Taarifa nyeti

Kila wakati unapopata kiungo kirefu hakikisha haipokei data nyeti (kama nywila) kupitia parameta za URL, kwa sababu programu nyingine yoyote inaweza kujifanya kuwa kiungo kirefu na kuiba data hiyo!

Parameta kwenye njia

Unapaswa pia kuangalia ikiwa kiungo kirefu kinatumia parameta ndani ya njia ya URL kama: https://api.example.com/v1/users/{username}, katika kesi hiyo unaweza kulazimisha upitishaji wa njia kwa kupata kitu kama: example://app/users?username=../../unwanted-endpoint%3fparam=value. Tambua kwamba ukigundua sehemu sahihi za mwisho ndani ya programu unaweza kusababisha Ukurasa wa Kuelekeza (ikiwa sehemu ya njia inatumika kama jina la kikoa), uchukuzi wa akaunti (ikiwa unaweza kuhariri maelezo ya watumiaji bila ishara ya CSRF na sehemu ya udhaifu iliyotumika njia sahihi) na udhaifu mwingine wowote. Zaidi habari kuhusu hili hapa.

Mifano zaidi

Ripoti ya tuzo ya mdudu inayovutia kuhusu viungo (/.well-known/assetlinks.json).

Ukaguzi wa Tabaka la Usafirishaji na Kukosekana kwa Uthibitisho

  • Vyeti mara nyingi havikaguliwi ipasavyo na programu za Android. Ni kawaida kwa programu hizi kupuuza onyo na kukubali vyeti vilivyosainiwa na wenyewe au, kwa baadhi ya hali, kurudi kutumia mawasiliano ya HTTP.

  • Majadiliano wakati wa mkono wa SSL/TLS mara nyingi ni dhaifu, kutumia seti za herufi zisizo salama. Udhaifu huu hufanya mawasiliano kuwa rahisi kwa mashambulizi ya mtu katikati (MITM), kuruhusu wadukuzi kufichua data.

  • Kuvuja kwa taarifa za kibinafsi ni hatari wakati programu zinafanya uthibitisho kwa kutumia njia salama lakini kisha kufanya mawasiliano kupitia njia zisizo salama kwa shughuli nyingine. Hatua hii haikulindi data nyeti, kama vidakuzi vya kikao au maelezo ya mtumiaji, kutokana na kutekwa na vyombo vya uovu.

Uthibitisho wa Cheti

Tutazingatia uthibitisho wa cheti. Uadilifu wa cheti cha seva lazima uthibitishwe ili kuimarisha usalama. Hii ni muhimu kwa sababu mipangilio dhaifu ya TLS na usafirishaji wa data nyeti kupitia njia zisizo na kifaa zinaweza kuleta hatari kubwa. Kwa hatua za kina kuhusu kuthibitisha vyeti vya seva na kushughulikia udhaifu, rasilimali hii hutoa mwongozo kamili.

Kufunga SSL

Kufunga SSL ni hatua ya usalama ambapo programu inathibitisha cheti cha seva dhidi ya nakala inayojulikana iliyohifadhiwa ndani ya programu yenyewe. Mbinu hii ni muhimu kuzuia mashambulizi ya MITM. Kutekeleza Kufunga SSL kunapendekezwa sana kwa programu zinazoshughulikia taarifa nyeti.

Ukaguzi wa Trafiki

Ili kukagua trafiki ya HTTP, ni lazima kusakinisha cheti cha zana ya wakala (k.m., Burp). Bila kusakinisha cheti hiki, trafiki iliyosimbwa huenda isionekane kupitia wakala. Kwa mwongozo wa kusakinisha cheti cha CA cha desturi, bonyeza hapa.

Programu zinazolenga API Level 24 na zaidi zinahitaji marekebisho kwenye Mtandao wa Usalama wa Konfiga ili kukubali cheti cha CA cha wakala. Hatua hii ni muhimu kwa kukagua trafiki iliyosimbwa. Kwa maelekezo ya kurekebisha Mtandao wa Usalama wa Konfiga, rejea kwa mafunzo haya.

Kupitisha Kufunga SSL

Wakati Kufunga SSL imefanywa, kupitisha ni muhimu ili kukagua trafiki ya HTTPS. Mbinu mbalimbali zinapatikana kwa kusudi hili:

Kutafuta Udhaifu wa Kawaida wa Wavuti

Ni muhimu pia kutafuta udhaifu wa kawaida wa wavuti ndani ya programu. Maelezo ya kina kuhusu kutambua na kupunguza udhaifu huu yanazidi kufunikwa mahali pengine.

Frida

Frida ni seti ya zana ya uwekaji wa kielelezo kwa waendelezaji, wanaorudisha, na watafiti wa usalama. Unaweza kupata programu inayoendeshwa na kufunga mbinu za wakati wa kukimbia kubadilisha tabia, kubadilisha thamani, kutoa thamani, kukimbia msimbo tofauti... Ikiwa unataka kufanya ukaguzi wa kina wa programu za Android unahitaji kujua jinsi ya kutumia Frida.

Dump Memory - Fridump

Angalia ikiwa programu inahifadhi taarifa nyeti ndani ya kumbukumbu ambayo haipaswi kuhifadhi kama nywila au mnemoniki.

Kwa kutumia Fridump3 unaweza kudondosha kumbukumbu ya programu na:

# With PID
python3 fridump3.py -u <PID>

# With name
frida-ps -Uai
python3 fridump3.py -u "<Name>"

Hii itatupilia kumbukumbu katika folda ya ./dump, na hapo unaweza kutumia grep na kitu kama:

strings * | grep -E "^[a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+$"

Data nyeti katika Keystore

Katika Android Keystore ni mahali bora pa kuhifadhi data nyeti, hata hivyo, kwa idhini za kutosha bado inawezekana kuiaccess. Kwa kuwa maombi mara nyingi huhifadhi hapa data nyeti kwa maandishi wazi vipimo vya pentests vinapaswa kuangalia hili kwani mtumiaji wa mizizi au mtu mwenye ufikivu wa kimwili kwenye kifaa anaweza kuiba data hii.

Hata kama programu ilihifadhi tarehe kwenye keystore, data inapaswa kuwa imefichwa.

Ili kupata data ndani ya keystore unaweza kutumia script hii ya Frida: https://github.com/WithSecureLabs/android-keystore-audit/blob/master/frida-scripts/tracer-cipher.js

frida -U -f com.example.app -l frida-scripts/tracer-cipher.js

Kupita Kielelezo/Biometrics

Kwa kutumia script ya Frida ifuatayo inaweza kuwa kupita kielelezo cha utambulisho ambacho programu za Android zinaweza kutekeleza ili kulinda maeneo fulani nyeti:

frida --codeshare krapgras/android-biometric-bypass-update-android-11 -U -f <app.package>

Picha za Mandharinyuma

Unapoweka programu katika mandharinyuma, Android huchukua picha ya programu ili wakati inarudishwa mbele ianze kupakia picha kabla ya programu ili ionekane kana kwamba programu imepakia haraka.

Hata hivyo, ikiwa picha hii ina habari nyeti, mtu mwenye ufikivu wa picha hiyo anaweza kuiba habari hizo (kumbuka kwamba unahitaji ruhusa ya msingi kuifikia).

Picha hizi kawaida hufutwa karibu na: /data/system_ce/0/snapshots

Android hutoa njia ya kuzuia picha ya skrini kwa kuweka FLAG_SECURE kama parameter ya mpangilio. Kwa kutumia bendera hii, maudhui ya dirisha hutibiwa kama salama, kuzuia kuonekana kwenye picha za skrini au kutazamwa kwenye maonyesho yasiyo salama.

getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);

Mchambuzi wa Maombi ya Android

Zana hii inaweza kukusaidia kusimamia zana tofauti wakati wa uchambuzi wa kudumu: https://github.com/NotSoSecure/android_application_analyzer

Kuingiza Kusudi

Wabunifu mara nyingi hujenga sehemu za mbadala kama shughuli, huduma, na wapokeaji wa matangazo ambao hushughulikia hizi Kusudi na kuzipitisha kwa njia kama startActivity(...) au sendBroadcast(...), ambayo inaweza kuwa hatari.

Hatari iko katika kuruhusu wachomaji kuzindua sehemu za programu ambazo hazijatolewa au kupata watoa huduma wa yaliyomo kwa kuuelekeza vibaya hivi Kusudi. Mfano muhimu ni sehemu ya WebView inayobadilisha URL kuwa vitu vya Intent kupitia Intent.parseUri(...) na kisha kuzitekeleza, ikisababisha uwezekano wa kuingiza Kusudi zenye nia mbaya.

Mambo Muhimu

  • Kuingiza Kusudi ni sawa na shida ya Uelekezaji wa Wazi kwenye wavuti.

  • Uvamizi unahusisha kupitisha vitu vya Intent kama ziada, ambazo zinaweza kuelekezwa kutekeleza shughuli zisizo salama.

  • Inaweza kufunua sehemu zisizotolewa na watoa huduma wa yaliyomo kwa wachomaji.

  • Ubadilishaji wa URL wa WebView kuwa vitu vya Intent unaweza kurahisisha hatua zisizokusudiwa.

Kuingiza Upande wa Mteja wa Android na mingine

Labda unajua kuhusu aina hii ya udhaifu kutoka kwenye Wavuti. Lazima uwe makini hasa na udhaifu huu katika programu ya Android:

  • Kuingiza SQL: Unaposhughulika na maswali ya kudumu au Watoa-Huduma za Yaliyomo hakikisha unatumia maswali yaliyoparameta.

  • Kuingiza JavaScript (XSS): Hakikisha kuwa JavaScript na msaada wa Programu-jalizi umefungwa kwa WebViews yoyote (imefungwa kwa chaguo-msingi). Maelezo zaidi hapa.

  • Kuingiza Faili ya Ndani: WebViews inapaswa kuwa na ufikiaji wa mfumo wa faili uliozimwa (umewezeshwa kwa chaguo-msingi) - (webview.getSettings().setAllowFileAccess(false);). Maelezo zaidi hapa.

  • Vidakuzi vya Milele: Katika visa kadhaa wakati programu ya Android inamaliza kipindi cha kikao, kuki haiondolewi au inaweza hata kuokolewa kwenye diski


Jiunge na HackenProof Discord ili kuwasiliana na wachomaji wenye uzoefu na wawindaji wa tuzo za mdudu!

Machapisho ya Kuchomwa Shiriki na maudhui yanayochimba katika msisimko na changamoto za kuchoma

Habari za Kuchomwa kwa Wakati Halisi Kaa sawa na ulimwengu wa kuchomwa kwa kasi kupitia habari na ufahamu wa wakati halisi

Matangazo Mapya Zaidi Baki na habari za hivi punde kuhusu tuzo mpya za mdudu zinazoanzishwa na sasisho muhimu za jukwaa

Jiunge nasi kwenye Discord na anza kushirikiana na wachomaji bora leo!

Uchambuzi wa Kiotomatiki

Uchambuzi wa Starehe

Tathmini ya udhaifu wa programu kwa kutumia kiolesura cha wavuti kizuri. Unaweza pia kufanya uchambuzi wa kudumu (lakini unahitaji kuandaa mazingira).

docker pull opensecurity/mobile-security-framework-mobsf
docker run -it -p 8000:8000 opensecurity/mobile-security-framework-mobsf:latest

Tambua kwamba MobSF inaweza kuchambua Android(apk), IOS(ipa) na Windows(apx) maombi (Maombi ya Windows yanapaswa kuchambuliwa kutoka kwa MobSF iliyosakinishwa kwenye mwenyeji wa Windows). Pia, ikiwa utaunda faili ya ZIP na msimbo wa chanzo wa programu ya Android au IOS (enda kwenye folda kuu ya programu, chagua kila kitu na uunde faili ya ZIP), MobSF itaweza kuijumuisha pia.

MobSF pia inakuruhusu kufanya diff/Compare uchambuzi na kuunganisha VirusTotal (utahitaji kuweka ufunguo wako wa API katika MobSF/settings.py na kuwezesha: VT_ENABLED = TRUE VT_API_KEY = <Ufunguo wako wa API> VT_UPLOAD = TRUE). Unaweza pia kuweka VT_UPLOAD kuwa False, kisha hash ita pelekwa badala ya faili.

Uchambuzi wa Kisasa ulioongozwa na MobSF

MobSF inaweza pia kuwa na manufaa sana kwa uchambuzi wa kisasa katika Android, lakini katika kesi hiyo utahitaji kusakinisha MobSF na genymotion kwenye mwenyeji wako (VM au Docker haitafanya kazi). Maelezo: Unahitaji kuanza kwanza VM katika genymotion na kisha MobSF. Mchambuzi wa kisasa wa MobSF unaweza:

  • Dump data ya programu (URLs, logs, clipboard, viwambo vilivyofanywa na wewe, viwambo vilivyofanywa na "Mteja wa Shughuli iliyosafirishwa", barua pepe, databases za SQLite, faili za XML, na faili zingine zilizoundwa). Haya yote hufanywa moja kwa moja isipokuwa viwambo, unahitaji kubonyeza unapotaka viwambo au unahitaji kubonyeza "Mteja wa Shughuli iliyosafirishwa" ili upate viwambo vya shughuli zote zilizosafirishwa.

  • Kukamata trafiki ya HTTPS

  • Kutumia Frida kupata habari za muda wa uendeshaji

Kuanzia toleo la Android > 5, ita anzisha Frida moja kwa moja na itaweka mipangilio ya proxy ya kimataifa kwa kukamata trafiki. Itakamata trafiki kutoka kwa programu iliyopimwa tu.

Frida

Kwa chaguo-msingi, pia itatumia Skripti za Frida kwa kupuuza SSL pinning, ugunduzi wa root na ugunduzi wa debugger na kwa kuangalia API za kuvutia. MobSF pia inaweza kuamsha shughuli zilizosafirishwa, kunasa viwambo vyao na kuhifadhi kwa ripoti.

Ili kuanza uchunguzi wa kisasa bonyeza kitufe cha kijani: "Anza Upelelezi". Bonyeza "Frida Live Logs" kuona magogo yanayozalishwa na skripti za Frida na "Mfuatiliaji wa API Moja kwa Moja" kuona mwaliko wote kwa njia zilizounganishwa, hoja zilizopitishwa na thamani zilizorudishwa (hii itaonekana baada ya kubonyeza "Anza Upelelezi"). MobSF pia inakuruhusu kupakia skripti zako za Frida (kutuma matokeo ya skripti zako za Ijumaa kwa MobSF tumia kazi tuma()). Pia ina skripti zilizopewa maandishi kadhaa unaweza kupakia (unaweza kuongeza zaidi katika MobSF/DynamicAnalyzer/tools/frida_scripts/others/), tu zichague, bonyeza "Pakia" na bonyeza "Anza Upelelezi" (utaweza kuona magogo ya skripti hizo ndani ya "Frida Live Logs").

Zaidi ya hayo, una baadhi ya utendaji wa ziada wa Frida:

  • Piga Darasa Zilizopakiwa: Itachapisha madarasa yote yaliyopakiwa

  • Kamata Maneno: Itachapisha maneno yote yaliyokamatwa wakati wa kutumia programu (kelele nyingi sana)

  • Kamata Linganishi la Maneno: Inaweza kuwa na manufaa sana. Ita onyesha maneno 2 yanayolinganishwa na ikiwa matokeo yalikuwa ya Kweli au ya Uongo.

  • Piga Njia za Darasa: Weka jina la darasa (kama "java.io.File") na itachapisha njia zote za darasa.

  • Tafuta Mfano wa Darasa: Tafuta madarasa kwa mfano

  • Fuata Njia za Darasa: Fuata darasa zima (ona matokeo na matokeo ya njia zote za darasa). Kumbuka kwamba kwa chaguo-msingi MobSF inafuatilia njia kadhaa za Android Api za kuvutia.

Maratibu unapochagua moduli ya ziada unayotaka kutumia unahitaji kubonyeza "Anza Upelelezi" na utaona matokeo yote katika "Frida Live Logs".

Kifaa

Mobsf pia inakuletea kifaa na baadhi ya amri za adb, amri za MobSF, na amri za kifaa za kawaida chini ya ukurasa wa uchambuzi wa kisasa. Baadhi ya amri za kuvutia:

help
shell ls
activities
exported_activities
services
receivers

Vyombo vya HTTP

Wakati trafiki ya http inachukuliwa unaweza kuona maoni mabaya ya trafiki iliyochukuliwa kwenye "HTTP(S) Traffic" chini au maoni mazuri katika "Anza Vyombo vya HTTP" chini ya kijani. Kutoka chaguo la pili, unaweza kutuma maombi yaliyochukuliwa kwa proxies kama Burp au Owasp ZAP. Ili kufanya hivyo, washa Burp --> zima Intercept --> katika MobSB Vyombo vya HTTP chagua ombi --> bonyeza "Tuma kwa Fuzzer" --> chagua anwani ya proxy (http://127.0.0.1:8080\).

Baada ya kumaliza uchambuzi wa kudumu na MobSF unaweza bonyeza "Anza Web API Fuzzer" kufanya fuzz maombi ya http na kutafuta mapungufu.

Baada ya kufanya uchambuzi wa kudumu na MobSF mipangilio ya proxy inaweza kuwa imeharibika na huenda usiweze kuzirekebisha kutoka kwenye GUI. Unaweza kuzirekebisha mipangilio ya proxy kwa kufanya:

adb shell settings put global http_proxy :0

Uchambuzi wa Kisasa ulioongozwa na Inspeckage

Unaweza kupata zana kutoka Inspeckage. Zana hii itatumia Hooks kadhaa kukujulisha kinachoendelea katika programu wakati unafanya uchambuzi wa kisasa.

Hii ni zana nzuri kufanya uchambuzi wa kistatiki na GUI

Zana hii imeundwa kutafuta mapungufu kadhaa ya usalama wa programu za Android, iwe katika msimbo wa chanzo au APK zilizopakwa. Zana hii pia inaweza kuunda APK inayoweza kutekelezwa kama "uthibitisho wa dhana" na amri za ADB, kwa kufaidika na baadhi ya mapungufu yaliyopatikana (shughuli zilizofichuliwa, nia, tapjacking...). Kama ilivyo na Drozer, hakuna haja ya kuroot kifaa cha majaribio.

pip3 install --user qark  # --user is only needed if not using a virtualenv
qark --apk path/to/my.apk
qark --java path/to/parent/java/folder
qark --java path/to/specific/java/file.java

  • Inaonyesha faili zote zilizochimbuliwa kwa urahisi

  • Kudecompile moja kwa moja faili za APK hadi muundo wa Java na Smali

  • Chambua AndroidManifest.xml kwa mapungufu na tabia za kawaida

  • Uchambuzi wa msimbo wa chanzo wa tuli kwa mapungufu na tabia za kawaida

  • Taarifa za kifaa

  • na zaidi

reverse-apk relative/path/to/APP.apk

SUPER ni programu ya mstari wa amri inayoweza kutumika kwenye Windows, MacOS X na Linux, ambayo inachambua faili za .apk kutafuta mapungufu. Inafanya hivi kwa kufungua APKs na kutumia seti ya sheria kugundua mapungufu hayo.

Sheria zote zinazingatia faili ya rules.json, na kila kampuni au mtihani anaweza kuunda sheria zao za kuchambua wanachohitaji.

Pakua toleo jipya zaidi kutoka kwenye ukurasa wa kupakua

super-analyzer {apk_file}

StaCoAn ni chombo cha msalaba-jukwaa ambacho husaidia wabunifu, wawindaji wa tuzo za mdudu na wadukuzi wa maadili kufanya uchambuzi wa msimbo wa tuli kwenye programu za simu.

Wazo ni kwamba unaburuta na kuachia faili yako ya programu ya simu (faili ya .apk au .ipa) kwenye programu ya StaCoAn na itazalisha ripoti ya kuona na inayoweza kubebeka kwako. Unaweza kubadilisha mipangilio na orodha za maneno ili upate uzoefu ulioboreshwa.

Pakua toleo jipya zaidi:

./stacoan

AndroBugs Framework ni mfumo wa uchambuzi wa udhaifu wa Android ambao husaidia waendelezaji au wadukuzi kupata udhaifu wa usalama katika programu za Android. Matokeo ya Windows

python androbugs.py -f [APK file]
androbugs.exe -f [APK file]

Androwarn ni chombo ambacho lengo kuu ni kugundua na kumwonya mtumiaji kuhusu tabia za uovu zilizotengenezwa na programu ya Android.

Ugunduzi hufanywa na uchambuzi wa tuli wa bytecode ya Dalvik ya programu, inayowakilishwa kama Smali, na maktaba ya androguard.

Chombo hiki hutafuta tabia za kawaida za programu "mbaya" kama: Uchukuzi wa vitambulisho vya simu, Udukuzi wa mizani ya sauti/video, Kubadilisha data ya PIM, Utekelezaji wa nambari isiyo na mpangilio...

python androwarn.py -i my_application_to_be_analyzed.apk -r html -v 3

MARA ni Mfumo wa Analisi na Reverse engineering wa Aplikesheni za Simu. Ni chombo kinachojumuisha zana za kawaida zinazotumiwa katika uhandisi wa nyuma na uchambuzi wa aplikesheni za simu, ili kusaidia katika kupima aplikesheni za simu dhidi ya vitisho vya usalama vya simu vya OWASP. Lengo lake ni kufanya kazi hii iwe rahisi na rafiki kwa watengenezaji wa aplikesheni za simu na wataalamu wa usalama.

Inaweza:

Koodous

Inatumika kugundua zisizo: https://koodous.com/

Kuficha/Kufichua nambari

Tafadhali kumbuka kuwa kutegemea huduma na usanidi unaoitumia kuficha nambari. Siri inaweza au isifichwe.

Kutoka Wikipedia: ProGuard ni chombo cha amri cha wazi kinachopunguza, kuboresha na kuficha nambari ya Java. Inaweza kuboresha bytecode pamoja na kugundua na kuondoa maagizo yasiyotumiwa. ProGuard ni programu huru na inasambazwa chini ya Leseni ya Umma ya GNU, toleo la 2.

ProGuard inasambazwa kama sehemu ya Android SDK na inaendeshwa wakati wa kujenga aplikesheni katika hali ya kutolewa.

Pata mwongozo wa hatua kwa hatua ya kufichua apk katika https://blog.lexfo.fr/dexguard.html

(Kutoka kwa mwongozo huo) Wakati wa mwisho tulipoangalia, mode ya Dexguard ya uendeshaji ilikuwa:

  • pakia rasilimali kama InputStream;

  • peleka matokeo kwa darasa linaloiga kutoka kwa FilterInputStream kwa kuidukua;

  • fanya kuficha isiyo na maana kwa muda wa dakika chache kutoka kwa mtu anayegeuza;

  • peleka matokeo yaliyodukuliwa kwa ZipInputStream kupata faili ya DEX;

  • hatimaye pakia DEX iliyopatikana kama Rasilimali kwa kutumia njia ya loadDex.

DeGuard inabadilisha mchakato wa kuficha uliofanywa na zana za kuficha za Android. Hii inawezesha uchambuzi wa usalama mwingi, ikiwa ni pamoja na ukaguzi wa nambari na kutabiri maktaba.

Unaweza kupakia APK iliyofichwa kwenye jukwaa lao.

Ni zana ya kufichua android ya jumla. Simplify inakimbia programu ili kuelewa tabia yake na kisha jaribu kuboresha nambari ili iweze kutenda kwa njia ile ile lakini iwe rahisi kwa binadamu kuelewa. Kila aina ya uboreshaji ni rahisi na ya jumla, kwa hivyo haifai ni aina gani maalum ya kuficha inayotumiwa.

APKiD inakupa habari kuhusu jinsi APK ilivyoundwa. Inatambua compilers nyingi, packers, obfuscators, na vitu vingine vya ajabu. Ni PEiD kwa Android.

Mwongozo

Soma mafunzo haya kujifunza mbinu kadhaa za jinsi ya kuficha kwa kawaida

Maabara

AndroL4b ni mashine ya kawaida ya usalama wa Android inayotegemea ubuntu-mate inajumuisha mkusanyiko wa hivi karibuni wa fremu, mafunzo na maabara kutoka kwa mabingwa tofauti wa usalama na watafiti kwa ajili ya uhandisi wa nyuma na uchambuzi wa zisizo.

Marejeo

Bado kujaribu

Jiunge na HackenProof Discord ili kuwasiliana na wadukuzi wenye uzoefu na wawindaji wa tuzo za mdudu!

Machapisho ya Udukuzi Shiriki na maudhui yanayochimba katika msisimko na changamoto za udukuzi

Habari za Udukuzi za Wakati Halisi Kaa hadi sasa na ulimwengu wa udukuzi wenye kasi kupitia habari za wakati halisi na ufahamu

Matangazo ya Karibuni Baki mwelekezwa na tuzo mpya za mdudu zinazoanzishwa na sasisho muhimu za jukwaa

Jiunge nasi kwenye Discord na anza kushirikiana na wadukuzi bora leo!

Jifunze udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks:

Last updated