-------------------------------------------------------------- Keywords تحليل الباكتات, وايرشارك, شبكات الكمبيوتر, أمن الشبكات, بروتوكولات الشبكة, TCP/IP, HTTP, DNS, تحليل البيانات, أدوات تحليل الشبكة, تعلم الأمن السيبراني, تدريب وايرشارك, دورة وايرشارك, تعلم وايرشارك, شرح وايرشارك, مقدمة في وايرشارك, كيفية استخدام وايرشارك, Network Packet Analysis, Wireshark, Computer Networks, Network Security, Network Protocols, TCP/IP, HTTP, DNS, Data Analysis, Network Analysis Tools, Learning Cybersecurity, Wireshark Training, Wireshark Course, Learning Wireshark, Wireshark Tutorial, Introduction to Wireshark, How to use Wireshark, IPv4 and Ethernet Filters, ip source and destination, mac source and destination
1# Wireshark - تحليل الشبكات وطرق التقاط الترافيك من الشبكة
السلام عليكم، تحليل traffic في النتوورك، Network analyzing أو Sniffing أو packet capturing. كل هذه المسميات، packet capture، Network analyzing، Sniffing فكرتها أني آخذ جزء من Data اللي قاعدة تنتقل في النتوورك وأحللها. يعني أنا عندي هذه التوبولوجي البسيطة، عندي PC 1، PC 2 عندي Switch وعندي السيرفر، هذه النتوورك، الباك جراوند ما قاعدين نشوفها، PC 1 يتواصل مع PC 2 ب Switchقاعد يوصل هذا traffic إلى السيرفر، فكرة packet capturing أو Network analyzing أني آخذ نسخة من هذا traffic بأي نقطة وأحلل هذه Data، أحلل هذا traffic. مثلا PC 1 بيرسل بينق إلى PC 2. ICMP Traffic آخذ نسخة من هذا traffic هذه Data من هذه النقطة أو من هذه النقطة أو من هذه النقطة أو من هذه النقطة آخذ هذه النسخة وأحلل هذا ICMP Traffic، أحلل Request وأحلل Response. مثلا PC 1 يتواصل مع السيرفر، فرضا هذا DNS server أو DHCP Server أو Active Directual DC مثلا بيسوي عملية authentication للPC 1 عشان يدخل على Domain. كل هذه الكمية الضخمة من traffic اللي تصير في background اللي ما نشوفها خلف الكواليس ممكن آخذ نسخة منها وأحللها ArpRequest، ArpReply هذه كلها ممكن أحللها في packet أو Network analyzer أو Network analyzing tool، أداة لتحليل النتوورك. ليش أستخدم أداة وآخذ نسخة من traffic عشان أحلل النتوورك؟ ممكن لغرض troubleshooting، عندي مشكلة في النتوورك فيه جهاز ما قاعد يوصل لجهاز ثاني ولا في عندي بطء في النتوورك ولا في جهاز ما قاعد يأخذ IP مثلا من DHCP server مو قاعدين يتواصلون مع بعض، كل هذه ممكن أفهمها لما أحلل traffic وأشوف وش اللي قاعد يصير بالضبط لما اقرأ الداتا اللي قاعدة تنتقل في النتوورك. ممكن أستخدم عملية تحليل أو تحليل الداتا في Security. لما أشوف إذا أخذت نسخة من traffic، فيه داتا مشبوهة، فيه مثلا arp message غريب، فيه محاولة man in the middle attack. كل هذه ممكن استخدمها لحماية النتوورك لSecurity. فتقريبا، هذه أشهر نقطتين ممكن أستفيد منها في Network analyzing أني أستخدمها لtroubleshooting كشخص مسؤول عن هذه النتوورك وفي Security لما أشوف داتا مشبوهة. أحاول أراقب نتوورك، واش الداتا اللي تنتقل من جهاز إلى جهاز ثاني.
النقطة الثانية هو أني كيف آخذ نسخة من traffic. أنا عندي نتوورك PC 1 موصل بكابل في Switch بكابل للسيفر بكابل لل PC 2، الداتا فعليا تنتقل من خلال هذا الكابل. طبعا ممكن كذلك عن طريق wireless. كيف آخذ النسخة من traffic أثناء مرورها بهذا الوسيط، الكابل أو wireless أو غيره؟
في عندي ثلاثة طرق. أولا، directly on the machine، يعني أنا أبغى آخذ نسخة من traffic اللي قاعدة توصل إلى PC 1 ومن PC 1 تطلع إلى Switch وServer إلى PC 2.
Directly on the machine يعني أثبت Network analyzer أو Network analyzer tool على PC 1 اللي هو نشرحه في هذه السلسلة اللي هو Wireshark. أثبت Wireshark على PC 1. لما أثبت Wireshark على PC 1 أنا بيصير عندي القدرة إني أحلل traffic اللي يوصل إلى PC 1 واللي يطلع من PC 1 إلى Network. فهذه Method إني أثبت المحلل الأداة اللي بستخدمها لتحليل traffic وهي الأداة اللي تأخذ نسخة من اللي traffic على machine directly اللي بحلل عليه اللي هي PC 1، ولكن في هذه الحالة، أنا أحلل traffic اللي يطلع من PC 1 واللي يوصل إلى PC 1. أنا بحلل هذا البورت، هذا النيك، فبحلل traffic فقط اللي يوصل إلى هذه النيك، إلى هذا البورت. مثلا PC 2 قاعد يتواصل مع الServer و Server قاعد يتواصل مع PC 2، فيه Request وفيه Reply بين PC 2 وServer. أبغى أشوف الCommunication أبغى أخذ نسخة من traffic اللي قاعدة تصير، هذه الConversation بين PC 2 وServer. طبعا ما أقدر إذا أنا ثبت Analyzer على PC 1. أنا لازم أفهم Data flow، لازم أفهم كيف الbehavior حق الأجهزة في الNetwork عشان أقدر أعرف وين الجهة اللي مفروض آخذ منها traffic. يعني غير منطقي تماما إنك تثبت Analyzer على PC 1 وتبغى تأخذ نسخة من traffic اللي قاعدة تصير بين PC 2 وServer، مستحيل. PC 2 يرسل traffic إلى Switch وSwitch يشوف الMac address حق الServer، يوصله إلى Server. فأصلا traffic ما بيروح إلى PC 1، فما بتقدر تحلله، ما يوصل هو إلى PC 1. هذه Method الأولى.
Method الثانية هي SPAN. SPAN هي feature في Switch من خلالها أقدر أخلي الSwitch يأخذ نسخة من traffic اللي يعدي من بورت معين ويرسله إلى بورت ثاني. يعني أنا ال network engineer في هذه ال infrastructure أو هذه ال network. ثبت الnetwork analyzer على PC1 لكن أبغى آخذ نسخة من traffic والcommunication اللي قاعدة تصير بين PC2 والserver. طيب وش أسوي الآن؟ traffic ما قاعد يجيني للPC1، كيف آخذ نسخة من traffic؟ عن طريق Span، على الSwitch، أقدر أخلي الSwitch يرسل نسخة من traffic اللي قاعد يعدي من هذا البورت مثلا أو نسخة من traffic اللي يعدي من خلال هذا البورت. فPC2 traffic يوصل إلى switch ويعدي إلى server، server إلى switch ويعدي الى PC2، فال communication تعدي من هذه ال 2 بورت. أقدر آخذ نسخة من الone of them أو اثنينهم وأقول الSwitch حول أو خذ نسخة من traffic اللي يعدي من هذا البورت وأرسلها إلى هذا البورت فيوصلني الى PC1. وعن طريق الnetwork analyzer عن طريق الwireshark، لما أقول network analyzer خلاص wireshark أو network analyzing tool، wireshark آخذ نسخة من هذا traffic وأقدر أحللها على PC1. ثبتت الأداة wireshark على pc1 ولكن قاعد أحلل communication remotely بين server وبين PC2.
Method الأخيرة هي Network Tab. Network Tab هو عبارة عن قطعة hardware مثلا أبغى أحلل للترافيك اللي يصير بين PC2 والswitch. أروح إلى هذا الكابل أشبك ال network Tabبحيث أن الswitch ينشبك بالnetwork tab قطعة hardware. يعني هذه فكرتها أن يكون فيها بورتات بين النقطتين وبورت ثالث يروح إلى PC اللي بحلل عليه، نشوفها الحين. فالswitch يكون موصل بالnetwork tab، هذه القطعة فهذا بورت الآن في الnetwork tab، هذه ال hardware. تقدر تبحث عنه في النت بتشوف القطعة كيف شكلها ومن الnetwork tab إلى pc2 وفيه بورت ثالث أشبك عليه جهازي، مثلا ال laptop. فأثبت الwireshark على ال laptop والnetwork tab يأخذ نسخة من ال traffic اللي يعدي من خلاله ويرسل عن طريق البورت اللي أشبك عليه جهازي. فأحلل ال traffic اللي يعدى من خلال هذا ال network tab، من خلال الwireshark على ال laptop. فهذه ال three methods اللي من خلالها آخذ نسخة من ال traffic.
بس هذي فكرة هذا المقطع، مقدمة. أتمنى يكون كل شي واضح. عندك خبرة عملية، عندك معلومة ممكن تفيدنا، ضيفها تحت في التعليقات. سلام.
تحليل الباكتات, وايرشارك, شبكات الكمبيوتر, أمن الشبكات, بروتوكولات الشبكة, TCP/IP, HTTP, DNS, تحليل البيانات, أدوات تحليل الشبكة, تعلم الأمن السيبراني, تدريب وايرشارك, دورة وايرشارك, تعلم وايرشارك, شرح وايرشارك, مقدمة في وايرشارك, كيفية استخدام وايرشارك, Network Packet Analysis, Wireshark, Computer Networks, Network Security, Network Protocols, TCP/IP, HTTP, DNS, Data Analysis, Network Analysis Tools, Learning Cybersecurity, Wireshark Training, Wireshark Course, Learning Wireshark, Wireshark Tutorial, Introduction to Wireshark, How to use Wireshark
سلام. هل الموقع اللي يستخدم https موقع آمن؟ نجاوب على السؤال هذا في المقطع. بداية، أي موقع هو عبارة عن صفحات اللي هي ملفات موجودة على السيرفر. فأنا عندي سيرفر، أنا عندي ويب سيرفر، هذا الويب سيرفر عليه ملفات اللي هي صفحات الموقع. الصفحة الأولى home page صفحة login page مثلا إذا كان Social media application مثلا خلنا نقول تويتر ولا انستجرام، login pageالصفحة اللي فيها البوست، هذه كلها عبارة عن ملفات اللي هي صفحات موجود على السيرفر أو الويب سيرفر.
تمام، خلنا نقول مثلا هذاInstagram.com ، الطرف الثاني هذا جهازي اللي هو PC، اللي أسويه أنا لما أدخل وأكتب Instagram.com يكون فيه تواصل بيني وبين الويب سيرفر. أنا أطلب صفحة Instagram.com هذا الملف، home page. أول شيء في البداية أنا أطلب home page. فأطلب من السيرفر اللي هو الويب سيرفر حق الإنستجرام هذه الصفحة ويرد بhome page، فأنا حملت هذه الصفحة على جهازي عن طريق browser وفتحت الصفحة. صارت الآن downloaded على جهازي، ظهرت عندي هذه ال home page. مين المسؤول عن عملية التواصل بين جهازي الuser، أنا والويب سيرفر؟ هو بروتوكول http (hypertext transfer protocol)، http هو browsing protocol هو المسؤول عن نقل صفحة من السيرفر إلى ال user ومن ال user إلى السيرفر.
خلينا نشرح، الhttp عنده methods، أشهرها خليني أتكلم عن get and post. get أنا لما أدخل على الPC وأكتب اسم الموقع، google.com مثلا، الhttp ينشأ باكيت اسمه get ويطلب صفحة google.com. فهذا الطلب، هذا الget request يروح إلى الويب سيرفر اللي هو جوجل دوت كوم سيرفر ويطلب هذه الصفحة. فيرد السيرفر، فأنا قاعد آخذ data، آخذ home page حق جوجل ويجيني إلى الPC، يرجع مرة ثانية عندي كuser. فhttp هو اللي جاب الصفحة، هو الوسيط م بيني وبين الويب سيرفر. method الثاني هي post. الpost غالبا يستخدم في الlogin page، يعني أنا أبغى أدخل على بنك مثلا ولا أدخل علىSocial media application، فأنا بعبي الusername والpassword. أنا بداية طلبت الصفحة عن طريق الget وجاتني الhome page الآن بدخل username والpassword. في هذه الحالة أنا ما آخذ data من السيرفر إلى جهازي، لا أنا برسل data إلى السيرفر، اللي هي username والpassword عشان السيرفر يعطيني الصلاحية إني أدخل يتأكد أولا هل المعلومات الصحيحة أو لا. فالhttp الآن يرسلrequest post إلى السيرفر والسيرفر يرد إذا كنت authenticated أو لا، هل أقدر أدخل أو لا. هذه بشكل بسيط عن الget والpost ومين المسؤول هو الhttp هو الوسيط بيني وبين السيرفر اللي هو عبارة عن ملفات اللي هي الصفحات. get أنا آخذ هذه الصفحة، post أنا عبيت بيانات في هذه الصفحة وأرسل الdata إلى الويب سيرفر. بكل بساطة هذا الbrowsing، هذا الإنترنت الweb pages كيف شغالة. فيه أكيد تفاصيل ولكن هذا بشكل مبسط.
هذه النقطة الأولى. طيب، أنا كذا عرفت وش معنى ويب سايت والويب سيرفير وكيف أنا آخذ الصفحة وكيف أعبي البيانات في الصفحة كلها عن طريق http protocol. جاء بعدين http. https وhttps، الفرق الhypertext transfer protocol، hypertext transfer protocol secure. http يأخذ الdata من السيرفر web page ويرسل البيانات عن طريق الpost، يعني لما أعبي username والpassword as clear text clear
clear text يعني الصفحة كما هي، غير مشفرة. فأنا لما أطلب من ال السيرفر جوجل دوت كوم ال home page، هذه الhome page يرسلها إلى جهازي غير مشفرة. في حال إنه صار فيه attacker في النص، هذا ال attacker اسمه Man-in-the-middle attack.
Man In the Middle يعني attack يصير بين الطرفين في third part خلينا نقول. لو أخذ هذه البيانات، قدر إنه يحصل على هذي الhome page جوجل دوت كوم، بيقدر يطلع عليها لأن البيانات غير مشفرة. هذا المثال، جوجل يعني مثال بسيط. طيب لو أدخل على بنك، لو أدخل على بنك والبنك رسل الhome page واللي فيه الlogin page أبغى أدخل على حسابي وأعبي username والpassword. فالhttp يرسل الpost وأنا معبي ال username والpassword وبتروح إلى الويب سيرفر. في هذه الحالة، لو كان فيه attacker وقدر يحصل على هذي الملفات أو هذا الملف الweb page وفيه الusername والpassword حقي غير مشفر يقدر يشوف وش البيانات ووش الusername ووش الpassword. فهذا الhttp يرسل البيانات من السيرفر إلى الجهاز إلى الuser من الend user إلى السيرفر غير مشفرة. في الطرف الثاني، الhttps، البيانات من الويب سيرفر إلى الend user ومن الend user إلى الويب سيرفر مشفرة، يعني أي أحد يأخذ هذه البيانات أثناء عملية نقل الداتا وقدر يحصل على البيانات، مشفرة ما بيقدر يقرأها ولا يقدر يعدل عليها ولا يقدر يسوي أي شيء لأن البيانات secure encrypted. فقط الend user و web server يقدروا يقرأوا هذي الملفات لأن هم اللي عندهم التشفير مفتاح التشفير ومفتاح فك التشفير.
ولكن أثناء نقل البيانات، الطرف الثالث ما يقدر يقرأها، هي مشفرة. فخلينا نقول الداتا تتشفر، تنتقل للطرف الثاني مشفرة، الطرف الثاني يفك التشفير ويقرأها. الطرف الثاني يبغى يرد، يشفر الداتا، يرسلها مشفرة، الطرف الأول يفك التشفير ويقرأها. فأثناء عملية نقل البيانات، الداتا، مشفرة الطرف الثالث ما يقدر يقرأ البيانات أو يعدل عليها.
هذا مثال على موقع يستخدم بروتوكول http، نلاحظ browser قاعد يعطينا تنبيه إنه ترى not secure. طبعا هذا الموقع شوف تحت
Warning: This is not a real shop. This is an example PHP application, which is intentionally vulnerable to web attacks.
هو الويب سايت لغرض تعليمي، يعني هم مخلينه http not secure عشان تهاجم الموقع وتتعلم يعني على الweb attack، يعني نفس هذا المقطع إن نشوف كيف البيانات قاعد تنتقل غير مشفرة. فلو أجرب، أنا ما عندي حساب، بس بجرب بحط username وpassword
وعن طريق wireshark أقرأ هذي البيانات. نشوف كيف نقدر نقرأها أو لا، فكأننا قاعدين نعمل Man-in-the-middle attack، نشوف هل نقدر نقرأ البيانات أو لا. كده شغلته wireshark نروح للusername، خليها مثلا MrAlshabib وأي باسوورد، login. طيب، أروح للwireshark، بروتوكول http، زين. ألاحظ إن عندي بوست، بوست زي ما قلت يعني أنا الend user قاعد أعطي data للسيرفر، فهذا اللي قاعد أبحث عنه. هذا هو، لو أروح للداتا، عندي ال Form item، uname اللي هو الusername MrAlshabib، هذا الkey وهذا الvalue والpassword والkey pass هذا الpassword اللي حطيته. فكده attacker قدر يعرف الusername والpassword، فنتخيل إني أنا قاعد أسوي الlogin على بنك مثلا ولا قاعد أعطي credit card information. إذا كان الموقع قاعد يستخدم http، كده البيانات تظهر، يقدر يأخذ كل المعلومات. على النقيض، MrAlshabib مثلا، هذا موقع القناة قاعد يستخدم البروتوكول الhttps. فأنا لو أدخل على الموقع، so we refresh، أروح إلى الwireshark. طبعا wireshark ما في شيء اسمه https ولكن بروتوكول التشفير اللي هوtls. tls يقول لك ترى فيه application data. طيب هل أقدر أقرأها؟ لا، Transport Layer Security هو اللي يشفر الdata، فأنا ما أعرف وش البيانات اللي راحت وش الصفحة اللي راحت أو وش الصفحة اللي جت من سيرفر إلى end user وما أقدر أقرأها ولا أقدر أعدل عليها لأنها مشفرة. فهذه البيانات مثلا اللي راحت أو اللي أخذتها من MrAlshabib من هذا الموقع. فالبيانات تماما مشفرة.
طيب، ختاما نجاوب على السؤال. هل الhttps أو الموقع اللي يستخدم الhttps آمن ؟ نعم، آمن، يحميك من طرف ثالث. ولكن هل صاحب الموقع نفسه أو الموقع نفسه آمن ولا ؟ لا، https ما يقدر يجاوب. يعني تخيل إنك قاعد تدخل موقع، هذا الموقع متجر، تعبي بياناتك credit card، https ينقل هذه الcredit card information مشفرة إلى الموقع ولكن الموقع نفسه بيقدر يقرأ المعلومات. في النهاية الموقع يفك التشفير، التشفير بس من طرف ثالث مو على الموقع نفسه. الhttps ما يقدر يجاوب إذا كان الموقع نفسه آمن ولا. سلام.
//للأعمال // mralshabib@gmail.com -------------------------------------------------------------- Keywords شرح vlan بالعربي شرح vlan dot1q شرح 802.1q شرح tagging protocol شرح شرح native vlan تحليل vlan شرح vlan شرح وتحليل vlan برنامج الوايرشارك wireshark تحليل الشبكات باستخدام wireshark شرح برنامج wireshark شرح برنامج وايرشارك تحليل البيانات شرح ccna شرح wireshark network analysis using wireshark شرح ccna بالعربي #ccna #wireshark