تحلیلگر بسته‌ای را دارای چک‌سام بد علامت می‌زند و فایلی که دانلود شده نادرست به نظر می‌رسد، پس این دو مشاهده در یک روایت واحد درباره خرابی در VPN به هم می‌پیوندند. اینها اندازه‌گیری‌های متفاوتی هستند که در نقاط متفاوت انجام شده‌اند. یکی توصیف می‌کند که مکانیزم ضبط پیش از آنکه آداپتور شبکه کارش را تمام کند چه دید؛ دیگری بایت‌هایی را توصیف می‌کند که برنامه ذخیره کرده است. تعیین اینکه کدام‌یک واقعاً تغییر کرده است، تمام تشخیص است.

ضبط نسبت به آداپتور کجا قرار دارد

ضبط بسته، عکسی لحظه‌ای در یک نقطه از مسیری است که چندین تبدیل دارد. میان پشته میزبان و سیم، قطعه‌بندی، محاسبه چک‌سام و در دریافت، ادغام قرار دارند. نقطه ضبط وضعیت همان لحظه را نشان می‌دهد که به‌ندرت با قاب نهایی روی سیم یکسان است. خواندن آن چنان که گویی خود سیم است، همان راهی است که یک فیلد جایگزین به اتهام تبدیل می‌شود.

پس پرسش سودمند درباره هر فیلد مشکوک این نیست که آیا نادرست به نظر می‌رسد، بلکه این است که کجا مشاهده شده است. رابط ضبط، نسخه تحلیلگر و لایه بسته را کنار یافته بنویسید؛ بدون این سه، برچسب چک‌سام اصلاً قابل تفسیر نیست.

بارزدایی ارسال چه بر سر یک ردپا می‌آورد

وقتی بارزدایی چک‌سام ارسال فعال است، آداپتور چک‌سام را محاسبه می‌کند و فیلد را پس از آن پر می‌کند که میزبان بسته را در صف گذاشته است. بنابراین ضبط در سمت میزبان یک جایگزین ثبت می‌کند و تحلیلگر چک‌سامی را گزارش می‌دهد که سیم هرگز آن را حمل نکرده است. بارزدایی قطعه‌بندی نیز اثری مشابه می‌سازد، چون میزبان می‌تواند یک بافر بزرگ به آداپتور بدهد که بعداً به چند قاب تبدیل می‌شود.

مرجع بارزدایی در Wireshark هر دو اثر را توصیف می‌کند و یادآور می‌شود که تشخیص چک‌سام‌های جزئی به نسخه تحلیلگر و نوع بسته بستگی دارد. به همین دلیل یک ابزار ضبط قدیمی‌تر و یک ابزار جدیدتر می‌توانند درباره یک ردپای یکسان اختلاف داشته باشند، در حالی که هر دو آن را درست می‌خوانند.

پوشش‌دهی یک شیء دوم اضافه می‌کند

یک VPN بسته دومی را وارد تصویر می‌کند. رابط تونل بسته درونی را نشان می‌دهد که برنامه واقعاً فرستاده است، در حالی که رابط فیزیکی اتصال بیرونی پوشش‌داده‌شده را نشان می‌دهد که آن را حمل می‌کند. چک‌سام یا طولی که از بسته درونی گرفته شود به قاب بیرونی تعلق ندارد، و مقایسه این دو چنان که گویی یک شیء را توصیف می‌کنند بی‌معناست.

وقتی باید مقایسه کنید، مانند را با مانند مقایسه کنید: درونی با درونی، بیرونی با بیرونی، در همان نقطه از مسیر. یک جفت فیلد ناهمخوان تنها ثابت می‌کند که دو شیء متفاوت اندازه‌گیری شده‌اند. توجه کنید هر ردپا از کدام رابط آمده است، چون ضبط تونلی که پاک به نظر می‌رسد هیچ چیزی درباره آنچه آداپتور منتشر کرده نمی‌گوید.

یکپارچگی فایل را با هش اثبات کنید

برای خود فایل، هش محتوای یک منبع بازتولیدپذیر و نتیجه ذخیره‌شده را محاسبه کنید و خلاصه‌ها را مقایسه کنید. این به پرسشی متفاوت از هر برچسب به‌ازای بسته پاسخ می‌دهد و آن را درباره شیئی پاسخ می‌دهد که واقعاً برای کاربر مهم است.

sha256sum payload.bin
sha256sum /srv/transfer/payload.bin
cmp -l payload.bin /srv/transfer/payload.bin | head

خلاصه‌های برابر پرسش خرابی را برای آن انتقال می‌بندند. خلاصه‌های متفاوت پرسش باریک‌تری را می‌گشایند: زودترین مرحله‌ای را بیابید که بایت‌ها در آن واگرا می‌شوند و بررسی کنید آیا چیزی فایل را عمداً تغییر داده است. ذخیره ناقص، پیوست بازکدگذاری‌شده و صفحه خطای ذخیره‌شده زیر نام فایل مورد انتظار همه بایت‌ها را بدون هیچ نقص شبکه‌ای تغییر می‌دهند.

مسیر یک آداپتور را بدون دائمی کردن آن محلی کنید

برای مشکلی بازتولیدپذیر که از یک داک یا آداپتور پیروی می‌کند، پروفایل VPN، برنامه، شیء آزمون و مقصد را ثابت نگه دارید، سپس انتقال را از یک رابط جایگزین پشتیبانی‌شده تکرار کنید. نتیجه‌ای که با آداپتور تغییر می‌کند خطا را به همان مسیر محدود می‌کند؛ هنوز تنظیمی از درایور را شناسایی نمی‌کند و نقصی در کل مدل را اثبات نمی‌کند.

غیرفعال کردن سراسری بارزدایی آزمونی وسوسه‌انگیز و پیش‌فرضی بد است. تنظیمی در سطح کل میزبان بر ترافیکی بسیار فراتر از آزمایش اثر می‌گذارد و می‌تواند هزینه واقعی عملکرد داشته باشد، پس هر چنین تغییری را موقت بدانید، ثبتش کنید و آن را برگردانید. پیش از نگه داشتن یک راه‌حل موقت قرض‌گرفته از ماشینی دیگر، از تشخیص‌های پشتیبانی‌شده سازنده استفاده کنید.

گزارش باید بگوید کدام یک از سه نتیجه تغییر کرده است: تفسیر تحلیلگر از یک بسته، بایت‌های کامل‌شده برنامه، یا بازتولیدپذیری یک مسیر آداپتور. اینها به سه اقدام بعدی متفاوت می‌رسند و تنها یکی از آنها درباره رمزنگاری است.

مقالات مرتبط