مرد در وسط – راه بهینه برای ضبط ترافیک HTTP (S) در برنامه های کاربردی پراکسی ناخواسته در iOS

من سعی می کنم ترافیک HTTP (S) را از یک برنامه Xamarin iOS غیر مجاز از طریق پروکسی بیرون بکشم. ابزار فعلی که در دسترس دارم، یک مکینتاش با لینوکس مینت VM، ابزار Xcode و IOS توسعهدهنده iOS، Burp Suite Community Edition، Charles Proxy و Wireshark است.

استراتژی

من از استراتژی های زیر با درجات مختلف موفقیت (اما موفقیت هرگز کامل) تست شده اند:

نرم افزار Burp Suite و چارلز پروکسی

راه اندازی: نرم افزار Burp Suite / چارلز پروکسی در حال اجرا بر روی مک، با CA گواهی پروکسی بر روی دستگاه iOS نصب شده است. دستگاه iOS برای استفاده از پروکسی HTTP پیکربندی شده است.

مشکل: فقط ره درخواستهای خاصی توسط مادری زامارین است از HttpClient API، مانند گوگل آنالیز، است که در تجزیه و تحلیل API علاقه مفید نیست

وایرشارک

راه اندازی شده: دستگاه های iOS اتصال از طریق کابل USB به مک، رابط کاربری شبکه را بر روی مک در هر یک از این راهنما ساخته است تا بتواند بسته های مستقیم را از دستگاه iOS بگذارد و اجازه دهد Wireshark از آن رابط شبکه بخواند.

مشکل: همه درخواست ها HTTPS هستند و نمی توانند رمزگشایی شود

VPN و Burp Suite

راه اندازی: با ساخت یک VPN که دستگاه iOS را متصل می کند، تمام ترافیک از طریق آن VPN و به Burp Suite هدایت می شود. VPN در لینوکس مینت VM با آداپتور شبکه آن بر روی کارت Wi-Fi مابین من نصب شده است.

مشکل: من بخشی از آموزش که VPN VPTP را با Burp Suite توصیف می کند، اما iOS 10 و بالاتر، پشتیبانی را کاهش داده است برای PPTP تلاش برای تکرار با OpenVPN نتیجه های نامطلوب را بدست آورد (پست دیگری در ServerFault در اینجا).

سوال روز

چگونه به طور موثر و (امیدوارم نسبتا راحت) ترافیک HTTP (S) را از برنامه تلفن همراه iOS که نمی کند احترام به تنظیمات پروکسی سیستم؟