المقدمة
يصف هذا وثيقة كيف ال cisco يأمن زبون (CSC) (سابقا AnyConnect) يأمن مدخل ويب (SWG) وحدة نمطية ال يشكل مجال خارجي قائمة ميلان إلى جانب التأثيرات من هذا.
ملاحظة: أعلنت Cisco عن نهاية العمر الافتراضي ل Cisco AnyConnect في عام 2023 والعميل المتجول Umbrella في عام 2024. يستفيد العديد من عملاء Cisco Umbrella بالفعل من الترحيل إلى عميل Cisco الآمن، ويتم تشجيعك لبدء الترحيل في أقرب وقت ممكن للحصول على تجربة تجوال أفضل. اقرأ المزيد في مقالة قاعدة المعارف هذه: كيف يمكنني تثبيت Cisco Secure Client باستخدام الوحدة النمطية Umbrella؟
نظرة عامة
تقبل قائمة مجالات Cisco الخارجية المظلة كلا من المجالات وعناوين IP. ومع ذلك، في كلتا الحالتين، يمكن لوحدة CSC SWG النمطية تطبيق قرار الاستثناء فقط استنادا إلى عنوان IP.
على مستوى عال، تكون الآلية التي تستخدمها وحدة SWG النمطية لتعريف حركة مرور البيانات إلى المجالات في قائمة المجالات الخارجية كما يلي:
- تقوم الوحدة النمطية SWG بمراقبة عمليات بحث DNS من جهاز العميل لتحديد عمليات البحث عن المجالات في قائمة المجالات الخارجية
- تتم إضافة هذه المجالات وعناوين IP المطابقة لها إلى ذاكرة تخزين مؤقت DNS محلية
- ويتم بعد ذلك تطبيق القرار بتجاوز SWG على أي حركة مرور موجهة إلى IP يماثل مجال خارجي ضمن ذاكرة التخزين المؤقت DNS المحلي. لا يستند القرار إلى المجال المستخدم ضمن طلب HTTP.
لماذا تعمل بهذه الطريقة؟
تعمل وحدة CSC SWG النمطية في الطبقة 3/Layer4، على هذا النحو، فإنها تحتوي فقط على إمكانية رؤية في رؤوس TCP/IP التي تخزن تفاصيل الاتصال ذو 5 مجموعات (DestinationIP:Port، SourceIP:Port and Protocol) والتي يمكنها تأسيس قواعد تجاوز حركة المرور الخاصة بها.
لذلك، بالنسبة للتجاوزات المستندة إلى المجال، يتطلب CSC SWG طريقة لترجمة المجالات في القائمة إلى عناوين IP والتي يمكن بعد ذلك مطابقتها لحركة مرور البيانات على جهاز العميل. لهذه الغاية، تقوم بإنشاء ذاكرة التخزين المؤقت ل DNS من عمليات بحث DNS التي تم إرسالها من العميل، تقوم ذاكرة التخزين المؤقت ل DNS بسرد عنوان IP المطابق للمجالات الموجودة في قائمة المجالات الخارجية
يتم بعد ذلك تطبيق القرار بتجاوز SWG على حركة مرور البيانات التي تم اعتراضها (بشكل افتراضي 80/443) الموجهة إلى عناوين IP هذه.
لماذا يهمني هذا؟
وهناك عدد من القضايا المشتركة التي قد يسببها هذا:
- بافتراض أن قرار الالتفاف يعتمد في نهاية المطاف على IP، يتم أيضا تجاوز حركة مرور المجالات الأخرى التي تشترك في ال نفسه IP من Cisco Umbrella، مما ينتج عنه أن يراقب العميل تسجيل حركة مرور غير متوقع من العميل مباشرة وليس لديه سياسة SWG مطبقة أو ظاهرة في البحث عن النشاط.
- إذا لم تتمكن وحدة SWG النمطية لأي سبب من رؤية البحث عن DNS للمجال (كما هو الحال في ذلك، هناك إدخال مضيف محلي للمجال)، فلن تتم إضافة IP إلى ذاكرة التخزين المؤقت، وبالتالي يتم إرسال حركة مرور البيانات بشكل غير متوقع إلى SWG.
ملاحظة: يراقب برنامج تشغيل KDF عمليات بحث UDP DNS فقط. إذا تم إجراء بحث DNS عبر TCP لأي سبب، فلن تتم إضافة IP إلى ذاكرة التخزين المؤقت ولن يتم تطبيق المجال الخارجي. يتم نشر هذا في البحث عن الأخطاء من Cisco.
ملاحظة: لقد أصلحنا مشكلة مع المجالات الخارجية لوحدة SWG التي تنتقل إلى Umbrella عند حل DNS عبر TCP (CSCwe48679
) (Windows و MacOS) في Cisco Secure Client 5.1.4.74 (MR4)
كيف يمكنني أستكشاف أخطاء هذه العملية وإصلاحها؟
يمكن اتباع عملية وحدة SWG النمطية التي تراقب عمليات بحث DNS، وإضافة إدخالات إلى ذاكرة التخزين المؤقت ل DNS، وتطبيق عملية الالتفاف على حركة المرور الموجهة ل IPs في سجلات KDF. يتطلب ذلك أن يكون تسجيل KDF متاحا ويمكن تمكينه فقط لفترة قصيرة أثناء أستكشاف الأخطاء وإصلاحها بسبب اتساع السجلات.
مثال مدخلات سجل KDF
بحث DNS عن مجال تتم إضافته إلى ذاكرة التخزين المؤقت ل DNS:
00000283 11.60169029 acsock 11:34:57.9474385 (CDnsCachePluginImp::notify_recv): acquired safe buffer for DNS payload of size 126
00000284 11.60171318 acsock 11:34:57.9474385 (CDnsCacheMgr::AddResponseToCache): add to cache (www.club386.com, type=1, server=192.168.1.1, 3 addresses, TTL=300) - currently 41 entries
00000285 11.60171986 acsock 11:34:57.9474385 (CDnsCacheMgr::addToCacheByAddr): Added entry to cache by address (172.67.68.109, id = 83). Current count: 83
00000286 11.60172462 acsock 11:34:57.9474385 (CDnsCacheMgr::addToCacheByAddr): Added entry to cache by address (104.26.6.122, id = 84). Current count: 84
00000287 11.60172939 acsock 11:34:57.9474385 (CDnsCacheMgr::addToCacheByAddr): Added entry to cache by address (104.26.7.122, id = 85). Current count: 85
00000288 11.60173225 acsock 11:34:57.9474385 (CDnsCacheMgr::addToCache): Added entry (www.club386.com, id = 42). Current count: 42
00000289 11.60173607 acsock 11:34:57.9474385 (CDnsCacheMgr::AddResponseToCache): add to cache (www.club386.com - 1 - 192.168.1.1) - complete, stats/listing next
تمت ملاحظة اتصال HTTPS، المجال ليس على قائمة المجالات الخارجية، الطلب يرسل عبر SWG:
00000840 10.69207287 acsock 12:13:50.0741618 (CNvmPlugin::notify_bind): called
00000841 10.69207764 acsock 12:13:50.0741618 (CNvmPlugin::notify_bind): nvm: cookie 0x0000000000000000: laddr 127.0.0.1, lport 61844
00000842 10.69208336 acsock 12:13:50.0741618 (CSocketScanSafePluginImp::notify_bind): websec cookie FFFFD30F9EEC71B0: lsockaddr [127.0.0.1]:61844
00000843 10.69208908 acsock 12:13:50.0741618 (COpenDnsPluginImp::notify_bind): opendns cookie FFFFD30F9EEC75A0: lsockaddr [127.0.0.1]:61844
00000844 10.69209576 acsock 12:13:50.0741618 (CNvmPlugin::notify_send): nvm: cookie 0000000000000000: paddr 127.0.0.1, pport 5002
00000845 10.69211483 acsock 12:13:50.0741618 (CDnsCacheMgr::GetAllDomainNamesByIpAddr): lookupAll by address 104.26.8.109: found domain name www.ipchicken.com
00000846 10.69221306 acsock 12:13:50.0741618 (CSocketMultiplexor::notify_stream_v4): recv: protocol 6, laddr 127.0.0.1, lport 5002, paddr 127.0.0.1, pport 61844
00000847 10.69222069 acsock 12:13:50.0741618 (CNvmPlugin::notify_recv): nvm: cookie 0000000000000000: paddr 127.0.0.1, pport 61844
تم ملاحظة اتصال HTTPS، إدخال ل IP موجود في ذاكرة التخزين المؤقت، تم تطبيق إجراء تجاوز:
00003163 9.63360023 acsock 15:33:48.7197706 (CNvmPlugin::notify_bind): called
00003164 9.63360405 acsock 15:33:48.7197706 (CNvmPlugin::notify_bind): nvm: cookie 0x0000000000000000: laddr 0.0.0.0, lport 58301
00003165 9.63360882 acsock 15:33:48.7197706 (CSocketScanSafePluginImp::notify_bind): websec cookie FFFF8C02C8FAF590: lsockaddr [0.0.0.0]:58301
00003166 9.63361359 acsock 15:33:48.7197706 (COpenDnsPluginImp::notify_bind): opendns cookie FFFF8C02C8FAF9F0: lsockaddr [0.0.0.0]:58301
00003167 9.63364792 acsock 15:33:48.7197706 (CNvmPlugin::notify_connect): called
00003168 9.63365269 acsock 15:33:48.7197706 (CNvmPlugin::notify_connect): nvm: cookie 0x0000000000000000: paddr 13.225.78.31, pport 443
00003169 9.63366127 acsock 15:33:48.7197706 (CSocketScanSafePluginImp::notify_connect): websec cookie FFFF8C02C8FAF590: lsockaddr [0.0.0.0]:58301, psockadd [13.225.78.31]:443, pid 6404, proto 6
00003170 9.63367081 acsock 15:33:48.7197706 (CDnsCacheMgr::GetAllDomainNamesByIpAddr): lookupAll by address 13.225.78.31: found domain name api.mxtoolbox.com
00003171 9.63367558 acsock 15:33:48.7197706 (CDnsCacheMgr::GetAllDomainNamesByIpAddr): lookupAll by address 13.225.78.31: found domain name mxtoolbox.com
00003172 9.63370323 acsock 15:33:48.7197706 (CSocketScanSafePluginImp::getFQDN_check_domain_exception): Pattern match found (domain name api.mxtoolbox.com, exception *.mxtoolbox.com)
00003173 9.63370800 acsock 15:33:48.7197706 (CSocketScanSafePluginImp::evaluate_rules): domain name found so don't redirect
00003174 9.63371372 acsock 15:33:48.7197706 (CSocketScanSafePluginImp::notify_connect): cookie FFFF8C02C8FAF590: no redirect, no match, pport 443, pid 6404