Install Burp Certificate
Kwenye Mashine ya Virtual
Kwanza kabisa unahitaji kupakua cheti cha Der kutoka Burp. Unaweza kufanya hivi katika Proxy --> Chaguo --> Ingiza/Toa cheti cha CA
Toa cheti kwa muundo wa Der na litumie kwenye mfumo ambao Android itaweza kuelewa. Kumbuka kwamba ili kusanidi cheti cha burp kwenye mashine ya Android kwenye AVD unahitaji kuendesha mashine hii na chaguo la -writable-system
.
Kwa mfano unaweza kuendesha kama:
Kisha, configure cheti cha burp kufanya:
Baada ya mashine kukamilisha kuanza upya cheti cha burp kitatumika nayo!
Kutumia Magisc
Ikiwa umefanya root kifaa chako na Magisc (labda emulator), na huwezi kufuata hatua za awali za kusakinisha cheti cha Burp kwa sababu mfumo wa faili ni wa kusoma tu na huwezi kuurudisha kuwa waandishi, kuna njia nyingine.
Iliyoelezwa katika video hii unahitaji:
Sakinisha cheti cha CA: Tu vuta na angusha cheti cha DER cha Burp ukibadilisha kificho kuwa
.crt
kwenye simu ili iwekwe kwenye folda ya Upakuaji na nenda kwaSakinisha cheti
->Cheti cha CA
Hakikisha cheti kimehifadhiwa kwa usahihi kwa kwenda kwa
Imani credentials
->MTUMIAJI
Fanya iwe ya kuaminika kwa Mfumo: Pakua moduli ya Magisc MagiskTrustUserCerts (faili ya .zip), vuta na angusha kwenye simu, nenda kwa programu ya Magics kwenye simu kwenye sehemu ya
Moduli
, bonyezaSakinisha kutoka kwa uhifadhi
, chagua moduli ya.zip
na baada ya kusakinishwa anzisha upya simu:
Baada ya kuanza upya, nenda kwa
Imani credentials
->MFUMO
na hakikisha cheti cha Postswigger kipo hapo
Baada ya Android 14
Katika toleo jipya la Android 14, mabadiliko muhimu yameonekana katika kushughulikia vyeti vya Mamlaka ya Cheti (CA) vilivyothibitishwa na mfumo. Awali, vyeti hivi vilikuwa vimehifadhiwa katika /system/etc/security/cacerts/
, vinavyoweza kufikiwa na kuhaririwa na watumiaji wenye mamlaka ya msingi, ambayo iliruhusu matumizi mara moja kote kwenye mfumo. Hata hivyo, na Android 14, eneo la kuhifadhi limehamishwa kwenda /apex/com.android.conscrypt/cacerts
, saraka ndani ya njia ya /apex
, ambayo ni isiyo ya kubadilika kwa asili.
Jaribio la kuirudisha tena njia ya APEX cacerts kuwa ya kuandishi hukutana na kushindikana, kwani mfumo hauruhusu operesheni kama hizo. Hata jaribio la kufuta au kufunika saraka hiyo na mfumo wa faili wa muda (tmpfs) hauzuili ubadilishaji; programu zinaendelea kupata data ya cheti ya asili bila kujali mabadiliko kwenye kiwango cha mfumo wa faili. Uimara huu unatokana na njia ya /apex
kuwa imewekwa na usambazaji wa KIBINA binafsi, ikihakikisha kuwa mabadiliko yoyote ndani ya saraka ya /apex
hayawaathiri michakato mingine.
Uanzishaji wa Android unajumuisha mchakato wa init
, ambao, baada ya kuanza mfumo wa uendeshaji, pia huanzisha mchakato wa Zygote. Mchakato huu unahusika na kuzindua michakato ya programu na uwanja mpya wa mlima ambao una pamoja na mlima wa binafsi wa /apex
, hivyo kufanya mabadiliko kwenye saraka hii kutengwa na michakato mingine.
Hata hivyo, njia mbadala ipo kwa wale wanaohitaji kuhariri vyeti vya CA vilivyothibitishwa na mfumo ndani ya saraka ya /apex
. Hii inahusisha kuirudisha tena /apex
ili kuondoa usambazaji wa KIBINA, hivyo kuifanya iwe ya kuandishi. Mchakato huu unajumuisha kunakili maudhui ya /apex/com.android.conscrypt
kwenda mahali pengine, kufuta saraka ya /apex/com.android.conscrypt
ili kuondoa kizuizi cha kusoma tu, na kisha kurudisha maudhui kwenye eneo lao la asili ndani ya /apex
. Hatua hii inahitaji hatua za haraka ili kuepuka kuharibika kwa mfumo. Ili kuhakikisha matumizi ya mabadiliko haya kote kwenye mfumo, inashauriwa kuanzisha upya system_server
, ambayo kimsingi inaanzisha upya programu zote na kuleta mfumo katika hali thabiti.
Kufunga kupitia NSEnter
Kuanzisha Directory Inayoweza Kuandikwa: Kwanza, directory inayoweza kuandikwa inaanzishwa kwa kufunga
tmpfs
juu ya directory ya vyeti ya mfumo isiyo-APEX iliyopo. Hii inafanikishwa kwa kutumia amri ifuatayo:
Kujiandaa na Vyeti vya CA: Baada ya kuweka saraka inayoweza kuandikwa, vyeti vya CA ambavyo mtu anapanga kutumia vinapaswa kunakiliwa kwenye saraka hii. Hii inaweza kuhusisha kunakili vyeti vya msingi kutoka
/apex/com.android.conscrypt/cacerts/
. Ni muhimu kurekebisha ruhusa na lebo za SELinux za vyeti hivi kulingana na hali.Bind Mounting kwa Zygote: Kwa kutumia
nsenter
, mtu anaingia kwenye nafasi ya mlima ya Zygote. Zygote, ikiwa ni mchakato unayehusika na kuzindua programu za Android, inahitaji hatua hii ili kuhakikisha kuwa programu zote zinazoanzishwa baadaye zinatumia vyeti vya CA vilivyoconfigure vizuri. Amri inayotumiwa ni:
Hii inahakikisha kwamba kila programu mpya iliyozinduliwa itazingatia usanidi wa vyeti vya CA ulioboreshwa.
Kutekeleza Mabadiliko kwa Programu Zinazoendeshwa: Ili kutumia mabadiliko kwa programu zinazoendeshwa tayari,
nsenter
inatumika tena kuingia kwenye kila anga ya programu kwa kujitegemea na kutekeleza bind mount sawa. Amri inayohitajika ni:
Njia Mbadala - Kuzindua Upya Kwa Programu: Mbinu mbadala inahusisha kufanya bind mount kwenye mchakato wa
init
(PID 1) ikifuatiwa na kuzindua upya laini wa mfumo wa uendeshaji kwa kutumia amri zastop && start
. Mbinu hii itasambaza mabadiliko katika vigezo vyote, ikiepuka haja ya kushughulikia kila programu inayotumika kivyake. Hata hivyo, mbinu hii kwa ujumla hupendelewa kidogo kutokana na usumbufu wa kuzindua upya.
Marejeo
Last updated