موبائل ایپس میں MITM حملے — یہ کیا ہیں، اقسام اور مداخلت سے تحفظ

مصنف: IT Sectr اشاعت: 2026-04-04 مطالعے کا وقت: 10 منٹ

Man-in-the-Middle (MITM) — ایک “درمیان میں موجود شخص” حملہ جس میں حملہ آور دو فریقوں کے درمیان ٹریفک کو ان کی معلومات کے بغیر روکتا ہے، پڑھتا ہے یا تبدیل کرتا ہے۔ Kaspersky، 2025 کے مطابق، پچھلے دو سالوں میں موبائل آلات پر MITM حملوں کی تعداد میں 35% اضافہ ہوا ہے۔ ٹریفک کی مداخلت کا اہم مسئلہ یہ ہے کہ صارف کو حملے کے کوئی نشانات نظر نہیں آتے — کنکشن معمول کا لگتا ہے۔

اہم نکات

  • MITM حملہ — شرکاء کی معلومات کے بغیر ڈیٹا چرانے یا تبدیل کرنے کے لیے کلائنٹ اور سرور کے درمیان مواصلات کی روک تھام۔
  • ARP Spoofing — مقامی نیٹ ورک پر حملہ آور کے آلے کے ذریعے ٹریفک کو ری ڈائریکٹ کرنے کے لیے گیٹ وے MAC ایڈریس کی جعل سازی۔
  • SSL Stripping — پہلی درخواست کو روک کر ایک محفوظ HTTPS کنکشن کو غیر محفوظ HTTP میں تنزلی کرنا۔
  • عوامی Wi-Fi — MITM حملوں کے لیے بنیادی ماحول: غیر محفوظ رسائی پوائنٹس تمام منسلک آلات کے ٹریفک کو روکنے کی اجازت دیتے ہیں۔
  • Certificate Pinning — سب سے مؤثر تحفظ کا طریقہ: ایپ کوڈ کی سطح پر سرور سرٹیفکیٹ کی تصدیق کرتی ہے۔

MITM حملہ کیا ہے؟

Man-in-the-Middle (MITM) ایک قسم کا سائبر حملہ ہے جس میں حملہ آور خفیہ طور پر دو فریقوں کے درمیان مواصلاتی چینل میں گھس جاتا ہے۔ حملہ آور دونوں فریقوں سے پوشیدہ رہتے ہوئے منتقل کردہ ڈیٹا کو روک سکتا ہے، پڑھ سکتا ہے اور تبدیل کر سکتا ہے۔

موبائل ایپس میں، MITM حملے خاص طور پر خطرناک ہوتے ہیں کیونکہ آلات مسلسل مختلف نیٹ ورکس سے جڑتے ہیں — گھر، دفتر، کیفے اور ہوائی اڈوں میں عوامی Wi-Fi۔ ہر نیٹ ورک سوئچ ممکنہ طور پر حملے کے لیے ایک موقع پیدا کرتا ہے۔ Verizon Mobile Security Index (2025) کے مطابق، 43% تنظیموں نے کم از کم ایک بار کارپوریٹ موبائل آلات پر MITM حملوں کا سامنا کیا ہے۔

MITM کا اہم خطرہ چھپاؤ ہے: صارف اور سرور کو مداخلت کے کوئی سگنل نہیں ملتے۔ سیشن معمول کا لگتا ہے، ڈیٹا منتقل ہوتا ہے، کوئی سرٹیفکیٹ خرابی نہیں ہوتی (اگر حملہ آور اپنا سرٹیفکیٹ استعمال کرتا ہے)۔ حملے کا پتہ صرف نیٹ ورک کے بنیادی ڈھانچے کی سطح پر یا خصوصی آلات سے لگایا جا سکتا ہے۔

ڈویلپر کو MITM حملوں کے میکانزم کو سمجھنے کی ضرورت ہے تاکہ ایپلیکیشن کی سطح پر تحفظ ڈیزائن کیا جا سکے، بجائے اس کے کہ صرف ٹرانسپورٹ پرت کی حفاظت پر انحصار کیا جائے۔

MITM حملوں کی اہم اقسام

MITM حملوں کی درجہ بندی میں کئی اقسام شامل ہیں جو مواصلاتی چینل میں گھسنے کے طریقہ کار میں مختلف ہوتی ہیں۔ موبائل ڈیولپمنٹ میں، تین اقسام سب سے زیادہ متعلقہ ہیں۔

مقامی نیٹ ورک میں ARP Spoofing

ARP Spoofing ایک تکنیک ہے جس میں حملہ آور مقامی نیٹ ورک پر جعلی ARP پیکٹ بھیجتا ہے، اپنے MAC ایڈریس کو گیٹ وے IP ایڈریس سے منسلک کرتا ہے۔ اس کے بعد، متاثرہ کا تمام ٹریفک حملہ آور کے آلے کے ذریعے روٹ کیا جاتا ہے، جو پوشیدہ رہتے ہوئے اسے گیٹ وے کو فارورڈ کرتا ہے۔

حملہ کرنے کے لیے Ettercap یا BetterCAP جیسے اوزار کافی ہیں، جو ARP اسپوفنگ کو خودکار کرتے ہیں۔ حملہ صرف ایک سب نیٹ کے اندر ممکن ہے، جس سے عوامی Wi-Fi نیٹ ورکس کے صارفین سب سے زیادہ خطرے میں ہوتے ہیں۔ منظم سوئچز پر Dynamic ARP Inspection (DAI) والے جدید نیٹ ورک اس قسم کے حملے کو روکتے ہیں۔

ARP Spoofing سے ایپلیکیشن کی سطح پر تحفظ ممکن نہیں ہے — یہ نیٹ ورک کے بنیادی ڈھانچے کا مسئلہ ہے۔ تاہم، ایپلیکیشن iOS کے لیے TrustKit یا Android کے لیے Network Security Config جیسی لائبریریوں کا استعمال کرکے نیٹ ورک کنیکٹیویٹی میں بے ضابطگیوں کا پتہ لگا سکتی ہے۔

DNS Spoofing اور ٹریفک کی مداخلت

DNS Spoofing (یا DNS کیش پوائزننگ) کلائنٹ سے DNS سرور کے راستے میں DNS ریکارڈز کی تبدیلی ہے۔ حملہ آور ایپلیکیشن کی DNS درخواست کو روکتا ہے اور جعلی IP ایڈریس واپس کرتا ہے، ٹریفک کو جائز سرور کی بجائے اپنے سرور پر ری ڈائریکٹ کرتا ہے۔

یہ حملہ عوامی نیٹ ورکس میں خاص طور پر مؤثر ہے جہاں DNS سرور DHCP کے ذریعے خود بخود تفویض کیا جاتا ہے۔ حملہ آور اپنا DNS سرور ترتیب دے سکتا ہے جو ہدف والے ڈومینز کے لیے جعلی IP ایڈریس واپس کرتا ہے۔ صارف براؤزر میں ایک جائز URL دیکھتا ہے لیکن حملہ آور کے سرور سے جڑتا ہے۔

DNS Spoofing سے ایپلیکیشن کی طرف تحفظ DNS-over-HTTPS (DoH) یا DNS-over-TLS (DoT) کے ذریعے لاگو کیا جاتا ہے، جو DNS استفسارات کو خفیہ کرتے ہیں۔ Android 9+ اور iOS 14+ سسٹم لیول DoH کو سپورٹ کرتے ہیں، اور ایپلیکیشن واضح طور پر اس آپشن کو فعال کر سکتی ہے۔

SSL Stripping — HTTPS کو نظرانداز کرنا

SSL Stripping ایک حملہ ہے جس میں حملہ آور ایک محفوظ HTTPS کنکشن کو غیر محفوظ HTTP میں تنزلی کرتا ہے۔ یہ تکنیک اس حقیقت کا فائدہ اٹھاتی ہے کہ بہت سے صارفین https://example.com کی بجائے دستی طور پر example.com ٹائپ کرتے ہیں، اور پہلا کنکشن HTTP کے ذریعے قائم ہوتا ہے۔

sslstrip (Moxie Marlinspike، 2009) اور bettercap جیسے اوزار خود بخود HTTP درخواستوں کو روکتے ہیں، اپنی طرف سے سرور کے ساتھ HTTPS کنکشن قائم کرتے ہیں، اور ڈیکرپٹ شدہ ٹریفک کو HTTP کے ذریعے کلائنٹ کو منتقل کرتے ہیں۔ براؤزر لاک آئیکن نہیں دکھاتا — صارف کو معلوم نہیں ہوتا کہ کنکشن محفوظ نہیں ہے۔

جدید تحفظ — HTTP Strict Transport Security (HSTS): سرور براؤزر کو مطلع کرتا ہے کہ تمام مستقبل کے کنکشن صرف HTTPS کے ذریعے ہونے چاہئیں۔ HSTS Preload List پہلے حملے سے بھی بچاتی ہے، لیکن اس کے لیے ڈومین کی پیشگی رجسٹریشن کی ضرورت ہوتی ہے۔

موبائل ایپس میں MITM حملہ کیسے کام کرتا ہے

موبائل ایپ پر ایک عام MITM حملہ چار مراحل سے گزرتا ہے۔ ہر مرحلہ مختلف کمزوریوں کا استحصال کرتا ہے، اور مکمل تحفظ کے لیے تمام ویکٹرز کا احاطہ کرنا ضروری ہے۔

پہلا مرحلہ — گھساؤ: حملہ آور ڈیوائس اور سرور کے درمیان ٹریفک کے راستے میں آجاتا ہے۔ یہ مقامی نیٹ ورک میں ARP Spoofing، جعلی Wi-Fi رسائی پوائنٹ (Evil Twin)، یا فراہم کنندہ کے DNS سرور سے سمجھوتہ ہو سکتا ہے۔ موبائل آلات کھلے نیٹ ورکس سے خود بخود جڑنے پر خاص طور پر خطرے میں ہوتے ہیں۔

دوسرا مرحلہ — مداخلت: گھساؤ کے بعد، حملہ آور ایپ اور سرور کے درمیان تبادلہ ہونے والے تمام پیکٹوں کو پڑھنا شروع کرتا ہے۔ اس مرحلے پر، یہ میٹا ڈیٹا جمع کرتا ہے: درخواست URLs، پیکٹ سائز، کوکیز، ہیڈر۔ یہاں تک کہ اگر ڈیٹا خفیہ ہے، میٹا ڈیٹا ایپلیکیشن کی ساخت اور کاروباری منطق کو ظاہر کر سکتا ہے۔

تیسرا مرحلہ — ڈیکرپشن (اگر ٹریفک خفیہ ہے): حملہ آور دو TLS کنکشن قائم کرتا ہے — ایک سرور کے ساتھ (جعلی سرٹیفکیٹ استعمال کرکے)، دوسرا کلائنٹ کے ساتھ۔ ایپ کنکشن کو محفوظ سمجھتی ہے، لیکن حملہ آور تمام ڈیٹا کو سادہ متن میں دیکھتا ہے۔ Certificate Pinning کے بغیر، یہ سسٹم اسٹور میں انسٹال کردہ کسی بھی سرٹیفکیٹ کے لیے کام کرتا ہے۔

چوتھا مرحلہ — تبدیلی اور نکالنا: حملہ آور نہ صرف پڑھ سکتا ہے بلکہ منتقل کردہ ڈیٹا کو تبدیل بھی کر سکتا ہے۔ مالیاتی ایپس میں، اس کا مطلب وصول کنندہ کے اکاؤنٹ نمبر کو تبدیل کرنا ہو سکتا ہے؛ API درخواستوں میں، اجازت کے پیرامیٹرز کو تبدیل کرنا۔ iOS اور Android ایپلیکیشن کی سطح پر جواب کی سالمیت کی جانچ لاگو کرنے کی تجویز کرتے ہیں۔

کوڈ مثالیں: Android اور iOS پر مداخلت سے تحفظ

آئیے Kotlin اور Swift میں Certificate Pinning کا استعمال کرتے ہوئے MITM حملوں سے تحفظ کی عملی مثالیں دیکھتے ہیں۔ یہ مثالیں سسٹم اسٹور سے سمجھوتہ ہونے پر بھی سرٹیفکیٹ کی تبدیلی کو روکتی ہیں۔

Android پر Certificate Pinning (OkHttp)

OkHttp Android کے لیے معیاری HTTP لائبریری ہے جو CertificatePinner کو سپورٹ کرتی ہے۔ اپنے سرور کے سرٹیفکیٹ کا SHA-256 ہیش بتائیں — کوئی بھی دوسرا سرٹیفکیٹ مسترد کر دیا جائے گا۔

kotlin
import okhttp3.CertificatePinner
import okhttp3.OkHttpClient

val certificatePinner = CertificatePinner.Builder()
    .add(
        "api.example.com",
        "sha256/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
    )
    .build()

val client = OkHttpClient.Builder()
    .certificatePinner(certificatePinner)
    .build()

iOS پر Certificate Pinning (URLSession)

iOS پر، سرور سرٹیفکیٹ کو دستی طور پر تصدیق کرنے کے لیے URLSessionDelegate استعمال کریں۔ SecCertificateRef کا موازنہ مقامی طور پر ذخیرہ کردہ کاپی سے کریں۔

swift
class SessionDelegate: NSObject, URLSessionDelegate {
    func urlSession(
        _ session: URLSession,
        didReceive challenge: URLAuthenticationChallenge,
        completionHandler: @escaping (
            URLSession.AuthChallengeDisposition,
            URLCredential?
        ) -> Void
    ) {
        guard let serverTrust = challenge.protectionSpace
            .serverTrust else { return }

        let pinnedCert = SecCertificateCreateWithData(
            nil,
            pinnedCertData as CFData
        )

        let serverCerts = (0..<SecTrustGetCertificateCount(serverTrust))
            .compactMap { SecTrustGetCertificateAtIndex(serverTrust, $0) }

        if serverCerts.contains { CFEqual($0, pinnedCert) } {
            completionHandler(.useCredential, URLCredential(trust: serverTrust))
        } else {
            completionHandler(.cancelAuthenticationChallenge, nil)
        }
    }
}

Android پر Network Security Config

Android network_security_config.xml فائل کے ذریعے اعلانیہ تحفظ کو سپورٹ کرتا ہے، جو کوڈ لکھے بغیر OS کی سطح پر ٹریفک کو روکتا ہے۔

xml
<!-- network_security_config.xml -->
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="false">
        <domain includeSubdomains="true">api.example.com</domain>
        <pin-set expiration="2027-07-01">
            <pin digest="SHA-256">AAAAAAAAAAAAAAAAAAAAAAAAAAAA</pin>
        </pin-set>
    </domain-config>
</network-security-config>

موبائل ایپس کو MITM سے بچانے کے طریقے

MITM حملوں سے جامع تحفظ میں ایپلیکیشن، سرور اور نیٹ ورک کے بنیادی ڈھانچے کی سطح پر اقدامات شامل ہیں۔ ذیل میں Android اور iOS کے لیے اہم سفارشات ہیں۔

Certificate Pinning استعمال کریں — ایپلیکیشن کوڈ میں سرور سرٹیفکیٹ کو باندھنا۔ معیاری TLS تصدیق کے برعکس، جو سسٹم اسٹور سے کسی بھی سرٹیفکیٹ پر بھروسہ کرتی ہے، Certificate Pinning ایک مخصوص سرٹیفکیٹ یا اس کی عوامی کلید کو چیک کرتا ہے۔ Android پر OkHttp اور iOS پر TrustKit اس میکانزم کے تیار شدہ نفاذ فراہم کرتے ہیں۔

HTTPS اور HSTS کو لازمی بنائیں: تمام نیٹ ورک درخواستیں HTTPS کے ذریعے جانی چاہئیں، اور سرور کو Strict-Transport-Security ہیڈر واپس کرنا چاہیے۔ Android کے لیے، مینی فیسٹ میں android:usesCleartextTraffic="false" شامل کریں — یہ OS کی سطح پر HTTP کنکشن کو روکتا ہے۔ iOS iOS 9 سے App Transport Security (ATS) کے ذریعے ڈیفالٹ طور پر HTTP کو روکتا ہے۔

جواب کی سالمیت کی جانچ لاگو کریں: سرور کے جوابات کو ڈیجیٹل دستخط سے دستخط کریں جسے ایپ تصدیق کرتی ہے۔ یہاں تک کہ اگر حملہ آور HTTPS ٹریفک کو روکتا ہے (پراکسی کے ذریعے سرٹیفکیٹ دوبارہ انسٹال کرکے)، وہ سرور کی نجی کلید کے بغیر دستخط جعلی نہیں بنا سکتا۔ اہم کارروائیوں کے لیے RS256 یا HMAC دستخطوں والا JWT استعمال کریں۔

سرور کی طرف، HTTP Public Key Pinning (HPKP) کو فعال کریں — ایک ہدایت جو براؤزر یا ایپ کو بتاتی ہے کہ کسی مخصوص ڈومین کے لیے کون سا سرٹیفکیٹ درست سمجھا جائے۔ تاہم، HPKP میں احتیاط کی ضرورت ہے: غلط ترتیب طویل عرصے کے لیے ایپلیکیشن تک رسائی کو روک سکتی ہے۔ Google صرف بیک اپ سرٹیفکیٹس کے ساتھ HPKP استعمال کرنے کی تجویز کرتا ہے۔

NIST SP 800-52 Rev. 2 (2024) کے مطابق، TLS 1.3، Certificate Pinning اور HSTS کا امتزاج موبائل ایپس پر 99% معروف MITM حملہ ویکٹرز کو ختم کرتا ہے۔ ڈویلپرز کو مشورہ دیا جاتا ہے کہ وہ ایپلیکیشن شائع کرنے سے پہلے mitmproxy جیسے آلات سے تحفظ کی جانچ کریں۔

اکثر پوچھے گئے سوالات

میں کیسے جان سکتا ہوں کہ مجھ پر MITM کے ذریعے حملہ ہو رہا ہے؟

MITM حملے کی علامات میں اچانک کنکشن سست ہونا، ناقابل بھروسہ سرٹیفکیٹ کے بارے میں انتباہ (جو پہلے نہیں تھے)، URL اور صفحہ کے مواد کے درمیان عدم مطابقت شامل ہے۔ موبائل ایپس میں — Network Security Config کی خرابیاں یا Certificate Pinning کا فعال ہونا۔

کیا VPN MITM حملوں سے بچا سکتا ہے؟

VPN ٹریفک کو VPN سرور تک خفیہ کرتا ہے، جو مقامی نیٹ ورک پر مداخلت سے بچاتا ہے۔ تاہم، VPN حفاظت نہیں کرتا اگر حملہ آور VPN سرور کو کنٹرول کرتا ہے، یا اگر MITM حملہ فراہم کنندہ کی طرف سے ہوتا ہے۔ ایپلیکیشن کی سطح پر Certificate Pinning زیادہ قابل اعتماد طریقہ ہے۔

Evil Twin حملہ کیا ہے اور یہ MITM سے کیسے مختلف ہے؟

Evil Twin ایک جعلی Wi-Fi رسائی پوائنٹ ہے جو جائز نیٹ ورک (مثلاً “Airport_Free_WiFi”) کی نقل کرتا ہے۔ یہ MITM کی علیحدہ قسم نہیں بلکہ گھساؤ کا ایک طریقہ ہے: Evil Twin سے جڑ کر، صارف خود بخود MITM حملے کا شکار ہو جاتا ہے، کیونکہ تمام ٹریفک حملہ آور کے ذریعے گزرتی ہے۔

Certificate Pinning ایپ کے کام کو کیسے متاثر کرتا ہے؟

Certificate Pinning حفاظت کو بہتر بناتا ہے لیکن سرور سرٹیفکیٹ تبدیل ہونے پر ایپ کو اپ ڈیٹ کرنے کی ضرورت ہوتی ہے۔ ایک نہیں بلکہ متعدد بیک اپ سرٹیفکیٹ (backup pins) بتانے کی سفارش کی جاتی ہے۔ جب بنیادی سرٹیفکیٹ ختم ہو جاتا ہے، تو ایپ اپ ڈیٹ کی ضرورت کے بغیر بیک اپ استعمال کرے گی۔

ہیکرز MITM حملوں کے لیے کون سے اوزار استعمال کرتے ہیں؟

سب سے مشہور اوزار: mitmproxy — HTTP/HTTPS ٹریفک کی روک تھام اور تبدیلی، BetterCAP — ARP اسپوفنگ اور مقامی نیٹ ورک میں روک تھام، Wireshark — پیکٹ تجزیہ، sslstrip — HTTPS سے HTTP میں تنزلی۔ ان آلات کا علم ڈویلپرز کو اپنی ایپلیکیشن کی حفاظت کی جانچ کرنے میں مدد کرتا ہے۔

خلاصہ

  • MITM حملہ — کلائنٹ اور سرور کے درمیان ٹریفک کی خفیہ روک تھام، جو فریقین کی معلومات کے بغیر ڈیٹا پڑھنے اور تبدیل کرنے کی اجازت دیتی ہے۔
  • ARP Spoofing مقامی نیٹ ورک پر گیٹ وے MAC ایڈریس کی جعل سازی کرکے حملہ آور کے ذریعے ٹریفک کو ری ڈائریکٹ کرتا ہے۔
  • DNS Spoofing DNS ریکارڈز کو تبدیل کرتا ہے، ٹریفک کو جعلی سرور پر ری ڈائریکٹ کرتا ہے؛ تحفظ — DNS-over-HTTPS۔
  • SSL Stripping HTTPS کو HTTP میں تنزلی کرتا ہے، HSTS اور مینی فیسٹ میں HTTP ٹریفک کو روک کر روکا جاتا ہے۔
  • Certificate Pinning — ایپلیکیشن سطح کا بنیادی تحفظ کا طریقہ، OkHttp (Android) اور URLSession (iOS) کے ذریعے دستیاب ہے۔
  • TLS 1.3، HSTS اور Certificate Pinning کا امتزاج NIST کے مطابق MITM حملہ ویکٹرز کے 99% کو ختم کرتا ہے۔
  • تحفظ کی جانچ mitmproxy اور BetterCAP کے ساتھ اشاعت سے پہلے حساس ڈیٹا کے ساتھ کام کرنے والی ایپلیکیشنز کے لیے لازمی ہے۔

ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے

IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔

پروجیکٹ پر بحث کریں

مزید پڑھیں