أفضل مكتبات بايثون لتوفير الوقت

0

 

أفضل مكتبات بايثون لتوفير الوقت

يعد تعلم الألة وتطوير البرامج جزءًا كبيرًا من جميع المشاريع مفتوحة المصدر التي تم إنشاؤها باستخدام بايثون، في السنوات الأخيرة أدت هذه المشاريع إلى خلق العديد من فرص العمل في مجال تطوير المصادر المفتوحة، و أشهر المشاريع مفتوحة المصدر المكتوبة بلغة بايثون هي TensorFlow و Keras و Scikit-Learn و Flask و Django و Tornado و Pandas و Kivy و Matplotlib و Orders.

1.TensorFlow

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

تم تطوير المكتبة بواسطة Google لتلبية الحاجة إلى الأنظمة التي يمكنها إنشاء وتدريب الشبكات العصبية لاكتشاف وفك تشفير الصور والارتباطات  على غرار التعاليم والتمثيلات التي يستخدمها البشر.

  1. Keras

 مكتبة شبكة عصبية مفتوحة المصدر مكتوبة بلغة بايثون وقادرة على العمل على برامج مثل Deep Learning و TensorFlow و Theano، تم إنشاؤها في الأصل لإجراء تجارب على الشبكات العصبية العميقة و ينصب تركيز Keras على النمطية وقابلية الاستخدام وقابلية التوسع.

3.Scikit-learn

هي مكتبة توفر خوارزميات مختلفة للتعلم الخاضع للإشراف وغير الخاضع للإشراف من خلال واجهة للغة برمجة بايثون، يتم توزيع هذه المكتبة بموجب "ترخيص BSD ولها توزيعات للعديد من إصدارات Linux المختلفة وبالتالي تعزيز الاستخدام التجاري والأكاديمي لـ Scikit-Learn

أفضل مكتبات لغة البرمجة بايثون لتصور البيانات

البيانات هي أحد الأجزاء الرئيسية لأي مساعدة في كتابة ورقة بحثية ولكن من الصعب معالجة الكثير من البيانات بكفاءة ولهذا يسمح لك تصور البيانات بتصور المعلومات بسهولة أكبر، على سبيل المثال من خلال إنشاء نوع من خريطة المعلومات.

سنتكلم اليوم في هذه المقالة عن أفضل خمس مكتبات لتصور البيانات التي يمكنك استخدامها في مشاريع بيثون الخاصة بك.

  1.  Matplotlib 

Matplotlib هي مكتبة بايثون الأكثر شيوعًا لتصور البيانات، يمكن استخدامه في شيل بايثون و IPython وخوادم تطبيقات الويب وما إلى ذلك، وتعتبر هذه المكتبة هذه مكتبة رسوم بيانية ثنائية الأبعاد عمرها أكثر من 10 سنوات وتأتي مع نظام أساسي تفاعلي.

يمكنك استخدام هذه المكتبة لأغراض مختلفة مثل إنشاء الرسوم البيانية وأطياف الطاقة ومخططات القوائم الجذعية والمخططات الدائرية، أفضل شيء في Matplotlib هو أنك تحتاج إلى كتابة بضعة أسطر من التعليمات البرمجية وهو يتعامل مع الباقي بمفرده.

يركز Metaplotilib على الصور الثابتة للنشر جنبًا إلى جنب مع الأشكال التفاعلية باستخدام مجموعات أدوات مثل Qt و GTK.

  1. Seaborn
تستند مكتبة تصور بيانات Seaborn أيضًا إلى Matplotlib. و إذا كنت تبحث عن خيارات أكثر تقدمًا لعملك  فجرب هذه الممكتبة.
تأتي هذه المكتبة بواجهة كاملة الميزات لرسم رسومات إحصائية جذابة وغنية بالمعلومات و تعد واجهة برمجة تطبيقات التصور المبنية على KDE أكثر إيجازًا من المكتبات المماثلة الأخرى.
يعمل Seaborn بجد لجعل التصور جزءًا أساسيًا من فهم البيانات واستكشافها، تم دمج Seaborn تمامًا مع PyData stack بما في ذلك دعم هياكل بيانات NumPy و pandas.

3. Altair 

مكتبة إحصائية توضيحية مبنية على قواعد التصور النحوية المشهورة Vega-Lite. Altair، وتتميز بواجهة برمجة تطبيقات بسيطة.
باستخدام مكتبة تصور البيانات هذه يمكنك إنشاء تصورات جميلة وفعالة بأقل كود ممكن ما عليك سوى ذكر ارتباط واحد بين أعمدة البيانات إلى قنوات الترميز وسيتم التعامل مع الباقي تلقائيًا.

هجوم BITB (متصفح في متصفح)

0

 هجوم متصفح في متصفح BITB هو هجوم تصيد متقدم وأكثر تعقيدًا يمكن أن يخدع المستخدمين للاعتقاد بأن موقع الويب المزيف حقيقي و يعمل على جعل المستخدمين يعتقدون أن نافذة SSO الزائفة حقيقية.

 ولتوضيح الامر أكثر ربما قد شاهدت هذه النافذة عند محاولة تسجيل الدخول إلى موقع canva :


تسمح لك نافذة SSO الجديدة بالمصادقة مع google.

لمحة عن الدخول المُوحَّد (SSO)

يتيح الدخول المُوحَّد (SSO) للمستخدمين تسجيل الدخول مرة واحدة فقط للوصول إلى جميع تطبيقات السحابة الإلكترونية للمؤسسة. في حال إعداد الدخول المُوحَّد (SSO)، يمكن للمستخدمين تسجيل الدخول إلى موفِّر الهوية التابع لجهة خارجية، ثم الدخول إلى تطبيقات Google مباشرةً بدون الحاجة إلى تسجيل الدخول مرة ثانية.
 
يمكنك أن ترى أننا حصلنا على نافذة منبثقة جديدة من Google . إذا نظرنا إلى خصائص URL فهي محمية بطبقة المقابس الآمنة وبها HTTPS ، كما أنه لا يوجد هجوم متماثل لـ IDN و بالتالي فهو مناسب للإستخدام.
يمكن للمطور إنشاء نفس النافذة باستخدام علامة <ifram> في HTML وجعلها أكثر قابلية للتصديق كنافذة SSO مستقلة باستخدام  الصحيح ل CSS و JS و لكن في الحقيقة ستكون مجرد نافذة داخل نافذة وليست نافذة مستقلة !!
 

 كلاهما يبدوان متشابهين لهما نفس المجال وأيقونة قفل SSL  ونسخة كاملة.
 

كيف يتم تنفيذ هجوم BITB؟ 

من أجل الحصول على فكرة بسيطة عن كيفية عمل هجوم BITB يمكنك إلقاء نظرة على إطار عمل التالي :

 https://github.com/surya-dev-singh/BITB-framwork

قم باستنساخ المستودع على نظامك وستجد أنه يملك العديد من القوالب للعمل على المواقع الشعبية.


يمكنك تعديل و تغيير مواقع الويب عن طريق التعديل على main.html.


ستسمح لك نافذة SSO الوهمية بالتقاط عمليات تسجيل الدخول:


كيف تكتشف هجمات BITB؟

نظرًا لأن هذا الهجوم يعتمد على كود HTML فمن الصعب اكتشافه ومن الصعب إنشاء مؤشر الاختراق (IOC). إحدى الطرق الممكنة للكشف هي التحقق مما إذا كانت نافذة SSO المنبثقة قادرة على الهروب من المتصفح، لأنه إذا كان هجومًا من قبل BITB فسيستخدم علامة <iframe> والتي تشبه نافذة داخل النافذة لكنها لا تستطيع الخروج من المتصفح.

البنية التحتية تحت الهجوم السيبراني لفترة أطول مما تعتقد

0

البنية التحتية

 
قبل أيام فقط تعرضت شبكة الكهرباء في أوكرانيا للهجوم عندما حاولت مجموعة Sandworm نشر برامج ضارة تسمى Industroyer2 ضد عمليات مورد الطاقة في البلاد، Industroyer2 الذي تم الكشف عنه خلال جهود استجابة شملت ESET و CERT-UA هو نوع جديد من البرامج الضارة المعقدة تسمى Industroyer والتي أطفأت الأنوار في أجزاء من كييف في ديسمبر 2016.

بالإضافة إلى ذلك و في ديسمبر 2015 ، قطع مشغلو BlackEnergy إمدادات الطاقة لمئات الآلاف من الأشخاص في منطقة Ivano-Frankivsk في أوكرانيا لعدة ساعات بعد تخريب أنظمة العديد من شركات توزيع الكهرباء.

كانت هذه الأحداث بمثابة خيالًا علميًا ومع ذلك لم يتم تحديد المرة الأولى التي يتم فيها استخدام برنامج ضار في هجوم على البنية التحتية الحيوية.

بالعودة إلى حزيران (يونيو) 2010 تعرضت منشأة تخصيب الوقود النووي الإيرانية في ناتانز للقصف من قبل برنامج Stuxnet، وهو برنامج ضار متطور دمر العديد من أجهزة الطرد المركزي مما قلل من قدرة إيران على إنتاج اليورانيوم المخصب نتيجة لذلك، يُعرف Stuxnet اليوم بأنه أول برنامج ضار تم اكتشافه يستهدف الأنظمة الصناعية والبرامج الضارة التي تقف وراء الهجوم الإلكتروني الأول على البنية التحتية الحيوية في العصر الحديث.

تذكرنا هذه الهجمات بالمخاطر التي تواجهها أنواع مختلفة من البنية التحتية الحيوية، في الواقع يُظهر التاريخ أنه بطريقة ما يعود هذا إلى فترات طويلة قبل ظهور أجهزة الكمبيوتر الرقمية الحديثة.

الهجمات الإلكترونية على البنية التحتية الحيوية - تهديد يعود إلى 200 عام؟

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

كانت هذه ثورة حقيقية في ذلك الوقت حيث كان لجيش نابليون الآن خط اتصال سري وحصري أو هكذا كان يعتقد،ولكن بعد بضع سنوات أصبحت أول شبكة اتصالات بعيدة المدى و أولى أنظمة البنية التحتية الحيوية التي يتم اختراقها، ففي عام 1834 قام الشقيقان فرانسوا وجوزيف بلان ما يُطلق عليه أول عملية احتيال عبر الإنترنت و كان أول هجوم إلكتروني.
تداول الأخوان السندات الحكومية في بورصة بوردو التي استخدمت بورصة باريس كمؤشر لارتفاع وانخفاض أسعارها، ومع ذلك تم نقل هذه المعلومات عن طريق الحصان واستغرق الأمر ما يصل إلى خمسة أيام للوصول إلى جنوب غرب فرنسا.

قدمت الإشارة الحل الأمثل وكانت الحيلة بسيطة: رسالة روتينية تتضمن رمزًا خاصًا تم إنشاؤه بواسطة Blanc سيتم تسليمها بواسطة شريك في برج باريس حتى تصل إليهم، تم إنشاء هذا الرمز الصغير ليظهر على أنه خطأ بريء وكما حدده بروتوكول السيمافور لم يكن من المفترض إلا التحقق من هذه الأخطاء وإزالتها من قبل مديري الأبراج المتمركزين في عدد قليل في المدن الكبرى، في الطريق إلى بوردو كان للبرج في تور أحد هؤلاء المديرين لذلك قام فرانسوا وجوزيف برشوته حتى لا يصحح إشاراتهم.
في هذه الأثناء كان أحد المتواطئين في بوردو يراقب البرج لاكتشاف تلك الأخطاء وتسليمها إلى Blancs، تمكن فرانسوا وجوزيف من الحصول على السبق الصحفي الداخلي بشأن أحدث البيانات من بورصة باريس دون أن يلاحظهما أحد لفترة طويلة، لقد استغلوا شبكة ممولة من الحكومة باهظة الثمن لتحقيق مكاسب شخصية وحققوا أرباحًا كبيرة وعطلوا اتصالات الجيش الفرنسي في هذه العملية.
في غضون عامين كسبوا الكثير من المال لدرجة أن الناس بدأوا يشككون في حظهم و لكن في النهاية تم اكتشاف الاحتيال.

في هذه الأيام يمكن للمهاجمين تنفيذ هجماتهم بطرق جديدة وأكثر مكرا.


تعطيل البرلمانات والبنوك والمعاهد البحثية ورفع أسعار المحروقات 

يمكن للتاريخ أن يعلمنا الكثير، و لهذا وجب علينا التعلم منه لأن التاريخ يمكن ان يعيد نفسه - تضرب الهجمات الإلكترونية الآلاف من الشركات الخاصة الصغيرة والأفراد والمنظمات العامة والحكومية الكبيرة.
وفقًا لدراسة أجرتها شركة Claroty عام 2021 والتي استطلعت آراء 1،000 متخصص في أمن تكنولوجيا المعلومات يعملون في البنية التحتية الحيوية في الولايات المتحدة والمملكة المتحدة وألمانيا وفرنسا وأستراليا، حيث أشار 65٪ منهم إلى القلق بشأن الهجمات على البنية التحتية الحيوية و أفاد تسعون بالمائة منهم أنهم تعرضوا فعلا لهجوم في عام 2021.

وبالرجوع إلى الاحتيال في الاتصالات للأخوين بلانك حيث أنه لم يؤثر على السكان عمومًا، إلا ان الهجمات على شبكة الطاقة الكهربائية في أوكرانيا أثرت على مئات الآلاف من الأشخاص، وبالتالي فإن مخاطر هذه الآثار المباشرة تزداد حدة بشكل متزايد.

إستونيا المرة الأولى التي واجهت فيها شبكة دولة بأكملها هجومًا إلكترونيًا

في صباح يوم 27 أبريل 2007 تم إغلاق الاتصالات الحكومية والبنوك ومشغلي الهاتف والمواقع الإعلامية وأجهزة الصراف الآلي وموقع البرلمان في إستونيا بالإضافة إلى العديد من الخدمات الأخرى عبر الإنترنت. شعر الجميع بالعبء اللانهائي للهجوم الذي استمر 22 يومًا.
وشهدت الدولة المتقدمة رقمياً فضاءها السيبراني يتعرض للهجوم حيث كانت إستونيا واحدة من أكثر الدول الرقمية في العالم استخدم الناس هواتفهم للدفع مقابل وقوف السيارات، وكانت الخدمات الحكومية متصلة بالإنترنت وحتى نظام التصويت كان عبر الإنترنت وكانت هناك شبكة Wi-Fi في كل مكان! ولكن في غمضة عين انتقلت دولة البلطيق من أرض الأحلام عبر الإنترنت إلى الخراب الرقمي.
إستونيا

استخدم المهاجمون العديد من التكتيكات المعروفة من فيضانات ping وهو نوع من هجمات رفض الخدمة (DoS) إلى استعلامات الويب المشوهة والبريد الإلكتروني العشوائي ومعظمها يأتي من خارج إستونيا، مثل هذا النشاط الواسع والمستمر لم يقابل سوى طبقات قليلة من الحماية وبالتأكيد أقل مما كان يمكن تنفيذه، كان ينبغي أن تصبح هذه المحنة نموذجًا أصليًا كان ينبغي أن ينبه البلدان الأخرى إلى نقاط الضعف الأمنية الخاصة بها.
لم تكن هناك حلول فورية متاحة واستمرت الهجمات طالما أراد المهاجمون ذلك، و نظرًا لأن معظمها تم ارتكابها من الخارج فقد بدأت كل من المؤسسات العامة والخاصة في حظر جميع حركة المرور الأجنبية إلى مواقعها الإلكترونية في محاولة لكسب الوقت لتحديد المصادر الخبيثة لحركة المرور وتصفيتها بمساعدة مزودي خدمة الإنترنت في جميع أنحاء العالم.
لم يكن من المستغرب أن يتوصل التحقيق الجنائي إلى استنتاجات قليلة فقط بسبب الافتقار إلى الآليات القانونية واستحالة تعقب العناوين والأشخاص الملموسين، كان دميتري غالوسكيفيتش وهو طالب جامعي إستوني يبلغ من العمر 20 عامًا المهاجم الوحيد الذي تم تحديده لأنه كان يتصرف من داخل إستونيا، استخدم Galuškevitš جهاز الكمبيوتر الخاص به لمهاجمة موقع الويب الخاص بحزب رئيس الوزراء الإستوني حزب الإصلاح الإستوني وأمر بدفع غرامة قدرها 17500 كروني (حوالي 700 دولار أمريكي في ذلك الوقت).

كوفيد -19: سباق للمعلومات

لا شيء يوحد العالم بقدر الحاجة إلى تطوير لقاح COVID-19، ومع ذلك كانت مختلفة حيث بدأت العديد من المعامل في جميع أنحاء العالم في سباق الماراثون للمطالبة بأول ضربة بالكوع وأكثرها أمانًا، في 23 أبريل 2020 أبلغت منظمة الصحة العالمية عن "زيادة خمسة أضعاف في الهجمات الإلكترونية" على موظفيها.
بعد أيام قليلة فقط حذر المركز الوطني للأمن الإلكتروني في المملكة المتحدة (NCSC) من أن الجامعات والمختبرات في البلاد التي تجري أبحاثًا حول COVID-19 كانت تعاني من محاولات قرصنة متعددة  بما في ذلك الهجمات التي تشنها دول أخرى تتطلع إلى جمع البيانات المتعلقة بتطوير اللقاحات.
بعد بضعة أشهر و في التاسع من كانون الأول (ديسمبر) كشف المنظم الصحي في الاتحاد الأوروبي وكالة الأدوية الأوروبية (EMA) عن تعرضه لهجوم إلكتروني، و في نفس اليوم أكدت BioNTech أن بعض المستندات المخزنة على خوادم EMA للموافقة على لقاحها قد "تم الوصول إليها بشكل غير قانوني" و وفقًا لمتابعة EMA في 22 ديسمبر 2020 استهدف المتسللون حصريًا معلومات COVID-19 من خلال اختراق أحد تطبيقات تكنولوجيا المعلومات غير المكشوف عنها ثم تم تسريب البيانات المسروقة في 13 يناير 2021.
تم التحقيق في القضية من قبل CERT-EU مع الشرطة الهولندية ومع ذلك  لم يتم الكشف عن أي استنتاجات، وفقًا لصحيفة deVolkskrant الهولندية  فقد تمكن المهاجمون من الوصول إلى أنظمة EMA بعد سرقة رمز تم استخدامه لإعداد مصادقة متعددة العوامل للموظفين الجدد، يكشف المنشور أيضًا أن الأشخاص المقربين من القضية يعتقدون أن الحادث كان مسألة تجسس لدولة قومية يستهدف إستراتيجية الاتحاد الأوروبي الخاصة بـ COVID-19.

فقدان السيطرة على إمدادات الوقود

في السابع من مايو 2021 هاجمت عصابة DarkSide Ransomware خط الأنابيب مستغلة نقاط ضعف متعددة وكلمات مرور مخترقةK هذا كل ما احتاجته المجموعة لإنهاء عمليات أكبر نظام خطوط أنابيب لتوزيع الوقود في الولايات المتحدة على مدى خمسة أيام، كانت هذه هي المرة الأولى في تاريخ الشركة الممتد 57 عامًا وتطلبت تدخلًا مباشرًا من البيت الأبيض.
كان لهجوم برنامج الفدية هذا عواقب وخيمة مما أجبر العديد من سلاسل محطات الوقود الكبيرة على الإغلاق بسبب نقص الوقود، ارتفعت أسعار الوقود في الولايات المتحدة إلى مستويات عالية لم تشهدها منذ عام 2014.
 اتضح بعد ذلك أن الدافع وراء العملية  هو كسب المال حيث أقرت شركة دارك سايد بأنها مسؤولة عن الهجوم لكنها أنكرت وجود أي دافع سياسي، و من المعروف أن المجموعة تقدم برامج الفدية كخدمة للشركات التابعة وحصلت على فدية قدرها 4.4 مليون دولار أمريكي استرد مكتب التحقيقات الفيدرالي نصفها لاحقًا.

الهجمات الإلكترونية موجودة لتبقى

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

إعداد / محاكاة راوتر Juniper على GNS3

0

 


 كنت بحاجة الى محاكاة راوتر جونيبر (JunOS) على GNS3.

و لقد رأيت أن هذا الخيار متاح في قائمة “أنواع العقد” في GNS3.

 

عندما أحاول إضافة Juniper Router إلى المحاكاة تظهر لي رسالة خطأ:
 

و بعد القيام بعمليات قمت بإيجاد الحل و سأقوم بمشاركته معكم

لحل هذه المشكلة يمكننا استخدام VirtualBox أو باستخدام Qemu، و لكني سأقوم بشرح الخطوات المطلوبة لإعداد JunOS على GNS3 باستخدام Qemu:

  • الحصول على صورة JUNOS و يجب أن يكون ملف الصورة بالملحق .img
  • قم بفتح برنامج GNS3 و انتقل الى  Edit -> Preferences -> Qemu
  • تأكد من أن الإعدادات في General Settings صحيحة كما في الصورة الموالية 
 

  • انقر فوق إختبار الإعدادات للتحقق مما إذا كانت الإعدادات الخاصة بك صحيحة
  • انقر فوق علامة التبويب Junos في نافذة التفضيلات نفسها
  • أدخل اي اسم
  • بالنسبة للصورة الثنائية ، حدد الصورة التي حصلت عليها في الخطوة 1
  • حدد قيمة لذاكرة الوصول العشوائي. الحد الأدنى الذي رأيته لهذا هو 256 ميغا بايت. يمكنك أيضًا ترك هذا فارغًا وسيقوم GNS3 بتعيينه لك.
  • أدخل عدد بطاقات NIC التي تريدها على Juniper Router (الافتراضي هو 6)
  • حدد طراز بطاقات NIC التي تريدها على Juniper Router (الافتراضي هو e1000)

و في مايلي إعدادات نموذج قسم إعدادات Junos:

 

انقر فوق حفظ لحفظ صورة JunOS. أغلق نافذة التفضيلات بالنقر فوق تطبيق.

أنت الآن قادر على سحب Juniper Router من اللوحة اليسرى وإفلاتها في الهيكل.

ملاحظة: إذا كنت تريد إضافة العديد من أجهزة توجيه Juniper إلى الهيكل الخاص بك، فيجب عليك عمل نسخ متعددة من الصورة التي تم الحصول عليها في الخطوة 1. ثم من برنامج GNS3 انقر بزر الماوس الأيمن على كل جهاز توجيه Juniper -> تكوين -> في صورة JunOS: الإعداد ، حدد مسار ملف صورة مختلف لكل حالة.

مخاطر استخدام توزيعات Linux المتخصصة

0

توزيعات Linux المتخصصة استخدامات كالي لينكس,ماهو نظام kali linux,linux,نظام لينكس linux على نظام ويندوز windows,kali linux,windows vs linux,الجيل الخامس,تخلص من كل مشاكل الانترنت والمواقع المحجوبة مع برنامج,أمن المعلومات,نور الهدى لتكنولوجيا المعلومات,اختراق الفيسبوك بالصفحات المزورة,اختراق حسابات الفيسبوك بطرق الهاكر,مواقع الإنترنت المظلم,اختبار اختراق المواقع,اختراق حسابات الفيسبوك,طريقة الحماية من الفيروسات والبرمجيات الخبيثة,اختراق الفيسبوك في الوندوز

 

يتم تداول التوزيعات المتخصصة من قبل مجموعة كبيرة من الأشخاص ذوي الإهتمام الواحد.

ما هي مخاطر استخدام التوزيعات المتخصصة؟ هل يمكن تجنبها أو التقليل منها؟ إذا كانت الإجابة بنعم ، فكيف؟

في كثير من الأحيان لا يتم بناء توزيعات Linux هذه من الصفر، بل هي مشتقات من التوزيعات الحالية تم تعديلها لتلائم بعض الأغراض الأخرى بشكل أفضل، وخير مثال على ذلك هو Backtrack، الذي يعتمد على Ubuntu ولكن تم تعديله لمختبري الاختراق والمتسللين، أصبح فيما بعد Kali واستند إلى Debian وليس Ubuntu.

هناك أيضًا توزيعات صغيرة والتي لا تستند إلى أي شيء وعادة ما يكون لها هدف آخر غير الإنتاجية مثل تعليم الأشخاص كيفية العمل مع الحد الأدنى من توزيعات Linux.

لكن بالطبع هناك عدة مخاطر مرتبطة بإستخدام توزيعات لينكس المتخصصة:

نقص التحديثات

لينكس ليس نظام كامل و خالي من نقاط الضعف – و عندما يتم العثور على الثغرة الأمنية وتصحيحها من قبل المجتمع ، فعادةً ما يكون الأمر متروكًا لمشرفي التوزيعات لحزم هذه الإصلاحات وشحنها إلى مستخدميهم عبر أي آلية تحديث يستخدمها نظام التشغيل.

و باستخدام توزيعة متخصصة فمن المحتمل جدًا ألا تحدث هذه العملية أبدًا أو تحدث بتأخير كبير مما يتركك معرضا للهجوم.

إذا كانت التوزيعة التي تستخدمها مرتبطة ارتباطًا وثيقًا بتوزيعة أخرى فمن المحتمل جدًا أن يقوم القائمون عليها بالصيانة تلقائيًا بعكس مستودعات التوزيعة التي اشتقوا منها.

عدم اهتمام المجتمع

عندما أضاف Canonical برامج التجسس إلى Ubuntu، تم اكتشاف ذلك سريعًا نسبيًا من قبل المجتمع لأن الكثير من الأشخاص يستخدمون UbuntuK ولكن لا يمكن قول الشيء نفسه عن StarOS أو GoboLinux أو Crux أو Parabola أو Trillix أو Trisquel أو Linnix أو Ronix، جيث إذ قرر أحد المشرفين وضع “برامج غير مرغوب فيها” في توزيعاتهم فمن المحتمل أن يستغرق الأمر بعض الوقت قبل أن يلاحظها أي شخص – بناءً على حقيقة أن عددًا قليلاً جدًا من الأشخاص يستخدمون هذه التوزيعات.

عدم وجود اختبار

كما قلت ليس لدى العديد من هذه التوزيعات ميزانية عالية وغالبًا ما يكون المساهمين قليل جدا، فعلى سبيل المثال يحتوي مستودع GoboLinux على أربعة مساهمين بالمقارنة مع ديبيان لديها ~ 800.

من الطبيعي ألا يتمكن أربعة أشخاص من اختبار كل الاحتمالات على كل الأجهزة الممكنة لذلك قد يكون وجود خطأ يؤثر على التوزيعة على بعض الأجهزة القديمة التي تحاول تشغيلها عليها.

تنبع معظم هذه المشكلات مباشرة من حقيقة أن هذه التوزيعات متخصصة جدًا، و إذا كنت تريد توزيعة متخصصة فعليك أن تتحمل سلبيات ذلك.

يمكنك نظريًا بذل قصارى جهدك لمراجعة نظام التشغيل بنفسك للتأكد من عدم وجود برامج ضارة في أي من الحزم أو لضمان تصحيح الحزم التي تحتوي على نقاط ضعف في أسرع وقت ممكن، ولكن في هذه المرحلة فأنت تساهم بشكل أساسي في التوزيعة بنفسك بدلاً من استخدامها فقط الأمر الذي قد يكون عملاً أكثر مما يستحق.

برمجة الروبوتات باستخدام بايثون

0

برمجة الروبوتات باستخدام بايثون برمجة الروبوت,بايثون,برمجة,تعلم بايثون,استخدامات لغة البرمجة بايثون,تعلم برمجة الروبوت,برمجة البايثون,لغة البرمجة بايثون,تعلم البايثون,بايثون بالعربي,استخدامات بايثون,ماهي استخدامات بايثون,الروبوت,تصميم روبوت بايثون,تعليم الروبوت,كيف تقوم بعمل روبوت بشري باستخدام الاردوينو مع البرمجة الخاصة بها,برمجة روبوت,تعلم الروبوتات,تعلم بايثون من الهاتف,تطبيقات بايثون,بايثون من الهاتف,لغات برمجة,لغة البايثون,مجتمع بايثون العربي,لغبة البايثون,روبوتات


الروبوتات التكنولوجيا التي ستظل لفترة طويلة أحد أكثر المجالات التي أحدثت تغييرًا على مستوى البشرية، و يُعتقد أن مجال الروبوتات سيكون له أشد تأثير على البشر على المدى الطويل و عدم اليقين الوحيد العالق في الأجواء هو ما إذا كان هذا التأثير سيحدث تغييرًا إيجابيًا في العالم أم ندمًا لا مفر منه، في الوقت الحاضر هناك أكثر من خمسمائة لغة برمجة موجودة ومع ذلك عندما يتعلق الأمر بالروبوتات لا يوجد سوى عدد قليل منها يمتلك القوة الحسابية.

و من بين أفضل لغات البرمجة المستخدمة في الوقت الحاضر هي كل من Python و C ++ و Java، و سنتحدث في هذه المقالة عن استخدام بايثون في مجال الروبوتات و دورها في الثورة الصناعية الرابعة.

ما هي لغة بايثون؟

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

الروبوتات والتخصصات الأساسية

بعبارات بسيطة تعتبر الروبوتات دراسة متخصصة تتضمن مزيجًا من تقنيات العلوم والهندسة والإلكترونيات والفن، كما أصبح تأثير الروبوتات أكبر بشكل متزايد حيث تحاول المزيد من الشركات اكتساب ميزة تنافسية في مكان العمل.

يشار إلى المجالات التي تتكون منها الروبوتات باسم “التخصصات الأساسية”، و يقال إن الروبوتات تتكون من أربعة (4) تخصصات رئيسية: و هي الهندسة الكهربائية والهندسة الميكانيكية وعلوم الكمبيوتر والفنون كما لا يحتاج المرء إلى أن يكون خبيرًا في جميع التخصصات الأساسية – سيكون الفهم الأساسي للفنون والهندسة الكهربائية كافياً.

  • الهندسة الكهربائية
  • الهندسة الميكانكية
  • علوم الكمبيوتر
  • الفنون

عقل الروبوت

دماغ الروبوت هو ما يتحكم فيه، إذ يمكن التحكم في الروبوتات خارجيًا مثل عصا التحكم أو وحدة التحكم ويشار إليها باسم “الروبوتات الخالية من العقل”، كما يمكن التحكم في بعض الروبوتات من الداخل باستخدام متحكم دقيق يمثل محور كل الأنشطة.

يشبه المتحكم الدقيق وحدة المعالجة المركزية بمعنى أنه مسؤول أيضًا عن مراقبة كل أنشطة الماكينة والتحكم فيها ويختلف في الحجم والسعر وقوة المعالجة، ومع ذلك فقد تم تصميم وحدات التحكم الدقيقة لتلبية احتياجات الأجهزة ذات المستوى الأدنى.

عندما تريد شراء متحكم دقيق يوصى باختيار متحكم يحتوي على فلاش داخلي أو به ذاكرة EEPROM (ذاكرة للقراءة فقط قابلة للمسح والبرمجة كهربائيًا)، كما يجب عليك تحديد الهندسة المعمارية التي يعتمد عليها – قد يعتمد على هندسة Von Neumann أو هندسة Harvard.

عقل الروبوت

فهم Raspberry Pi

يعتبر Raspberry Pi كمبيوتر صغير بحجم البطاقة المصرفية، يعمل هذا الكمبيوتر المحمول على نظام Raspbian و هو مبني على نظام تشغيل Linux- من المثير للاهتمام معرفة أن Raspbian هو إصدار خاص من نظام التشغيل Linux والذي تم تصميمه خصيصًا لـ Raspberry Pi.

تم تصميم Raspberry Pi ليعمل على معالج Broadcom، هناك العديد من الأنواع أو المتغيرات لمعالج Broadcom المتاح للشراء مثل BCM2835 و BCM2836 و BCM2837 وما إلى ذلك، يمكن الإشارة إلى معالج Broadcom باسم “معالج النظام على رقاقة”، و ستختلف المواصفات مثل عدد معالجات ARM الموجودة على اللوحة وبطاقة الرسومات ومجموعة التعليمات التي تتبعها الشريحة وغير ذلك الكثير.

الجانب الرئيسي لـ Raspberry Pi الذي سيمكننا من الانغماس في مجال الروبوتات هو دبابيس GPIO الموجودة في Raspberry Pi و يرمز GPIO إلى دبابيس إخراج الإدخال للأغراض العامة، تعمل دبابيس GPIO هذه كوسيلة لنا لدمج المكونات مع Raspberry Pi، هناك 40 دبوس إخراج للأغراض العامة وجميعها لها وظائف مختلفة و فيما يلي شرح موجز للغرض العام من هذه المسامير:

تُستخدم المسامير الحمراء كمسامير طاقة – ستعمل على تشغيل أي مكون أو جهاز يتم الاتصال به. تأتي الطاقة من هذه الدبابيس مباشرة من Raspberry Pi نفسه.

تمتلك الدبابيس السوداء نفس وظائف المسامير الحمراء ، مثل دبابيس الطاقة.

تعمل الدبابيس الوردية كمسامير طرفية متسلسلة. يمكن استخدام هذه المسامير لتوصيل raspberry pi بالميكروكونترولر الخارجية مثل Arduino.

تسمح لنا الدبابيس الزرقاء بتوصيل العديد من الأجهزة التابعة لـ Raspberry Pi ، وبالتالي إنشاء اتصالات أكبر.

الدبابيس الخضراء مسؤولة عن تنفيذ تعليمات Raspberry Pi.

سأعرض لك الآن بعض أكواد بايثون لبرهنة انه لديه القدرة على تشغيل ضوء LED وإيقاف تشغيله مما يضمن توصيل المصباح بدبابيس GPIO على Raspberry Pi.

# أولاً سنحتاج إلى التأكد من تثبيت بايثون على 
# Raspberry Pi سنحتاج أيضًا إلى التأكد من أن لدينا إنترنت آمن
$ sudo apt-get install python-rpi.gpio python3-rpi.gpio
# نبدأ باستيراد الحزم اللازمة
# أولاً نقوم باستيراد حزمة Raspberry Pi GPIO
# بعد ذلك نقوم باستيراد طريقة sleep من حزمة الوقت

import RPi.GPIO as GPIO
from time import sleep
# نقوم بتهيئة نظامنا والبرنامج النصي لتجاهل جميع التحذيرات مؤقتًا
GPIO.setwarnings(False)
# نقوم بإعداد المسامير على Raspberry Pi 
# ترقيم دبوس GPIO

GPIO.setmode(GPIO.BOARD)
# نحن نستخدم الدبوس رقم 8 ونقوم بتعيينه ليكون دبوس الإخراج
# المستوى الحالي  في هذا الدبوس منخفض

GPIO.setup(8, GPIO.OUT, initial=GPIO.LOW)
#  من أجل وميض المصباح سنحتاج إلى السماح للتيار بالمرور
# مؤقتًا وبعد ذلك اقطع كل التدفق الحالي.
#  استخدام حلقة while loop  برنامجنا سيعمل إلى الأبد

while True:
# الخطوة 1: قم بتشغيل لمبة LED
 GPIO.output(8, GPIO.HIGH) # قمنا بتعيين رقم 8 لدبوس الإخراج على تيار مرتفع
sleep(1.5) # نقوم بإيقاف جميع الأنشطة لمدة ثانية ونصف
# الخطوة 2: قم بإيقاف تشغيل لمبة LED
 GPIO.output(8, GPIO.LOW) # # قمنا بتعيين رقم8 لدبوس الإخراج 8 على تيار منخفض
 sleep(1.5) # # نوقف كل نشاط لمدة 1.5 ثانية

#  من خلال التشغيل المستمر لهذا البرنامج سنرى
# لمبة LED على Raspberry Pi تعمل وتطفئ نفسها وبالتالي تومض

المقالة عبارة عن مقدمة إلى عالم الروبوتات- هناك العديد من المفاهيم التي أوصي بشدة بقراءتها وعدم الإكتفاء بما قرأته هنا.

قواميس بايثون المتداخلة: الدليل الكامل

0

قواميس بايثون المتداخلة: الدليل الكامل تعلم بايثون,بايثون,بايثون برنامج,اسهل كورس بايثون,بايثون موبايل,بايثون بالعربي,البايثون,البرمجة بلغة بايثون,شرح بايثون,بايثون ويب,لغة بايثون,أساسيات بايثون,تعلم الآلية,حل مشكلة البقع الملونه والخطوط,حل عطل الشاشه الملونه,حل مشكلة الشاشه الملونه,المطورون العرب,تحليل البيانات,اصلاح الوان الشاشه,ظهور الوان علي شاشه التلفون,الهاتف سقط وتغيرت الوان الشاشه,اصلاح شاشة الجوال,ظهو خطوط على شاشة الهاتف الايفون,خورزميات تعلم الآلة,الملفات

 
في هذا الدرس سنتعرف على قواميس بايثون المتداخلة، القواميس التي تمثل قيم قاموس آخر، ستتعلم كيفية إنشاء قواميس متداخلة والوصول إلى عناصرها وتعديلها والمزيد، ستتعلم أيضًا كيفية العمل مع القواميس المتداخلة لتحويلها إلى إطار بيانات Pandas.

مع نهاية هذا الدرس سنكون قد تعلمنا:

  • ما هي القواميس المتداخلة في بايثون
  • كيفية إنشاء قواميس متداخلة في بايثون
  • كيفية الوصول إلى العناصر وتعديلها وحذفها في القواميس المتداخلة
  • كيفية تحويل القواميس المتداخلة إلى إطار بيانات Pandas

القواميس المتداخلة في بايثون

قواميس بايثون عبارة عن حاوية هياكل بيانات تحتوي على مفاتيح وقيم يتم إنشاؤها باستخدام الأقواس المتعرجة {} حيث يمكن البحث عن قيمة من خلال الوصول إلى مفتاحها، دعونا نلقي نظرة على مثال بسيط من القاموس:

# قاموس بايثون بسيط user = { 'Name': 'Ahmed', 'Profession':'Geek' }

في القاموس أعلاه لدينا عنصر يسمى user. يمكننا الوصول إلى قيمه من خلال الرجوع إلى مفاتيح القاموس، لنفترض أننا أردنا الوصول إلى قيمة القاموس للمفتاح'Name"  يمكننا كتابتها
# الوصول إلى قيمة القاموس print(user.get('Name')). # same as user['Name'] # Returns: Ahmed

الشيء المثير للاهتمام في قواميس بايثون هو أنه يمكننا استخدام قواميس أخرى كقيم لقاموس أخر و هذا يقودنا إلى الموضوع الرئيسي لهذه المقالة.
لنفترض أننا أنريدالحصول على قاموس يحتوي على معلومات المستخدم بناءً على معرف المستخدم الخاص بشخص ما، دعونا ننشئ قاموسًا يخزن المعلومات على عدة مستخدمين مقسمًا حسب المعرف:
# فهم القواميس المتداخلة users = { 1: { 'Name': 'Ahmed', 'Profession':'geek' }, 2: { 'Name': 'Omar', 'Profession': 'writer' } }
في هذا المثال قمنا بتضمين قاموسنا السابق في القاموس الجديد الأكبر حجمًا، ما فعلناه هو إنشاء قاموس جديد متداخل و هذا ما سنتكلم عنه في القسم التالي بشكل متعمق.

إنشاء القواميس المتداخلة في بايثون

في هذا الجزء سنتعلم كيفية إنشاء قواميس متداخلة وهي قواميس لها قاموس آخر عبارة عن قيمة للقاموس الأولن دعنا نتعرف على كيفية إنشاء قواميس بايثون المتداخلة.
# إنشاء قاموس بايثون متداخل users = {} Ahmed = { 'Name': 'Ahmed', 'Profession':'Geek' } Kate = { 'Name': 'Omar', 'Profession': 'Writer' } users[1] = Ahmed users[2] = Omar print(users) # Returns: {1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 2: {'Name': 'Omar', 'Profession': 'Writer'}}
مالذي قمنا به ؟
  1. قمنا بإنشاء قاموس فارغ تحت إسم  users 
  2. أنشأنا قاموسين آخرين  Ahmed وOmar 
  3. ثم قمنا بتعيين هذه القواميس لتكون قيم المفاتيح 1 و 2  في قاموس users 

 الوصول إلى عناصر قواميس المتداخلة في بايثون 

في هذا الجزء سنتعلم كيفية الوصول إلى العناصر في قاموس بايثون المتداخل، في جزء سابق استخدمنا طريقة .get () للوصول إلى العناصر أما الأن دعونا نرى ما يحدث عندما نحاول الوصول إلى عنصر في قاموس متداخل: 

 

يمكننا أن نرى أنه قد تحصلنا على قاموس وبما أننا تحصلنا على هذا الأخير يمكننا الوصول إلى عناصر القاموس أيضا.

لنفترض أننا نريد الوصول إلى "اسم" المستخدم 1 ، فيمكننا كتابة ما يلي:

# الوصول إلى العناصر المتداخلة في قواميس بايثون
users = {
    1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 
    2: {'Name': 'Omar', 'Profession': 'Writer'}
    }

print(users.get(1).get('Name'))

# Returns: Ahmed 

تعديل العناصر في القواميس المتداخلة في بايثون

في هذا لجزء ستتعلم كيفية تعديل العناصر في القواميس المتداخلة و من أجل ذلك نستخدم نفس العملية التي نستخدمها لإعداد عنصر جديد في القاموس. 
لنفترض أننا نريد تغيير مهنة المستخدم 2 إلى  "abitat for Humanity" و يمكننا فعل ذلك :

# تعديل القاموس المتداخل
users = {
    1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 
    2: {'Name': 'Omar', 'Profession': 'Writer'}
    }

users[2]['Profession'] = 'Habitat for Humanity'
print(users)

# Returns: 
# {1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 2: {'Name': 'Omar', 'Profession': 'Habitat for Humanity'}}

حذف العناصر في القواميس المتداخلة في بايثون

تستخدم قواميس بايثون الكلمة الأساسية del لحذف المفتاتيح و القيم، و للقيام بذلك في قاموس متداخل نحتاج التعمق أكثر في القاموس، دعونا نرى كيف يمكننا حذف مفتاح "Profession" من القاموس 1:
# حذف عنصر من قاموس متداخل users = { 1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 2: {'Name': 'Omar', 'Profession': 'Writer'} } del users[1]['Profession'] print(users) # Returns: # {1: {'Name': 'Ahmed'}, 2: {'Name': 'Omar', 'Profession': 'Writer'}}

كما يمكننا حذف قاموس متداخل بالكامل باستخدام نفس الطريقة، نظرًا لأن القاموس المتداخل هو في الواقع مجرد مفتاح أو قيمة في قاموسنا الكبير، لنحذف القاموس الأول بالكامل 1:

# حذف قاموس متداخل بالكامل users = { 1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 2: {'Name': 'Omar', 'Profession': 'Writer'} } del users[1] print(users) # Returns: # {2: {'Name': 'Omar', 'Profession': 'Writer'}}

التكرار من خلال القواميس المتداخلة في بايثون

في هذا الجزء سنتعلم كيفية التكرار من خلال القواميس المتداخلة، و يمكن أن يفيدك هذا عندما تريد طباعة القيم في القاموس:

# التكرار من خلال القواميس المتداخلة users = { 1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 2: {'Name': 'Omar', 'Profession': 'Writer'} } def iterate_dict(dict_to_iterate): for key, value in dict_to_iterate.items(): if type(value) == dict: print(key) iterate_dict(value) else: print(key + ":" + value) iterate_dict(users) # Returns: # 1 # Name:Ahmed # Profession:Geek # 2 # Name:Omar # Profession:Writer

تحويل قاموس بايثون متداخل إلى  إيطار بيانات Pandas

في هذا الجزء الأخير سنتعلم كيفية تحويل قاموس متداخل إلى إيطار بيانات Pandas، يمكننا تمرير القاموس المتداخل إلى دالة DataFrame ().
import pandas as pd users = { 1: {'Name': 'Ahmed', 'Profession': 'Geek'}, 2: {'Name': 'Omar', 'Profession': 'Writer'} } df = pd.DataFrame(users).T print(df) # Returns # Name Profession # 1 Ahmed Geek # 2 Omar Writer

إلى هنا أكون قد إنتهيت من هذا الدرس وتعرفنا من خلاله على القواميس المتداخلة في بايثون، تعلمنا كل من القواميس المتداخلة ثم تعلمنا كيفية الوصول إلى عناصرها وتعديلها وحذفها. أخيرًا تعلمنا كيفية التكرار على القواميس المتداخلة وكذلك كيفية قراءتها في Pandas DataFrames.