
أداة مساعدة بسيطة لالتقاط حركة مرور HTTP/HTTPS المفكوكة التشفير على جهاز macOS/iOS (سواء كان مكسور الحماية أم لا)
أداة مساعدة بسيطة بلغة بايثون الخالصة لالتقاط حركة مرور HTTP/HTTPS المفكوكة التشفير والمسجَّلة بواسطة إحدى واجهات برمجة التطبيقات (APIs) لدى Apple التي ليست موثّقة جيدًا.
python3 -m pip install -U harlogger
تنطبق هذه الطريقة على profile الخاص بـ CFNetwork من Apple. هذا الـ profile مخصص لتصحيح أخطاء العمليات التي تستخدم إطار عمل CFNetwork. لا تتضمن هذه الطريقة جسم الطلب/الاستجابة.
نزّل profile الخاص بـ CFNetwork لنظام macOS من Apple:
ثبّته بالنقر المزدوج
هذا كل شيء! :) يمكنك الآن البدء في التقاط كل شيء باستخدام:
python3 -m harlogger profile
تنطبق هذه الطريقة على profile الخاص بـ CFNetwork من Apple. هذا الـ profile مخصص لتصحيح أخطاء العمليات التي تستخدم إطار عمل CFNetwork. لا تتضمن هذه الطريقة جسم الطلب/الاستجابة.
نزّل profile الخاص بـ CFNetwork لنظام iOS من Apple:
ثبّته بأي طريقة تفضّلها. أنا أستخدم pymobiledevice3:
# if you don't already have it
python3 -m pip install -U pymobiledevice3
# install the profile
pymobiledevice3 profile install CFNetworkDiagnostics.mobileconfig
هذا كل شيء! :) يمكنك الآن البدء في التقاط كل شيء باستخدام:
python3 -m harlogger mobile profile
يجب أن يبدو الناتج هكذا:
➜ harlogger git:(master) ✗ python3 -m harlogger profile
➡️️ POST https://www.bing.com/fd/ls/lsp.aspx HTTP/1.1
Accept: */*
Content-Type: text/xml
Origin: https://www.bing.com
Accept-Encoding: gzip, deflate, br
Cookie: SRCHHPGUSR=CW=414&CH=622&SW=414&SH=736&DPR=3&UTC=180&DM=1&SRCHLANG=en&HV=1634801804; _HPVN=CS=eyJQbiI6eyJDbiI6MiwiU3QiOjAsIlFzIjowLCJQcm9kIjoiUCJ9LCJTYyI6eyJDbiI6MiwiU3QiOjAsIlFzIjowLCJQcm9kIjoiSCJ9LCJReiI6eyJDbiI6MiwiU3QiOjAsIlFzIjowLCJQcm9kIjoiVCJ9LCJBcCI6dHJ1ZSwiTXV0ZSI6dHJ1ZSwiTGFkIjoiMjAyMS0xMC0yMVQwMDowMDowMFoiLCJJb3RkIjowLCJEZnQiOm51bGwsIk12cyI6MCwiRmx0IjowLCJJbXAiOjEwfQ==; SUID=M; _EDGE_S=SID=1BF42681120765EF1EA73656137A640E; _SS=SID=1BF42681120765EF1EA73656137A640E; MUID=1B0D347B85756FDD055524B284086E36; SRCHD=AF=NOFORM; SRCHUID=V=2&GUID=5B989717430E450D9314C927C97602C9&dmnchg=1; SRCHUSR=DOB=20211007; _EDGE_V=1; MUIDB=1B0D347B85756FDD055524B284086E36
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 14_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Mobile/15E148 Safari/604.1
Referer: https://www.bing.com/
Content-Length: 458
Accept-Language: en-us
⬅️ HTTP/2.0 204 (request POST https://www.bing.com/fd/ls/lsp.aspx HTTP/1.1)
x-msedge-ref: Ref A: E5B5AE34FBA148E6BDFFBF421B940462 Ref B: VIEEDGE1816 Ref C: 2021-10-21T07:36:44Z
Date: Thu, 21 Oct 2021 07:36:44 GMT
x-cache: CONFIG_NOCACHE
Access-Control-Allow-Origin: *
تحتوي أجهزة iOS 14.x على ميزة مخفية لالتقاط حركة مرور HTTP/HTTPS المفكوكة التشفير من جميع العمليات التي تستخدم إطار عمل
CFNetwork وتحويلها إلى صيغة HAR
لتفعيل هذه الميزة على جهاز مخترق (jailbroken)، يمكنك ببساطة وضع الإعدادات الصحيحة
لـ com.apple.CFNetwork وتشغيل الإشعار com.apple.CFNetwork.har-capture-update.
تتضمن هذه الطريقة جسم الطلب/الاستجابة أيضًا.
لا تحتوي أجهزة iOS 13.x أو الأقدم على هذه الميزة.
/var/mobile/Library/Preferences/python3 -m harlogger preference
يجب أن يبدو الناتج هكذا:
➜ harlogger git:(master) ✗ python3 -m harlogger mobile preference
➡️ CFNetwork(1140) POST https://www.bing.com/fd/ls/lsp.aspx
POST /fd/ls/lsp.aspx HTTP/2.0
Accept: */*
Content-Type: text/plain
Origin: https://www.bing.com
Cache-Control: max-age=0
Content-Length: 472
Accept-Language: en-us
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 14_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Mobile/15E148 Safari/604.1
Accept-Encoding: gzip, deflate, br
Referer: https://www.bing.com/
⬅️ CFNetwork(1140) 0
➡️ CFNetwork(1140) POST https://www.bing.com/fd/ls/lsp.aspx
POST /fd/ls/lsp.aspx HTTP/2.0
Accept: */*
Content-Type: text/xml
Origin: https://www.bing.com
Content-Length: 378
Accept-Language: en-us
Host: www.bing.com
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 14_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Mobile/15E148 Safari/604.1
Referer: https://www.bing.com/
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
<ClientInstRequest><Events><E><T>Event.ClientInst</T><IG>EB94C422BC394F90A876D39A790BECBC</IG><TS>1634801882467</TS><D><![CDATA[[{"T":"CI.BoxModel","FID":"CI","Name":"v2.8","SV":"4","P":{"C":1,"N":5,"I":"5iv","S":"V","M":"V+L+M+MT+E+N+C+K+BD","T":1669960,"F":0},"V":"zrpx/////////visible/+zryw/////////hidden/@p"}]]]></D></E></Events><STS>1634801882467</STS></ClientInstRequest>
بدءًا من iOS 15.0، سيتطلب الجهاز أن يمتلك العملية الهدف أيًا من المتطلبات التالية:
com.apple.private.cfnetwork.har-capture-delegationget-task-allowcom.apple.security.get-task-allowdebugمن أجل جعل الجهاز يمكّن تسجيل HAR يمكنك
استخدام pymobiledevice3 على النحو التالي:
python3 -m pymobiledevice3 developer dvt har
يمكنك الآن بدء التنصت باستخدام طريقة التفضيل:
python3 -m harlogger preference