
إطار عمل لتحديد وتنفيذ استغلالات ضد مضيفي الشبكة الداخلية. يعمل عبر تعداد عناوين IP لـ WebRTC مقترنًا بـ WebSockets وبصمة الموارد الخارجية.
إطار عمل لتحديد وتشغيل الاستغلالات ضد مضيفي الشبكة الداخلية. يعمل عبر تعداد IP WebRTC، وفحص المضيفين عبر WebSocket، وتحديد بصمات الموارد الخارجية.
عند تحميل حمولة sonar.js في متصفح ويب حديث، سيحدث التالي:
<img src="https://raw.githubusercontent.com/mandatoryprogrammer/sonar.js/HEAD/x"> و <link rel="stylesheet" type="text/css" href="x"> وربط حدث onload. إذا تم تحميل الموارد المتوقعة بنجاح، فسيؤدي ذلك إلى تشغيل رد الاتصال المحدد مسبقًا في JavaScript لبدء الاستغلال المقدم من المستخدم.يعمل sonar.js بناءً على قاعدة بيانات من البصمات. البصمة هي ببساطة قائمة بالموارد المعروفة على جهاز يمكن الربط بها واكتشافها عبر onload. تتضمن أمثلة ذلك الصور، وأوراق أنماط CSS، وحتى ملفات JavaScript الخارجية.
يمكن رؤية مثال لقاعدة بيانات البصمات أدناه:
var fingerprints = [
{
'name': "ASUS RT-N66U",
'resources': ["/images/New_ui/asustitle.png","/images/loading.gif","/images/alertImg.png","/images/New_ui/networkmap/line_one.png","/images/New_ui/networkmap/lock.png","/images/New_ui/networkmap/line_two.png","/index_style.css","/form_style.css","/NM_style.css","/other.css"],
'callback': function( ip ) {
// Insert exploit here
},
},
{
'name': "Linksys WRT54G",
'resources': ["/UILinksys.gif","/UI_10.gif","/UI_07.gif","/UI_06.gif","/UI_03.gif","/UI_02.gif","/UI_Cisco.gif","/style.css"],
'callback': function( ip ) {
// Insert exploit here
},
},
]
تحتوي قاعدة البيانات أعلاه على بصمات لجهازين: جهاز التوجيه ASUS RT-N66U WiFi وجهاز التوجيه Linksys WRT54G WiFi.
يحتوي كل إدخال في قاعدة البيانات على ما يلي:
name: حقل لتحديد الجهاز الذي تنتمي إليه البصمة. يمكن أن يكون شيئًا مثل طابعة HP Officejet 4500 أو جهاز توجيه Linksys WRT54G.resources: مصفوفة من الروابط النسبية إلى موارد مثل أوراق أنماط CSS أو الصور أو حتى ملفات JavaScript. إذا كنت تتوقع وجود هذه الموارد على منفذ غير قياسي مثل 8080، فقم بتعيين المورد مع تضمين المنفذ: :8080/unique.css. ضع في اعتبارك أن استخدام الموارد الخارجية ذات المحتوى النشط مثل JavaScript خطير لأنه يمكن أن يقطع تدفق التنفيذ العادي.callback: إذا تم العثور على كل هذه الموارد موجودة على المضيف الذي تم تعداده، فسيتم استدعاء دالة callback مع وسيطة واحدة وهي عنوان IP الخاص بالجهاز.من خلال إنشاء بصماتك الخاصة، يمكنك بناء استغلالات مخصصة سيتم تشغيلها ضد الأجهزة الداخلية بمجرد اكتشافها بواسطة sonar.js. تتضمن الاستغلالات الشائعة أشياء مثل تزوير الطلب عبر المواقع (CSRF)، والبرمجة النصية عبر المواقع (XSS)، إلخ. الفكرة هي أنه يمكنك استخدام هذه الثغرات للقيام بأشياء مثل تعديل تكوينات DNS الخاصة بجهاز التوجيه، وتفريغ الملفات من خادم ملفات داخلي، والمزيد.
لطريقة أسهل لإنشاء البصمات، انظر إلى امتداد Chrome التالي الذي يقوم تلقائيًا بإنشاء رمز قالب البصمة للصفحة التي تتصفحها:

باستخدام sonar.js، يمكن لفريق اختبار الاختراق بناء استغلالات ويب ضد أشياء مثل خوادم التسجيل الداخلية، وأجهزة التوجيه، والطابعات، وهواتف VOIP، والمزيد. نظرًا لأن الشبكات الداخلية غالبًا ما تكون أقل حماية، يمكن أن تكون هجمات مثل CSRF و XSS قوية للسيطرة على تكوينات الأجهزة على الشبكة الداخلية للمضيف. هل ذكرنا أنه يمكن فعل كل هذا من صفحة ويب على الإنترنت؟
إذا كان لديك جهاز مثل طابعة أو جهاز توجيه أو أي خدمة داخلية أخرى، يرجى إرسال بصمة إلينا حتى نتمكن من إضافتها إلى قاعدة بياناتنا الرئيسية. سنقوم بإضافة المزيد من البصمات لمزيد من الأجهزة بمرور الوقت، لكننا مقيدون بالأجهزة التي لدينا إمكانية الوصول إليها.