برمجةوتقنية المعلومات C. P. W
620 subscribers
810 photos
94 videos
303 files
644 links
عالم الحاسوب برمجه وتقنيه وتطوير شرح كل ما يتطلب في مجال علوم الحاسوب والبرمجة
https://t.me/programming_C_w
قنات الجرافيكس @l_d_gh
#Digitalmarketing
#programming
#AI #CPA
#learn
التواصل معي @Eng_sharaf1
Download Telegram
‏مبرمج ترك شغله عشان يصير كهربائي 💔

‏مطور عمره 31 سنة ضبح من الاجتماعات اللي ما تخلص ومن الكمبيوتر ومن الشغل المؤسسي اللي بلا معنى. المسكين كان ياخذ 95 ألف دولار زائد بونص 10% بس كان يبي يشتغل بيده ويشوف نتيجة ملموسة. عشان كذا قرر يترك كل شي وقدم على التدريب في نقابة الكهربائيين.

‏احترق في شغل فقرر يحترق في شغل ثاني 😅
‏امس Hugging Face نزلت تقرير مفصل عن حادثه اختراقها من الذكاء وحاولت الخصها واترجمها لكم

‏هذي القصة كما روتها Hugging Face. فيها مصطلحات تقنية كثيرة بس ما تفهم القصه بدونها.
‏باختصار: وكيل OpenAI على موديل جديد ما قعد يحل اختبار الأمن السيبراني، قرر يسرق الإجابات وسرقها

‏الخط الزمني:
‏📔 9 يوليو: الوكيل يمر بتقييم داخلي لقدرات OpenAI السيبرانية. فلاتر الأمان هناك معطّلة عمدًا عشان يقيسون المستوى الخام للموديل. الوكيل يلقى ثغرة zero day في بروكسي سجل الحزم، ويخرج من الحاوية المعزولة للإنترنت، وبعدها يخترق خدمة عامة لتشغيل الكود وياخذ فيها root. الوكيل عين لنفسه صلاحيات المدير تخيلوا.
‏بنفس اليوم يركّب قناة تحكم تخيلوا استخدم خدمات الإنترنت المجانية: خدمات request-capture ومواقع pastebin ومشاركة الملفات. يقطّع الأوامر لقطع ويغلّفها gzip+base64 ويبدّل المنافذ باستمرار كل ما تقفل واحد عشان ما ينمسك.
‏📔 10 يوليو: الوكيل يبحث في محركات البحث والـAPI عن الأسماء اللي يشوفها في بيئته هو. يعني عمليًا يبحث عن نفسه. وعلى الأرجح يستنتج إن إجابات ExploitGym/CyberGym ممكن تكون على Hugging Face.
‏الوكيل يرفع على Hugging Face داتاسيتات مجهّزة بعناية:
‏وحدة تخلي معالج ملفات HDF5 يقرأ ملفات محلية على سيرفر Hugging Face. وكذا ياخذ متغيرات البيئة مع التوكنز وكود المعالج نفسه.
‏والثانية حقن Jinja2 يشغّل Python عشوائي داخل pod إنتاجي في Kubernetes. ونتائج الأوامر يطلّعها عبر API الموقع وداتاسيتات مشفّرة خاصة فيه.
‏📔 11 يوليو: ذروة النشاط. 7,677 عملية في يوم واحد. في أقل من 13 ساعة يمشي الوكيل من pod إنتاجي واحد لين cluster-admin في عدة عناقيد داخلية في Hugging Face.
‏يسرق توكنز service-account ويدخل على cloud metadata ويرفع pod مميّز بقرص المضيف وياخذ root على النود. وبعدها يبني أسطول ذاتي على 11 نود، ويقرأ MongoDB الداخلية وKubernetes secret واحد فيه 136 مفتاح دفعة وحدة.
‏من ضمنها مفتاح شبكة mesh-VPN المؤسسية للضحية وبيانات اعتماد مشتركة لسيرفر داخلي. وبسبب إعداد سيء كان هذا الاعتماد الواحد مربوط بـsystem:masters في عدة عناقيد مرة وحدة. عشان كذا حصل الوكيل على cluster-admin في اثنين منها حرفيًا في ثانية. معمارية اقتصادية جدًا لين ما شافها الروبوت.
‏📔 12 يوليو: الوكيل يبدأ يستفيد من الضحية نفسها. خلال الحملة كلها سجّل 181 جهاز مؤقت في الشبكة المؤسسية، ورفع بروكسي SOCKS من داخل الساندبوكسات، وشاف 22 عقدة داخلية في Hugging Face. وحاول يدخل قاعدة البيانات الرئيسية بس private-link allowlist وقفه.
‏وآخر الليل يوصل لإدارة السورس كود، ويصدر لنفسه GitHub App token بصلاحيات كتابة، ويفتح pull request علشان يشغل الـCI ويسحب اعتمادات جديدة.
‏المحاولة ما نجحت، وما دخل شي خبيث في الحزم والصور المنشورة.
‏📔 13 يوليو: تثبيت وتنظيف آثار. لودر من pastebin، وإعادة كتابة DNS، وتوكنز جديدة قصيرة العمر، ومفتاح RSA، وحتى بروكسي CORS على Hugging Face نفسه كمخرج احتياطي للإنترنت. الساعة ⁦ 13:37 ⁩ رصدوا آخر نشاط له معنى، وبعدها فريق Hugging Face يقطع الوصول. آخر حدث مسجّل ⁦ 14:14 ⁩ UTC.
‏في النهاية من محتوى المستخدمين ما وصل الوكيل إلا لخمس داتاسيتات فيها حلول مسائل ExploitGym/CyberGym. يعني حلّها؟
‏النماذج والداتاسيتات والـSpaces والحزم الثانية ما تضررت حسب Hugging Face. والقاعدة الرئيسية وسلسلة توريد البرمجيات ظلت سليمة.
‏تخيلوا إن الموظفين وهم يحققون في الحادثة استخدموا هم كمان نماذج ذكاء اصطناعي، بس Claude Opus وFable رفضوا يحللون جزء كبير من السجلات واعتبروها طلب خطير. عشان كذا Hugging Face شغّلوا GLM-5.2 عندهم وفكّوا فيه الـpayloads المخفية. شكرًا للنماذج الصينية.

‏كل التفاصيل هنا: https://huggingface.co/blog/agent-intrusion-technical-timeline
اصحاب قنوات تيليجرام اللي مستخدمين نظرية القطيع ويقومون بحذف صور بروفايل قنواتهم وحساباتهم😂.

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

ولو مثلًا افترضنا وجود هكذا ثغرة خطيرة في تيليجرام كيف يمكن للشركة ان لا تعالجها؟

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

خلاصة الحديث ان هذا الكلام غير صحيح
، فالقنوات والحسابات التي تضع صوراً سليمة ولا تنتهك سياسة تيليجرام هي في أمان تام .
الميثود ()dict.values

تُستخدم الميثود ()dict.values في بايثون للحصول على جميع القيم (values) في القاموس (dictionary). تقوم هذه الطريقة بإرجاع عرض (view) للقيم في القاموس ككائن نوع dict_values.

هذه الطريقة مفيدة عندما تريد الوصول إلى قيم القاموس، ولكن ليس بالضرورة إلى المفاتيح (Keys).

يمكنك استخدام ()dict.values في الحلقات أو لتنفيذ عمليات على قيم القاموس، مثل جمع جميع القيم أو البحث عن قيمة معينة.
This media is not supported in your browser
VIEW IN TELEGRAM
أطلقت جوجل منافسًا مجانيًا لـ Duolingo يُدعى Little Language Lessons وهو تجربة في مراحله الأولى.

يولد محاورين مخصصين للممارسة، وأدلة حول اللهجات العامية، ومجموعات كلمات مرئية لأكثر من 40 لغة.

✓ أكثر من 40 لغة (الإنجليزية، الألمانية، الصينية، إلخ...)
✓ 0% اشتراكات وخطط مدفوعة
✓ 100% فائدة عملية

تجربة الأداة : https://labs.google/lll/en
الميثود ()count

تُستخدم count() method في بايثون لحساب عدد مرات ظهور عنصر (element) معين في قائمة أو تجميع أو سلسلة. إليك بناء هذه الطريقة:
count(element)

حيث أن ال element هي القيمة التي ترغب في حسابها في التسلسل (القائمة أو السلسلة النصية).
Pythin for l1 Taiz university.pdf
1.3 MB
هذا الملف يشرح أساسيات لغة Python ، ويتضمن :
◇ أساسيات اللغة
◇ العمليات والمعاملات: الحسابية، المنطقية، والمقارنة.
◇ النصوص (Strings) وطرق التعامل معها.
◇ هياكل البيانات: القوائم، الصفوف (Tuples)، المجموعات، القواميس.
◇ التراكيب التحكمية: الشروط ‎if‎ والحلقات ‎for / while‎.
◇ الدوال (Functions) وأنواع المعاملات ونطاق المتغيرات.
◇ معالجة الأخطاء (Exceptions).
◇ التعامل مع الملفات وملفات ‎JSON‎.
◇ الوحدات (Modules) والمكتبات القياسية والخارجية.
بعد أن تعلمت الأساسيات والمنطق البرمجي ، استخدم الان itertools بدلاً من الحلقات في مشاريعك الحقيقية .

على الرغم من أن ال Loops رائعة، إلا أن لها قيودًا، خاصةً في أساليب البرمجة الحديثة ولبعض أنواع المهام.
فهم هذه القيود يساعد في اختيار الأداة المناسبة للمهمة.
كل تكرار للحلقة في بايثون يؤدي إلى تكاليف إضافية لل Interpreter الخاص باللغة (المفسر) ، مثل التحقق من أنواع البيانات وإدارة الذاكرة.
وقد يتراكم ذلك بشكل ملحوظ على مجموعات البيانات الكبيرة.
.
لتجاوز هذا القيد، تحتوي بايثون على مكتبة مضمنة ملائمة itertools.
على سبيل المثال، افترض أنك تريد إنشاء جميع الأزواج الفريدة من قائمة محددة ، لا يهم الترتيب، ولا يجب أن يشكل أي عنصر زوجًا مع نفسه.
لتجنب تضخيم الكود وتقليل مخاطر الأخطاء، يمكنك استخدام مكتبة itertools. تقوم الدالة ()itertools.combinations مباشرةً بإنشاء جميع مجموعات العناصر الفريدة من iterable دون تكرار ودون اعتبار الترتيب.
في الصورة أعلاه ، إليك كيف يمكن كتابة الكود باستخدام combinations من itertools .
◇ يعتبر Linux مجاني
◇ و Docker مجاني
◇ و Kubernetes مجاني
◇ و GitHub & Git مجانيان
◇ و Python مجاني
◇ و AWS، GCP، Azure مجانية (مع حدود)
◇ و Terraform مجاني

💻 أنت بحاجة فقط كمبيوتر + إنترنت
⏱️ يوميًا من ساعة إلى ساعتين ستتعلم مهارات تغير حياتك


صفر أعذار. ابدأ التعلم اليوم.
.
إن دمج منطق else داخل هياكل التكرار for و while يمثل فرصة هائلة لتعزيز كفاءة البرمجة لدينا.

فإننا نستخدم دورة while كمنصة ديناميكية لتنفيذ الشروط الاستراتيجية حتى نصل إلى حالة النجاح المثالية. 🌟

أما دورة for، فهي أداة قوية لتمكين التكرار الذكي لسطور الكود، مما يحول المهام الروتينية إلى عمليات مؤتمتة. تخيلوا القدرة على تحقيق هدفنا في طباعة الأرقام حتى 10 دون الحاجة إلى 10 مبادرات منفصلة، بل من خلال استغلال تسلسل مدروس يعكس رؤية شاملة! 💡

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

لنغوص معًا في هذا النموذج الملهِم الذي يوضح كيفية البحث عن "الإبرة" (needle) ضمن "كومة القش" (haystack) لتحقيق أقصى قيمة ممكنة! 📈 #Python #GrowthMindset #TechInnovation #CodingJourney
نصيحة Python : استخدم @property فقط للعمليات O(1) 🐍⚡

يتوقع الناس عادةً أن كل ما يبدو وكأنه وصول إلى سمة يعمل بسرعة ⚡🏃‍♂️.

لا أحد يريد الضغط على Ctrl-C أثناء قراءة سمة لأن هناك حسابًا مخفيًا لمستوى Deep Thought يستغرق 7.5 مليون سنة ⏳🤯:
>>> life.meaning
42
python_basics.pdf
212.3 KB
أوراق Cheatsheets بتفيدكم في مجال ال Data Analysis وعلوم البيانات✨️.
يسعدنا الإعلان عن تحويل مشروع TeleSpace إلى مشروع مفتوح المصدر (Open Source) ليكون متاحاً بالكامل لمجتمع المطورين 🌎.

لمن لم يتعرف على المشروع بعد، يُعد TeleSpace بيئة تخزين سحابية متكاملة تعتمد على البنية التحتية غير المحدودة لـ Telegram🚀:
⛏ مبني بالكامل باستخدام لغة Python 🐍.

⚙️يعتمد على مكتبة Python-Telegram-Bot (PTB) كمحرك أساسي لضمان المعالجة المتزامنة (Asynchronous) والتفاعل عالي الأداء مع خوادم تيليجرام ☄️.

🖥 يستخدم PostgreSQL كنظام أساسي لإدارة البيانات الوصفية للملفات (Metadata)، مما يضمن سلامة البيانات وسرعة الاستعلامات 🖥.
وفي هذا التحديث، تم تزويد النظام بواجهة برمجة تطبيقات (API) متكاملة باستخدام FastAPI⚙️. وتُعد هذه الخطوة الأولى لتحويل TeleSpace من مجرد أداة إلى خدمة BaaS ، مما يتيح للمطورين دمج النظام بسلاسة مع أي تطبيقات أو منصات خارجية، واستخدامه كمحرك أساسي لرفع وإدارة الملفات 👨‍💻.

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

🖥رابط المستودع: https://github.com/H55an/TeleSpace
فرز الـ Dictionary حسب القيم

فرز بيانات الـ Dictionary حسب قيم المفاتيح، وليس المفاتيح نفسها، يؤدي في كثير من الأحيان إلى حيرة شديدة.

يتم حل المشكلة بشكل بسيط باستخدام الوسيط key لدالة sorted لتحديد الدالة التي سيتم استدعاؤها على كل عنصر قبل المقارنة.
الحصول على أكبر أو أصغر الأرقام من القائمة

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

تقوم الدالة permutations من وحدة itertools بإرجاع مكرر مع تبديلات متتالية من العناصر في التسلسل المدخل iterable. يتم تضمين كل مجموعة في ترتيب يحتوي على r عناصر.

إذا لم يتم تحديد r أو كانت None، فسيكون r بشكل افتراضي يساوي طول iterable وسيتم توليد جميع التبديلات الممكنة بالطول الكامل.