🧠 آغاز ثبتنام رایگان مسابقات بینالمللی هوش مصنوعی رایان (Rayan) | دانشگاه صنعتی شریف
🪙با بیش از ۳۵ هزار دلار جایزه نقدی
🎓چاپ دستاوردهای ۱۰ تیم برتر در کنفرانسها/مجلات برتر بینالمللی هوش مصنوعی
👥 امکان شرکت به صورت تیمهای ۱ تا ۴ نفره
🗓شروع مسابقه از ۲۶ مهرماه ۱۴۰۳
💬موضوعات مورد بررسی اعتمادپذیری در یادگیری عمیق:
💬 Model Poisoning
💬 Compositional Generalization
💬 Zero-Shot Anomaly Detection
👀 مسابقات بینالمللی هوش مصنوعی رایان با حمایت معاونت علمی ریاستجمهوری و موضوع Trustworthy AI، توسط دانشگاه صنعتی شریف برگزار میگردد. این مسابقه در ۳ مرحله (۲ مرحله مجازی و ۱ مرحله حضوری) از تاریخ ۲۶ مهر آغاز میشود.
⭐️ رایان جهت حمایت از تیمهای برتر راهیافته به مرحله سوم، ضمن تأمین مالی بابت هزینه سفر و اسکان، دستاوردهای علمی تیمهای برتر را در یکی از کنفرانسها یا مجلات مطرح این حوزه با ذکر نام اعضای تیم در مقالهی مربوطه، چاپ و منتشر خواهد کرد. این شرکتکنندگان برای دستیابی به جایزه ۳۵ هزار دلاری برای تیمهای برتر، در فاز سوم به رقابت میپردازند.
🪙با بیش از ۳۵ هزار دلار جایزه نقدی
🎓چاپ دستاوردهای ۱۰ تیم برتر در کنفرانسها/مجلات برتر بینالمللی هوش مصنوعی
👥 امکان شرکت به صورت تیمهای ۱ تا ۴ نفره
🗓شروع مسابقه از ۲۶ مهرماه ۱۴۰۳
💬موضوعات مورد بررسی اعتمادپذیری در یادگیری عمیق:
💬 Model Poisoning
💬 Compositional Generalization
💬 Zero-Shot Anomaly Detection
👀 مسابقات بینالمللی هوش مصنوعی رایان با حمایت معاونت علمی ریاستجمهوری و موضوع Trustworthy AI، توسط دانشگاه صنعتی شریف برگزار میگردد. این مسابقه در ۳ مرحله (۲ مرحله مجازی و ۱ مرحله حضوری) از تاریخ ۲۶ مهر آغاز میشود.
⭐️ رایان جهت حمایت از تیمهای برتر راهیافته به مرحله سوم، ضمن تأمین مالی بابت هزینه سفر و اسکان، دستاوردهای علمی تیمهای برتر را در یکی از کنفرانسها یا مجلات مطرح این حوزه با ذکر نام اعضای تیم در مقالهی مربوطه، چاپ و منتشر خواهد کرد. این شرکتکنندگان برای دستیابی به جایزه ۳۵ هزار دلاری برای تیمهای برتر، در فاز سوم به رقابت میپردازند.
🧑💻Cyber.vision🧑💻
🧠 آغاز ثبتنام رایگان مسابقات بینالمللی هوش مصنوعی رایان (Rayan) | دانشگاه صنعتی شریف 🪙با بیش از ۳۵ هزار دلار جایزه نقدی 🎓چاپ دستاوردهای ۱۰ تیم برتر در کنفرانسها/مجلات برتر بینالمللی هوش مصنوعی 👥 امکان شرکت به صورت تیمهای ۱ تا ۴ نفره 🗓شروع مسابقه از…
Linkedin
Rayan AI Contest | LinkedIn
Rayan AI Contest | 917 followers on LinkedIn. Rayan AI Contest | 🏆 Rayan International Artificial Intelligence Contest
با سلام و شب بخیر ❤️دوستانی که به دلیل بالا بودن قیمت های دوره های در سایت های آموزشی توانایی زیادی برای پرداخت خرید دوره رو ندارند بنده تصمیم گرفتم که یه بستر برای دوستانی ایجاد کنم به محتوای به روز شده و کامل دسترسی پیدا کنند و از فرصتی که دارند استفاده درست کنند در همین راستا بنده تصمیم گرفتم یک چنل جداگانه آماده کنم برای خرید دوره ها به صورت اشتراکی توضیحات کامل به این طور می باشد که دور های که خریداری می شود فقط در اختیار دوستانی قرار میگیرد که در خرید هزینه پرداخت میکنند و برای جلوگیری از درز کردن محتویات دوره که فردا روزی خدا نکرده کسی بگه این دوره ها کرک شده یا پاب شده بنده هر دوره را در یک چنل جداگانه قرار داده و قابلیت فوروارد هم می بندم چیزی به اسم کرک کردن و پاب کردن اصلا وجود ندارند ما اینجا قصد سواستفاده نداریم فقط داریم بستری رو فراهم میکنیم که به دوستانی که توانایی زیادی برای پرداخت هزینه دوره ندارند ایجاد کنیم که به هدف هاشون برسن❤️🥰
https://t.iss.one/HacktasticLearningcyber
لینک چنل رو براتون قرار میدم و مورد آخر که لازم به ذکر هست ما در چنل نظر سنجی قرار می دهیم و طبق نیاز فراگیر ها دوره رو قرار میدهیم 🥰
لینک چنل رو براتون قرار میدم و مورد آخر که لازم به ذکر هست ما در چنل نظر سنجی قرار می دهیم و طبق نیاز فراگیر ها دوره رو قرار میدهیم 🥰
Telegram
Hacktastic Learning
این چنل به جهت خرید دوره های آموزشی در زمینه هک و امنیت می باشد هر گونه درخواست دوره با هماهنگی بنده انجام می شود
آیدی ادمین : @Mtio975
جهت درخواست دوره
آیدی ادمین : @Mtio975
جهت درخواست دوره
🧑💻Cyber.vision🧑💻 pinned «https://t.iss.one/HacktasticLearningcyber لینک چنل رو براتون قرار میدم و مورد آخر که لازم به ذکر هست ما در چنل نظر سنجی قرار می دهیم و طبق نیاز فراگیر ها دوره رو قرار میدهیم 🥰»
بسیاری از افرادی که در حوزههای علوم و مهندسی (که خارج از هسته اصلی هوش مصنوعی هستند) فعالیت میکنند وقتی از عبارات «هوش مصنوعی» یا «روشهای مبتنی بر هوش مصنوعی» استفاده میکنند منظور اصلیشان پردازش سیگنال است، نه هوش مصنوعی!
حالا فکر کنید چرا باید از نیمهی شب گذشته، به این موضوع فکر کنم!
حالا فکر کنید چرا باید از نیمهی شب گذشته، به این موضوع فکر کنم!
🌐 برنامهنویسی سطح بالا و سطح پایین 🌐:
برنامهنویسی سطح بالا (High-level programming)
مثل زبانهایی که ما معمولاً مینویسیم و میخونیم (مثل Python، Java و C++) به انسانها نزدیکتر هستند و با جملات و عبارات قابل فهمی نوشته میشن. این زبانها خیلی از جزییات سختافزاری مثل مدیریت حافظه یا کار با CPU رو از کاربر پنهان میکنن و همین باعث میشه که برنامهنویسی باهاشون سادهتر باشه.
مثال:
print("Hello, World!")
همین یک خط کد، به سادگی پیام "Hello, World!" رو چاپ میکنه.
برنامهنویسی سطح پایین (Low-level programming)
بیشتر به زبانی نزدیکه که کامپیوترها متوجه میشن؛ مثل اسمبلی (Assembly) یا حتی زبان ماشین (Machine Language). توی این زبانها باید دقیقاً مشخص کنیم که چی داره توی CPU و حافظه اتفاق میافته و این کدها معمولاً بسیار پیچیدهتر و دشوارترند.
مثال (Assembly):
MOV AH, 09
MOV DX, OFFSET message
INT 21H
این قطعه کد در زبان اسمبلی، به سختافزار مستقیم دستور میده تا متنی رو چاپ کنه.
حالا برنامهنویسی پویا چیه؟ 🤔
برنامهنویسی پویا (Dynamic Programming Language) یک نوع از زبانهای برنامهنویسی سطح بالاست که انعطافپذیرتره و خیلی از تصمیمات و رفتارها رو در زمان اجرای برنامه میگیره، نه در زمان کامپایل. این یعنی شما میتونید در طول اجرای برنامه، ساختارهای دادهها یا حتی خود کد رو تغییر بدید!
زبانهای پویایی مثل Python یا JavaScript به برنامهنویس اجازه میدن تا بدون نیاز به مشخص کردن نوع دادهها از قبل (مثل int یا string)، کد بنویسن. این باعث میشه که نوشتن و تغییر کد سریعتر و راحتتر بشه.
یک مثال از برنامهنویسی پویا:
این کد به طور خودکار نوع متغیرها رو تشخیص میده و به کاربر اجازه میده تا در حین اجرای برنامه با نوعهای مختلف کار کنه:
x = 10
print(x)
x = "Hello"
print(x)
همونطور که میبینید، متغیر x اول یک عدد بود و بعد به یک رشته تبدیل شد، بدون اینکه لازم باشه ما نوعش رو به طور صریح تغییر بدیم. این یکی از ویژگیهای جالب زبانهای پویاست! 🎯
منابع 📚:
Wikipedia: Dynamic Programming Language
GeeksforGeeks: High Level vs Low Level Programming Languages
RealPython: Python Type System
#DynamicProgramming
#ProgrammingLanguages
#HighLevelLanguages
#LowLevelLanguages
#PythonCoding
#JavaScriptProgramming
#LearnToCode
#SoftwareDevelopment
برنامهنویسی سطح بالا (High-level programming)
مثل زبانهایی که ما معمولاً مینویسیم و میخونیم (مثل Python، Java و C++) به انسانها نزدیکتر هستند و با جملات و عبارات قابل فهمی نوشته میشن. این زبانها خیلی از جزییات سختافزاری مثل مدیریت حافظه یا کار با CPU رو از کاربر پنهان میکنن و همین باعث میشه که برنامهنویسی باهاشون سادهتر باشه.
مثال:
print("Hello, World!")
همین یک خط کد، به سادگی پیام "Hello, World!" رو چاپ میکنه.
برنامهنویسی سطح پایین (Low-level programming)
بیشتر به زبانی نزدیکه که کامپیوترها متوجه میشن؛ مثل اسمبلی (Assembly) یا حتی زبان ماشین (Machine Language). توی این زبانها باید دقیقاً مشخص کنیم که چی داره توی CPU و حافظه اتفاق میافته و این کدها معمولاً بسیار پیچیدهتر و دشوارترند.
مثال (Assembly):
MOV AH, 09
MOV DX, OFFSET message
INT 21H
این قطعه کد در زبان اسمبلی، به سختافزار مستقیم دستور میده تا متنی رو چاپ کنه.
حالا برنامهنویسی پویا چیه؟ 🤔
برنامهنویسی پویا (Dynamic Programming Language) یک نوع از زبانهای برنامهنویسی سطح بالاست که انعطافپذیرتره و خیلی از تصمیمات و رفتارها رو در زمان اجرای برنامه میگیره، نه در زمان کامپایل. این یعنی شما میتونید در طول اجرای برنامه، ساختارهای دادهها یا حتی خود کد رو تغییر بدید!
زبانهای پویایی مثل Python یا JavaScript به برنامهنویس اجازه میدن تا بدون نیاز به مشخص کردن نوع دادهها از قبل (مثل int یا string)، کد بنویسن. این باعث میشه که نوشتن و تغییر کد سریعتر و راحتتر بشه.
یک مثال از برنامهنویسی پویا:
این کد به طور خودکار نوع متغیرها رو تشخیص میده و به کاربر اجازه میده تا در حین اجرای برنامه با نوعهای مختلف کار کنه:
x = 10
print(x)
x = "Hello"
print(x)
همونطور که میبینید، متغیر x اول یک عدد بود و بعد به یک رشته تبدیل شد، بدون اینکه لازم باشه ما نوعش رو به طور صریح تغییر بدیم. این یکی از ویژگیهای جالب زبانهای پویاست! 🎯
منابع 📚:
Wikipedia: Dynamic Programming Language
GeeksforGeeks: High Level vs Low Level Programming Languages
RealPython: Python Type System
#DynamicProgramming
#ProgrammingLanguages
#HighLevelLanguages
#LowLevelLanguages
#PythonCoding
#JavaScriptProgramming
#LearnToCode
#SoftwareDevelopment
پیش نیازها:
انگیزه داشته باشید:
انگیزه در یادگیری توسعه اکسپلویت امری کلیدی هستش. بجای اینکه خودتون رو مجبور به گذروندن موضوعاتی کنید که احساس خستگی میکنید، به علایق خودتون عمل کنید. اگه علاقه خودتون رو از دست دادید، موضوع رو عوض کنید و بعداً برگردید. حفظ انگیزه مهمتر از دنبال کردن ترتیب “درست” هستش. در طول این مسیر ناامید خواهید شد، ناامیدی بخش کلیدی توسعه اکسپلویت هستش و شما باید یاد بگیرید که اونرو بپذیرید و به پیش برید.
یادگیری زبان برنامه نویسی C :
یادگیری C به معنای تبدیل شدن به یک برنامهنویس C نیست، بلکه درک مدل حافظه CPU هستش. از اونجایی که باگهای خرابی حافظه در این سطح به حافظه حمله میکنن، C دقیقترین مدل ذهنی رو ارائه میده.
شما باید درک جامعی از حافظه نرمافزار، مناطق مختلف، تخصیص ها و اشاره گرها داشته باشید. پست Evan Miller با عنوان “You Can’t Dig Upwards” مدل ذهنی رو که از نوشتن C بدست میارید و در زبانهایی مانند پایتون بدست نمیارید رو توضیح میده.
کد ماشین/زبان اسمبلی x86-x64 :
بسیاری از منابع توصیه شده بر روی اکسپلویت کردن باینریهای x86-x64 تمرکز دارن که در دسکتاپها و لپتاپها رایج هستن. برخلاف برنامهنویسها، توسعه دهندگان اکسپلویت با کد ماشین “خام” کار میکنن که فاقد اکثر امکانات موجود برای برنامهنویسهاست.
درک اونچه که خود CPU میبینه مهمه. برخی از موضوعات مهم برای درک، شامل موارد زیر هستن:
قراردادهای فراخوانی توابع و سیستم کالها (Syscall)
تقسیم بندی حافظه (Memory segmentation)
ترجمه نوعهای سطح بالا به بایتهای خام (raw bytes) (در اسمبلی، همه چیز فقط بایت در حافظه یا رجیستر هستش)
برای یادگیری این موارد میتونید از دوره ی رایگان مهندسی معکوس نرم افزار (Software Reverse Engineering) استفاده کنید که با محوریت درک کدهای اسمبی در حال انتشار هستش.
دانش یک زبان اسکریپت نویسی:
اکسپلویت کردن شامل تعامل با نرمافزارهای دیگه هستش که اغلب با استفاده از یک زبان اسکریپتنویسی انجام میشه. پایتون و کتابخونه PwnTools انتخابهای رایجی هستن، اما هر زبانی دیگه ای رو میتونید برای این کار انتخاب کنید.
دانش اولیه استفاده از لینوکس:
بیشتر منابع مبتنی بر لینوکس هستن، بنابراین باید با ترمینال لینوکس و ابزارهای خط فرمان رایج راحت باشید.
Pwn College – Fundamentals :
بخش Fundamentals ماژولهایی رو ارائه میده که بیشتر این موضوعات رو پوشش میدن و ارزش بررسی قبل از شروع رو دارن.
راه اندازی محیط:
منابعی که اینجا معرفی میشن، سعی شده مواردی باشن که به راحتی در دسترس باشن. مشکل اصلی نسخه ی قبلی رودمپ، این بود که راه اندازی یک محیط کاری سخت بود.
بیشتر منابعی که اینجا معرفی شدن رو میتونید با یک ویرایشگر متن برای یادداشتهای شخصی و یک مرورگر طی کنید. البته برای اجرای برخی از باینری ها باید دسترسی به لینوکس داشته باشید که برای این کار میتونید از یک ماشین مجازی استفاده کنید. البته یک بخش اختیاری هم وجود داره که هدفش بررسی توسعه ی اکسپلویت در معماری های دیگه هستش و بنابراین برای این بخش، نیاز به اجرای باینری در Qemu دارید.
انگیزه داشته باشید:
انگیزه در یادگیری توسعه اکسپلویت امری کلیدی هستش. بجای اینکه خودتون رو مجبور به گذروندن موضوعاتی کنید که احساس خستگی میکنید، به علایق خودتون عمل کنید. اگه علاقه خودتون رو از دست دادید، موضوع رو عوض کنید و بعداً برگردید. حفظ انگیزه مهمتر از دنبال کردن ترتیب “درست” هستش. در طول این مسیر ناامید خواهید شد، ناامیدی بخش کلیدی توسعه اکسپلویت هستش و شما باید یاد بگیرید که اونرو بپذیرید و به پیش برید.
یادگیری زبان برنامه نویسی C :
یادگیری C به معنای تبدیل شدن به یک برنامهنویس C نیست، بلکه درک مدل حافظه CPU هستش. از اونجایی که باگهای خرابی حافظه در این سطح به حافظه حمله میکنن، C دقیقترین مدل ذهنی رو ارائه میده.
شما باید درک جامعی از حافظه نرمافزار، مناطق مختلف، تخصیص ها و اشاره گرها داشته باشید. پست Evan Miller با عنوان “You Can’t Dig Upwards” مدل ذهنی رو که از نوشتن C بدست میارید و در زبانهایی مانند پایتون بدست نمیارید رو توضیح میده.
کد ماشین/زبان اسمبلی x86-x64 :
بسیاری از منابع توصیه شده بر روی اکسپلویت کردن باینریهای x86-x64 تمرکز دارن که در دسکتاپها و لپتاپها رایج هستن. برخلاف برنامهنویسها، توسعه دهندگان اکسپلویت با کد ماشین “خام” کار میکنن که فاقد اکثر امکانات موجود برای برنامهنویسهاست.
درک اونچه که خود CPU میبینه مهمه. برخی از موضوعات مهم برای درک، شامل موارد زیر هستن:
قراردادهای فراخوانی توابع و سیستم کالها (Syscall)
تقسیم بندی حافظه (Memory segmentation)
ترجمه نوعهای سطح بالا به بایتهای خام (raw bytes) (در اسمبلی، همه چیز فقط بایت در حافظه یا رجیستر هستش)
برای یادگیری این موارد میتونید از دوره ی رایگان مهندسی معکوس نرم افزار (Software Reverse Engineering) استفاده کنید که با محوریت درک کدهای اسمبی در حال انتشار هستش.
دانش یک زبان اسکریپت نویسی:
اکسپلویت کردن شامل تعامل با نرمافزارهای دیگه هستش که اغلب با استفاده از یک زبان اسکریپتنویسی انجام میشه. پایتون و کتابخونه PwnTools انتخابهای رایجی هستن، اما هر زبانی دیگه ای رو میتونید برای این کار انتخاب کنید.
دانش اولیه استفاده از لینوکس:
بیشتر منابع مبتنی بر لینوکس هستن، بنابراین باید با ترمینال لینوکس و ابزارهای خط فرمان رایج راحت باشید.
Pwn College – Fundamentals :
بخش Fundamentals ماژولهایی رو ارائه میده که بیشتر این موضوعات رو پوشش میدن و ارزش بررسی قبل از شروع رو دارن.
راه اندازی محیط:
منابعی که اینجا معرفی میشن، سعی شده مواردی باشن که به راحتی در دسترس باشن. مشکل اصلی نسخه ی قبلی رودمپ، این بود که راه اندازی یک محیط کاری سخت بود.
بیشتر منابعی که اینجا معرفی شدن رو میتونید با یک ویرایشگر متن برای یادداشتهای شخصی و یک مرورگر طی کنید. البته برای اجرای برخی از باینری ها باید دسترسی به لینوکس داشته باشید که برای این کار میتونید از یک ماشین مجازی استفاده کنید. البته یک بخش اختیاری هم وجود داره که هدفش بررسی توسعه ی اکسپلویت در معماری های دیگه هستش و بنابراین برای این بخش، نیاز به اجرای باینری در Qemu دارید.
در این آشفتهبازار این روزهای مدلهای زبانی بزرگ، و هیجانات غالب بر جامعهی علمی و غیرعلمی و تاثیر شگرفش روی سهام شرکتهای فراهمکنندهی زیرساختهای سختافزاری، پرسش اصلیای که به وجود میاد اینه که بعد از گذشت هفتاد سال از مطرح شدن «بازی تقلید» (معروف به تست تورینگ) برای سنجش «تفکر ماشینی» و هوش مصنوعی، آیا سرانجام میتونیم چتباتهای مبتنی بر مدلهای زبانی نظیر GPT رو برندهی این بازی و فاتح جایگاهی در نظر بگیریم که تورینگ در دههی پنجاه میلادی پیشبینی کرده بود؟ پرسشی که در ابتدا ممکنه ساده به نظر بیاد، به خصوص که ادعای «پاس شدن تست تورینگ» این روزها لقلقهی زبان مدیران شرکتها و بازوهای تبلیغاتیشونه، اما زمانی پیچیده میشه که متوجه میشیم در آزمایشهای واقعی، درصد قابلتوجهی از انسانها هم در این تست مردود میشوند. مشکل کجاست؟
«آیا ماشینها قادر به تفکر هستند؟»، سوالیه که آلن تورینگ در مقالهی ۱۹۵۰ خودش مطرح میکنه، و تلاش میکنه تا با طرح بازی تقلید، معیاری برای سنجش تفکر ماشینی خلق کنه. بازی شامل یک پرسشگر، یک انسان و یک ماشینه. پرسشگر جدا از انسان و ماشین در یک اتاق جداگانه قرار گرفته و با هدف حذف فاکتورهای غیرمرتبط از جمله صدا و تصویر، ارتباط او با دو بازیکن دیگه، صرفا از طریق مکاتبه انجام میشه. هدف پرسشگر، تشخیص انسان از بین دو بازیکن دیگر، هدف انسان، کمک به این تشخیص و هدف ماشین، گمراهی پرسشگر است تا برندهی این بازی باشه. تیمی از پژوهشگرهای دانشگاه کالیفرنیا در سندیگو (UCSD)، اخیرا نسخهای دو نفره از این بازی رو با پانصد شرکتکننده شبیهسازی کردند، و نتایج، خارج از انتظار بود.
اگر به تاریخچهی چتباتها علاقهمند باشید، احتمالا با Eliza آشنا هستید. تاریخچهی این چتبات به دههی ۶۰ میلادی و دانشگاه MIT میرسه و در زمان خودش، پیشرو به شمار میومد (از اینجا امتحانش کنید). در آزمایش جدید، علاوه بر GPT سهونیم و چهار، نسخهای از Eliza هم مورد استفاده قرار گرفته. بازی دو نفره رو به این صورت طراحی کردند که شرکتکنندهها در برابر یک انسان یا یکی از سه چتبات بالا قرار میگرفتند و باید ظرف مدت پنج دقیقه، تشخیص میدادند که با یک انسان دیگه و یا یک چتبات صحبت میکنند.
مطابق انتظار، Eliza و GPT-4 به ترتیب در ۲۲ و ۵۴ درصد بازیها، برنده شدند. اگر با Eliza کار کرده باشید، میدونید که عدد ۲۲، درصد بالایی به حساب میاد؛ پدیدهای که تحت عنوان Eliza Effect شناخته میشه و بر اثرش، پرسشگرها برخلاف چیزی که میبینند و استدلال میکنند، رفتارهای انسانگونه رو به Eliza نسبت میدن. از سمت دیگه، بازیکنهای انسانی که به جای چتباتها قرار گرفته بودند، تنها در ۶۷ درصد موارد موفق به قانع کردن پرسشگرها شدند.
اقتصاددانها در این مواقع از «علیت دوّار» صحبت میکنند، که در علم اقتصاد، به ارتباط علت و معلولی متقابل میان چند پدیده گفته میشه. در این مورد هم برخوردهای شرکتکنندههای آزمایش با چتباتها، موجب شده بود که سطح انتظارها از عملکرد هوش مصنوعی به قدری بالا بیاد که در ۳۳ درصد موارد، انسانها رو هم به اشتباه ربات تشخیص بدن. از طرف دیگه، پرسشگرها در تشخیص GPT-4 هم عملکردی در حد و اندازهی پرتاب سکه داشتند (اگر فکر میکنید که میتونید عملکرد بهتری از شرکتکنندهها داشته باشید، تلاش کنید که از بین چهار عکس زیر، انسان رو تشخیص بدید؛ سه عکس مربوط به AI و یک عکس مربوط به بازیکن انسانیه. سبزها مکالمات پرسشگر و خاکستریها جواب انسان/چتباتها هستند).
با لحاظ این موارد، به نظر میاد که نیاز به بازنگری در تست تورینگ، بیشتر از هر زمان دیگهای احساس میشه؛ و تا به امروز، پیشنهاداتی هم روی میز قرار گرفته. یکی از اینها، ایدهی یکی از اساتید روانشناسی دانشگاه پرینستونه. Philip Johnson-Laird اعتقاد داره که برای آزمایش مدلها، باید اونها رو در برابر آزمونهای روانشناسی قرار بدیم، و مثل یک جلسهی تراپی، شباهتش با رفتارهای انسانگونه رو بررسی کنیم؛ یک دیدگاه میانرشتهای که میتونه درهای جدیدی رو به سوی شناخت LLMها باز کنه.
از سمت دیگه، Terrence Sejnowski استاد علوم اعصاب UCSD هم در مقالهی اخیرش، با مطالعه روی شیوهی رفتاری و عملکرد مغزی انسانها، نگاه کاملا متفاوتی رو مطرح میکنه: همونطور که در یک بازی تنیس، یک رقیب قدرمندتر، از شما بازیکن بهتری میسازه، LLMها هم صرفا بازتابدهندهی ضریب هوشی پرسشگر هستند. در حقیقت، هر بار که ما با اونها صحبت میکنیم، این ما هستیم که در جایگاه پرسششونده قرار گرفتهایم، پدیدهای که او ازش به عنوان «تست تورینگ وارونه» تعبیر میکنه. این دیدگاه، با نتایج آزمایش بالا همخوانی داره و میتونه دلیلی باشه بر اینکه چرا اطلاق جایگاه پرسشگر به انسانها در تست تورینگ، میتونه به چنین نتایج دور از ذهنی منجر بشه.
«آیا ماشینها قادر به تفکر هستند؟»، سوالیه که آلن تورینگ در مقالهی ۱۹۵۰ خودش مطرح میکنه، و تلاش میکنه تا با طرح بازی تقلید، معیاری برای سنجش تفکر ماشینی خلق کنه. بازی شامل یک پرسشگر، یک انسان و یک ماشینه. پرسشگر جدا از انسان و ماشین در یک اتاق جداگانه قرار گرفته و با هدف حذف فاکتورهای غیرمرتبط از جمله صدا و تصویر، ارتباط او با دو بازیکن دیگه، صرفا از طریق مکاتبه انجام میشه. هدف پرسشگر، تشخیص انسان از بین دو بازیکن دیگر، هدف انسان، کمک به این تشخیص و هدف ماشین، گمراهی پرسشگر است تا برندهی این بازی باشه. تیمی از پژوهشگرهای دانشگاه کالیفرنیا در سندیگو (UCSD)، اخیرا نسخهای دو نفره از این بازی رو با پانصد شرکتکننده شبیهسازی کردند، و نتایج، خارج از انتظار بود.
اگر به تاریخچهی چتباتها علاقهمند باشید، احتمالا با Eliza آشنا هستید. تاریخچهی این چتبات به دههی ۶۰ میلادی و دانشگاه MIT میرسه و در زمان خودش، پیشرو به شمار میومد (از اینجا امتحانش کنید). در آزمایش جدید، علاوه بر GPT سهونیم و چهار، نسخهای از Eliza هم مورد استفاده قرار گرفته. بازی دو نفره رو به این صورت طراحی کردند که شرکتکنندهها در برابر یک انسان یا یکی از سه چتبات بالا قرار میگرفتند و باید ظرف مدت پنج دقیقه، تشخیص میدادند که با یک انسان دیگه و یا یک چتبات صحبت میکنند.
مطابق انتظار، Eliza و GPT-4 به ترتیب در ۲۲ و ۵۴ درصد بازیها، برنده شدند. اگر با Eliza کار کرده باشید، میدونید که عدد ۲۲، درصد بالایی به حساب میاد؛ پدیدهای که تحت عنوان Eliza Effect شناخته میشه و بر اثرش، پرسشگرها برخلاف چیزی که میبینند و استدلال میکنند، رفتارهای انسانگونه رو به Eliza نسبت میدن. از سمت دیگه، بازیکنهای انسانی که به جای چتباتها قرار گرفته بودند، تنها در ۶۷ درصد موارد موفق به قانع کردن پرسشگرها شدند.
اقتصاددانها در این مواقع از «علیت دوّار» صحبت میکنند، که در علم اقتصاد، به ارتباط علت و معلولی متقابل میان چند پدیده گفته میشه. در این مورد هم برخوردهای شرکتکنندههای آزمایش با چتباتها، موجب شده بود که سطح انتظارها از عملکرد هوش مصنوعی به قدری بالا بیاد که در ۳۳ درصد موارد، انسانها رو هم به اشتباه ربات تشخیص بدن. از طرف دیگه، پرسشگرها در تشخیص GPT-4 هم عملکردی در حد و اندازهی پرتاب سکه داشتند (اگر فکر میکنید که میتونید عملکرد بهتری از شرکتکنندهها داشته باشید، تلاش کنید که از بین چهار عکس زیر، انسان رو تشخیص بدید؛ سه عکس مربوط به AI و یک عکس مربوط به بازیکن انسانیه. سبزها مکالمات پرسشگر و خاکستریها جواب انسان/چتباتها هستند).
با لحاظ این موارد، به نظر میاد که نیاز به بازنگری در تست تورینگ، بیشتر از هر زمان دیگهای احساس میشه؛ و تا به امروز، پیشنهاداتی هم روی میز قرار گرفته. یکی از اینها، ایدهی یکی از اساتید روانشناسی دانشگاه پرینستونه. Philip Johnson-Laird اعتقاد داره که برای آزمایش مدلها، باید اونها رو در برابر آزمونهای روانشناسی قرار بدیم، و مثل یک جلسهی تراپی، شباهتش با رفتارهای انسانگونه رو بررسی کنیم؛ یک دیدگاه میانرشتهای که میتونه درهای جدیدی رو به سوی شناخت LLMها باز کنه.
از سمت دیگه، Terrence Sejnowski استاد علوم اعصاب UCSD هم در مقالهی اخیرش، با مطالعه روی شیوهی رفتاری و عملکرد مغزی انسانها، نگاه کاملا متفاوتی رو مطرح میکنه: همونطور که در یک بازی تنیس، یک رقیب قدرمندتر، از شما بازیکن بهتری میسازه، LLMها هم صرفا بازتابدهندهی ضریب هوشی پرسشگر هستند. در حقیقت، هر بار که ما با اونها صحبت میکنیم، این ما هستیم که در جایگاه پرسششونده قرار گرفتهایم، پدیدهای که او ازش به عنوان «تست تورینگ وارونه» تعبیر میکنه. این دیدگاه، با نتایج آزمایش بالا همخوانی داره و میتونه دلیلی باشه بر اینکه چرا اطلاق جایگاه پرسشگر به انسانها در تست تورینگ، میتونه به چنین نتایج دور از ذهنی منجر بشه.
با توجه به اینکه خیلی از دوستان سیستم مناسبی ندارن و شوق یادگیری هم درونش وجود داره و مشکل با مجازی سازی های پرمصرف دارند من پیشنهادم به اونها وگرنت و هشی کورپ هست
برای راهاندازی یک محیط لینوکسی با استفاده از Vagrant و HashiCorp، و به حداقل رساندن مصرف RAM، مراحل زیر را دنبال کنید:
📚 مرحله اول: نصب Vagrant و VirtualBox
قبل از هر چیز، لازم است که Vagrant و VirtualBox را بر روی سیستمتان نصب کنید. این دو ابزار به شما این امکان را میدهند تا به سادگی ماشینهای مجازی را مدیریت کنید.
📚 مرحله دوم: ایجاد یک پروژه جدید
یک دایرکتوری جدید برای پروژه خود بسازید:
mkdir my-vagrant-project
cd my-vagrant-project
📚 مرحله سوم: ایجاد فایل Vagrantfile
در این دایرکتوری، یک فایل جدید به نام Vagrantfile ایجاد کنید. این فایل تنظیمات مربوط به ماشین مجازی را مشخص میکند. برای استفاده از حداقل منابع، میتوانید از یک تصویر دستوری Ubuntu یا Alpine استفاده کنید. برای مثال:
📚 مرحله چهارم: بارگذاری ماشین مجازی
حالا که تنظیمات را انجام دادهاید، زمان آن رسیده که ماشین مجازی را بارگذاری کنید:
vagrant up
این دستور Vagrant را به کار میاندازد و ماشین مجازی را به حالت آماده به کار میآورد.
📚 مرحله پنجم: ورود به ماشین مجازی
پس از راهاندازی، میتوانید با استفاده از دستور زیر به محیط ماشین مجازی وارد شوید:
vagrant ssh
📚 مرحله ششم: استفاده بهینه از منابع
برای کاهش بیشتر مصرف RAM و CPU، از نصب تنها برنامههایی که به آنها نیاز دارید اطمینان حاصل کنید. همچنین میتوانید تنظیمات ماشین مجازی را در Vagrantfile تغییر دهید تا به میزان نیاز خود بهینهسازی کنید.
برای راهاندازی یک محیط لینوکسی با استفاده از Vagrant و HashiCorp، و به حداقل رساندن مصرف RAM، مراحل زیر را دنبال کنید:
📚 مرحله اول: نصب Vagrant و VirtualBox
قبل از هر چیز، لازم است که Vagrant و VirtualBox را بر روی سیستمتان نصب کنید. این دو ابزار به شما این امکان را میدهند تا به سادگی ماشینهای مجازی را مدیریت کنید.
📚 مرحله دوم: ایجاد یک پروژه جدید
یک دایرکتوری جدید برای پروژه خود بسازید:
mkdir my-vagrant-project
cd my-vagrant-project
📚 مرحله سوم: ایجاد فایل Vagrantfile
در این دایرکتوری، یک فایل جدید به نام Vagrantfile ایجاد کنید. این فایل تنظیمات مربوط به ماشین مجازی را مشخص میکند. برای استفاده از حداقل منابع، میتوانید از یک تصویر دستوری Ubuntu یا Alpine استفاده کنید. برای مثال:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/bionic64" # یا "alpine/edge"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.provider "virtualbox" do |vb|
vb.memory = "512" # تنظیم مقدار رم
vb.cpus = 1 # تنظیم تعداد هستهها
end
end
📚 مرحله چهارم: بارگذاری ماشین مجازی
حالا که تنظیمات را انجام دادهاید، زمان آن رسیده که ماشین مجازی را بارگذاری کنید:
vagrant up
این دستور Vagrant را به کار میاندازد و ماشین مجازی را به حالت آماده به کار میآورد.
📚 مرحله پنجم: ورود به ماشین مجازی
پس از راهاندازی، میتوانید با استفاده از دستور زیر به محیط ماشین مجازی وارد شوید:
vagrant ssh
📚 مرحله ششم: استفاده بهینه از منابع
برای کاهش بیشتر مصرف RAM و CPU، از نصب تنها برنامههایی که به آنها نیاز دارید اطمینان حاصل کنید. همچنین میتوانید تنظیمات ماشین مجازی را در Vagrantfile تغییر دهید تا به میزان نیاز خود بهینهسازی کنید.
قطعا به این فکر کردین که آیا میشه مدل های هوش مصنوعی داشته باشیم که در انحصار شرکت خاصی نباشه؟
بله، شرکت Prime Intellect AI بر اساس تمرکززدایی و استفاده از منابع محاسباتی مشترک برای آموزش مدلهای هوش مصنوعی در مقیاس بزرگ بنا شده.
یعنی شما اگه GPU داری میتونی از طریق این پلتفرم کار پردازشی انجام بدی و پول دربیاری
با این حرکت فضای رقابتی جالبی درست شده و در جهت اینه که توان پردازشی رو از انحصار شرکت های بزرگ و همچنین کلاود هایی که تعرفه های بالایی دارن بگیره و به سمت یوزر های عادی بازار رقابتی و آزاد حرکت بکنه
قطعا متوجه شدین که این حرکت هم به سمت بازار آزاد اقتصادی هست (حال میکنی درک اقتصادیو😁 )و هم فضای داده ی آزاد و بدون انحصار(این یکی کارمه نمیخواد حال کنی)
تو پست بعدی در مورد یکی از پروژه های خفن این پلتفرم میگم
بله، شرکت Prime Intellect AI بر اساس تمرکززدایی و استفاده از منابع محاسباتی مشترک برای آموزش مدلهای هوش مصنوعی در مقیاس بزرگ بنا شده.
یعنی شما اگه GPU داری میتونی از طریق این پلتفرم کار پردازشی انجام بدی و پول دربیاری
با این حرکت فضای رقابتی جالبی درست شده و در جهت اینه که توان پردازشی رو از انحصار شرکت های بزرگ و همچنین کلاود هایی که تعرفه های بالایی دارن بگیره و به سمت یوزر های عادی بازار رقابتی و آزاد حرکت بکنه
قطعا متوجه شدین که این حرکت هم به سمت بازار آزاد اقتصادی هست (حال میکنی درک اقتصادیو😁 )و هم فضای داده ی آزاد و بدون انحصار(این یکی کارمه نمیخواد حال کنی)
تو پست بعدی در مورد یکی از پروژه های خفن این پلتفرم میگم
-> چطور یک سازمانی هک میشود و انگار هک نشده است ؟
امروز میپردازیم به اینکه چطور یک سامانه یا سازمان مورد حملات سایبری قرار میگیرد ولی انگار خبری نیست و حمله ای نیست ؟
بیاید ابتدا راجب دو تا موضوع صحبت کنیم :
علم فارنرزیک چیست ؟
فارنزیک پروسه ای جهت جمع آوری اطلاعات و شواهد به منظور چگونه اتفاق افتادن واقعه ای است. این علم در شاخه های مختلفی مانند پزشکی، فیزیک، شیمی، کامپیوتر کاربرد دارد که در هر کدام از ان ها هم می تواند نیاز به تخصصی زیادی ذاشته باشد تا به صورت حرفه ای انجام شود.
منبع: https://pentestcore.com/
حالا در این هیاهوی فارنرزیک کارها هکرا هم بیکار نمیشینن لو برند ، تکنیک های آنتی فارنرزیک هست که عکس عمل فارنرزیک را همراه کاور ترکینگ انجام میدن حالا کاور ترکینگ چیست ؟
شخص نفوذگر هر نوع عملی را انجام داده اثراتش را پاک میکند و به سادگی انگار آب از آب هم تکان نخورده است
خب به قدر کافی فکرم فهمیدید چطور یک حمله انگار انجام نشده ، یا غیرقابل تشخیص هست این هیچ ربطی به سواد نیروهای امنیتی نداره و نشون از برتری متخصص تست نفوذ و یا همون هکر نسبت به اون امنیت کارا هست دلیلشم داخل کشور خودمون مشخصه و ساده است اینکه متخصصان امنیت یا نیروهای soc تک بعدی به ماجرا نگاه میکنند شرکتهای در این رابطه به دنبال پول کلان از بومی سازی محصولات خارجی هستند نه به دنبال جذب نیروهای متخصص و خلاق ، برای مثال در ویکی تجربه میخوندم یک نیروی متخصص امنیت وب اپلیکیشن و اندروید استخدام شرکتی امنیتی شده بود و آنها او را مجبور به خواندن معماری زیرساختی محصول بومی خودشان و توسعه در این باره دادند ( مگه کار نیروی امنیت اینه مردحسابی = خطاب به مدیرعامل ؟ ) بعد نوشته بود که مجبور به راه اندازی زیرساختی SIEM او را کردند ( پرانتز ، مگه بالا آوردن زیرساخت کار نیروی امنیت کاره ؟ اونم وب و اندروید ( هیچ ربطی به حوزه اش نداشته ) و در آخر هم باگ هایی که کشف کرده رو ایگنور کردن و صرفا به چشم یک چیزی گذارا دیدن ، همین محصول فردا میاد توی سازمان های ما و زیرساخت امنیتی کشور کلا به فنا میره این شرکتها هم نهایتش میندازن گردن مشتری یا اون کار کنی که پشتش بوده و خلاص , ( فقط به دنبال پول مفتن شرکت های داخلی ) تعداد اندکی به فکر موضوعات حیاتی هستند که تعدادشون کمه و یا به واسطه حکومت به موضوعات دیگه کشیده میشن
خلاصه : فردا اگر زیرساخت اینترنتیتون یکی نیومد تانل زد و مخابرات انداخت گردن شما نگین که نگفتم :))
مخلص همه شما
امروز میپردازیم به اینکه چطور یک سامانه یا سازمان مورد حملات سایبری قرار میگیرد ولی انگار خبری نیست و حمله ای نیست ؟
بیاید ابتدا راجب دو تا موضوع صحبت کنیم :
علم فارنرزیک چیست ؟
فارنزیک پروسه ای جهت جمع آوری اطلاعات و شواهد به منظور چگونه اتفاق افتادن واقعه ای است. این علم در شاخه های مختلفی مانند پزشکی، فیزیک، شیمی، کامپیوتر کاربرد دارد که در هر کدام از ان ها هم می تواند نیاز به تخصصی زیادی ذاشته باشد تا به صورت حرفه ای انجام شود.
منبع: https://pentestcore.com/
حالا در این هیاهوی فارنرزیک کارها هکرا هم بیکار نمیشینن لو برند ، تکنیک های آنتی فارنرزیک هست که عکس عمل فارنرزیک را همراه کاور ترکینگ انجام میدن حالا کاور ترکینگ چیست ؟
شخص نفوذگر هر نوع عملی را انجام داده اثراتش را پاک میکند و به سادگی انگار آب از آب هم تکان نخورده است
خب به قدر کافی فکرم فهمیدید چطور یک حمله انگار انجام نشده ، یا غیرقابل تشخیص هست این هیچ ربطی به سواد نیروهای امنیتی نداره و نشون از برتری متخصص تست نفوذ و یا همون هکر نسبت به اون امنیت کارا هست دلیلشم داخل کشور خودمون مشخصه و ساده است اینکه متخصصان امنیت یا نیروهای soc تک بعدی به ماجرا نگاه میکنند شرکتهای در این رابطه به دنبال پول کلان از بومی سازی محصولات خارجی هستند نه به دنبال جذب نیروهای متخصص و خلاق ، برای مثال در ویکی تجربه میخوندم یک نیروی متخصص امنیت وب اپلیکیشن و اندروید استخدام شرکتی امنیتی شده بود و آنها او را مجبور به خواندن معماری زیرساختی محصول بومی خودشان و توسعه در این باره دادند ( مگه کار نیروی امنیت اینه مردحسابی = خطاب به مدیرعامل ؟ ) بعد نوشته بود که مجبور به راه اندازی زیرساختی SIEM او را کردند ( پرانتز ، مگه بالا آوردن زیرساخت کار نیروی امنیت کاره ؟ اونم وب و اندروید ( هیچ ربطی به حوزه اش نداشته ) و در آخر هم باگ هایی که کشف کرده رو ایگنور کردن و صرفا به چشم یک چیزی گذارا دیدن ، همین محصول فردا میاد توی سازمان های ما و زیرساخت امنیتی کشور کلا به فنا میره این شرکتها هم نهایتش میندازن گردن مشتری یا اون کار کنی که پشتش بوده و خلاص , ( فقط به دنبال پول مفتن شرکت های داخلی ) تعداد اندکی به فکر موضوعات حیاتی هستند که تعدادشون کمه و یا به واسطه حکومت به موضوعات دیگه کشیده میشن
خلاصه : فردا اگر زیرساخت اینترنتیتون یکی نیومد تانل زد و مخابرات انداخت گردن شما نگین که نگفتم :))
مخلص همه شما
نقشه راه ورود به دنیای تست نفوذ شبکه :
Network +
Ccna Routing and switching
MIKROTIK
Ccnp (دلبخواهی)
MCSA/MCSE >
Active Directiry , Kerberos , LDAP , Group Policy , IIS , DNS , DHCP , file server , Wsus ,
نیاز نیست کل کتابشو بخونید. (ولی کلشو هم رفتید عالیه).
MCSD
lpic1,2
PYTHON
یادگیری زبان برای اکسپلویت نویسی Cpp و C و Assembly و Python
SEC 401
Ceh ya Security + ya Sec504
در کنار خواندن کتاب های اصلی میتوانید در کانال هم سرچ کنید مفاهیم پایه گفته شده است .
SEC560
Pwk
MITRE ATT&CK
Sec573 or python for hackers
Sec580
PowerShell for Pentesters
Sec660
eCPPT
eCPTX
شما باید بتونید فایروال ها رو هم دور بزنید برای پیاده سازی حملات و سعی نکنید خودتون به این دوره ها محدود کنید .
و میتوانید دوره هایی که برای حملات اکتیودایرکتوری هست رو بگذرونید مثل دوره پنتستر اکادمی .
موفق باشید .
#roadmap
#NetworkPentest
Network +
Ccna Routing and switching
MIKROTIK
Ccnp (دلبخواهی)
MCSA/MCSE >
Active Directiry , Kerberos , LDAP , Group Policy , IIS , DNS , DHCP , file server , Wsus ,
نیاز نیست کل کتابشو بخونید. (ولی کلشو هم رفتید عالیه).
MCSD
lpic1,2
PYTHON
یادگیری زبان برای اکسپلویت نویسی Cpp و C و Assembly و Python
SEC 401
Ceh ya Security + ya Sec504
در کنار خواندن کتاب های اصلی میتوانید در کانال هم سرچ کنید مفاهیم پایه گفته شده است .
SEC560
Pwk
MITRE ATT&CK
Sec573 or python for hackers
Sec580
PowerShell for Pentesters
Sec660
eCPPT
eCPTX
شما باید بتونید فایروال ها رو هم دور بزنید برای پیاده سازی حملات و سعی نکنید خودتون به این دوره ها محدود کنید .
و میتوانید دوره هایی که برای حملات اکتیودایرکتوری هست رو بگذرونید مثل دوره پنتستر اکادمی .
موفق باشید .
#roadmap
#NetworkPentest
رایتاپ آسیب پذیری 150,000$
وسوسه انگیزه
هکر اولش میاد میگه :
ما گاهی وقتا انتظار داریم یه باگ بحرانی ، یه چیز پیچیده و سخت باشه اما در واقعیت کاملا برعکسه
[این جمله خیلی خیلی باارزشه بنظرم]
مغزتون به نباید ها و نشد ها عادت نکنه، چون هم میشه و هم برای هکر نبایدی وجود نداره:
رایتاپ آسیب پذیری 150,000$
وسوسه انگیزه
رایتاپشو بخون پس
هکر اولش میاد میگه :
ما گاهی وقتا انتظار داریم یه باگ بحرانی ، یه چیز پیچیده و سخت باشه اما در واقعیت کاملا برعکسه
[این جمله خیلی خیلی باارزشه بنظرم]
هکر باگ رو روی Evmos پیدا کرده
Evmosچیه؟
یه بلاکچینه که مبتنی بر معماری Coamos ساخته شده . که هدفش فراهم کردن قابلیت تعامل بین شبکه های های cosmos و Ethereumهستش.
حالا Cosmosچیه؟ یک فریم ورک هستش که به توسعه دهنده ها این امکان رو میده تا بلاکچین های مختلفی باهاش بسازن که بتونن باهم تعامل کنن
حالا اگر میخوای بیشتر بدونی راجبشوندیگه دست ب سرچ شو چون خیلی بحثش زیاده
هکر میگه من یه باگی پیدا کردم که میتونه بلاک چین Evmos و همه ی dAppهاشو متوقف کنه
اقا dAppچیه؟برنامه هایی که روی بلاکچینه اومدن بالا رو میگن dApp
مثلا وقتی میری روی یک سایتی و داری اتریوم رو تبدیل به تترمیکنی ،همون لحظه داری با یک dAppانجامش میدی که یک وب اپلیکیشنی هستش که روی یک بلاکچین خاصی اومده بالا و داره یه خدماتی رو به صورت غیرمتمرکز بهت ارائه میده.
اینا همش حاشیس میگما
خب بریم ادامه ماجرا:
پس هکر گفت یه باگی پیدا کردم که ممکنه منجر به توقف عملکرد بلاکچینه بشه
چجوری پیداش کردی؟ با خوندن داکیومنت
هکر میگه اومدم گفتم این بلاکچینه از روی چی ساخته شده؟از رویCosmos
پس برم داکیومنت اونو بخونم
چون پایشه دیگه
میگه یه ماژولی داشت این cosmos به اسم ماژول بانک.
داشتم بررسیش میکردم که به یک مفهوم جالب ازش رسیدم. یه چیزی به اسم حساب های ماژول
چیزی که برام جالب بود این جمله بود:
حساب های ماژول نباید وجه دریافت کنند
اقا ماژول چیه؟یک بخش از کده که در یه سیستم وظایف خاصی رو انجام میده.
مثلا اینجا گفتیم ماژول بانک : که کارش انجام تراکنش های مالی و انتقال وجه بین حساب ها هستش.
اقا حساب های ماژول چیه؟ حساب هایی هستن که برای انجام یسری کارها در یک ماژول طراحی شدن
بیا مثالشو بررسی کنیم قشنگ میفهمی:
مثلا توی این بلاکچین یه ماژولی داریم که مسئول انتقال پوله.حساب هایی که توی این ماژول هستن ممکنه برای نگهداری توکن ها یا اطلاعات مربوط به این تراکنش استفاده بشن.
هکر میگه من توی داکیومنت خوندم که این حساب های ماژول نباید وجه دریافت کنن
منم با خودم گفتم :اگه وجه دریافت کنن مگه چی میشه؟😂هکره دیگه
هرچی بهش بگن رو برعکسشو دوس داره.
حالا بیاین ببینیم میتونیم وجهی رو به یک حساب ماژول ارسال کنیم؟چون اون نباید هیچ وجهی رو بپذیره
با این کامند وجه رو میتونم به حساب ماژول توزیع ارسال کنم که منجر به خطای زیر میشه:
Error :ERR CONSENSUS FAILER!!!…
توی این مرحله بلوک دیگه ای تولید نمیشه و زنجیره متوقف میشه.البته الان این باگ برطرف شده
جایزشم که 150هزار دلار که حدود ۱۰میلیارد خودمون میشه
نکات مهم این داستان باحال:
همیشه مستندات پروژه ای که روش میخوایم کار کنیم رو مطالعه کنیم
و مهم ترین بخش: مهم ترینا ممکنه ساده ترینا باشن
این اولین رایتاپ web3 بود براتون بازنشرکردم
باحال بود.
For more join to channel (:
#Bugbounty
وسوسه انگیزه
هکر اولش میاد میگه :
ما گاهی وقتا انتظار داریم یه باگ بحرانی ، یه چیز پیچیده و سخت باشه اما در واقعیت کاملا برعکسه
[این جمله خیلی خیلی باارزشه بنظرم]
مغزتون به نباید ها و نشد ها عادت نکنه، چون هم میشه و هم برای هکر نبایدی وجود نداره:
رایتاپ آسیب پذیری 150,000$
وسوسه انگیزه
رایتاپشو بخون پس
هکر اولش میاد میگه :
ما گاهی وقتا انتظار داریم یه باگ بحرانی ، یه چیز پیچیده و سخت باشه اما در واقعیت کاملا برعکسه
[این جمله خیلی خیلی باارزشه بنظرم]
هکر باگ رو روی Evmos پیدا کرده
Evmosچیه؟
یه بلاکچینه که مبتنی بر معماری Coamos ساخته شده . که هدفش فراهم کردن قابلیت تعامل بین شبکه های های cosmos و Ethereumهستش.
حالا Cosmosچیه؟ یک فریم ورک هستش که به توسعه دهنده ها این امکان رو میده تا بلاکچین های مختلفی باهاش بسازن که بتونن باهم تعامل کنن
حالا اگر میخوای بیشتر بدونی راجبشوندیگه دست ب سرچ شو چون خیلی بحثش زیاده
هکر میگه من یه باگی پیدا کردم که میتونه بلاک چین Evmos و همه ی dAppهاشو متوقف کنه
اقا dAppچیه؟برنامه هایی که روی بلاکچینه اومدن بالا رو میگن dApp
مثلا وقتی میری روی یک سایتی و داری اتریوم رو تبدیل به تترمیکنی ،همون لحظه داری با یک dAppانجامش میدی که یک وب اپلیکیشنی هستش که روی یک بلاکچین خاصی اومده بالا و داره یه خدماتی رو به صورت غیرمتمرکز بهت ارائه میده.
اینا همش حاشیس میگما
خب بریم ادامه ماجرا:
پس هکر گفت یه باگی پیدا کردم که ممکنه منجر به توقف عملکرد بلاکچینه بشه
چجوری پیداش کردی؟ با خوندن داکیومنت
هکر میگه اومدم گفتم این بلاکچینه از روی چی ساخته شده؟از رویCosmos
پس برم داکیومنت اونو بخونم
چون پایشه دیگه
میگه یه ماژولی داشت این cosmos به اسم ماژول بانک.
داشتم بررسیش میکردم که به یک مفهوم جالب ازش رسیدم. یه چیزی به اسم حساب های ماژول
چیزی که برام جالب بود این جمله بود:
حساب های ماژول نباید وجه دریافت کنند
اقا ماژول چیه؟یک بخش از کده که در یه سیستم وظایف خاصی رو انجام میده.
مثلا اینجا گفتیم ماژول بانک : که کارش انجام تراکنش های مالی و انتقال وجه بین حساب ها هستش.
اقا حساب های ماژول چیه؟ حساب هایی هستن که برای انجام یسری کارها در یک ماژول طراحی شدن
بیا مثالشو بررسی کنیم قشنگ میفهمی:
مثلا توی این بلاکچین یه ماژولی داریم که مسئول انتقال پوله.حساب هایی که توی این ماژول هستن ممکنه برای نگهداری توکن ها یا اطلاعات مربوط به این تراکنش استفاده بشن.
هکر میگه من توی داکیومنت خوندم که این حساب های ماژول نباید وجه دریافت کنن
منم با خودم گفتم :اگه وجه دریافت کنن مگه چی میشه؟😂هکره دیگه
هرچی بهش بگن رو برعکسشو دوس داره.
حالا بیاین ببینیم میتونیم وجهی رو به یک حساب ماژول ارسال کنیم؟چون اون نباید هیچ وجهی رو بپذیره
با این کامند وجه رو میتونم به حساب ماژول توزیع ارسال کنم که منجر به خطای زیر میشه:
Error :ERR CONSENSUS FAILER!!!…
توی این مرحله بلوک دیگه ای تولید نمیشه و زنجیره متوقف میشه.البته الان این باگ برطرف شده
جایزشم که 150هزار دلار که حدود ۱۰میلیارد خودمون میشه
نکات مهم این داستان باحال:
همیشه مستندات پروژه ای که روش میخوایم کار کنیم رو مطالعه کنیم
و مهم ترین بخش: مهم ترینا ممکنه ساده ترینا باشن
این اولین رایتاپ web3 بود براتون بازنشرکردم
باحال بود.
For more join to channel (:
#Bugbounty
👍1
#ابزار
مقالهی زیر یک کتابخانهی جدید برای توابع توزیع پارتون (PDF) ارائه میکند، بهطوریکه هم PDFهای خطی (cPDF) و هم PDFهای وابسته به تکانه عرضی (TMD) را ارائه دهد:
https://arxiv.org/abs/2412.16680
آدرس گیتهاب:
https://github.com/Raminkord92/PDFxTMD
مقالهی زیر یک کتابخانهی جدید برای توابع توزیع پارتون (PDF) ارائه میکند، بهطوریکه هم PDFهای خطی (cPDF) و هم PDFهای وابسته به تکانه عرضی (TMD) را ارائه دهد:
https://arxiv.org/abs/2412.16680
آدرس گیتهاب:
https://github.com/Raminkord92/PDFxTMD
arXiv.org
PDFxTMDLib and QtPDFxTMDPlotter: A High-Performance Framework and...
We present PDFxTMD, a high-performance C++ library that provides unified access to both collinear parton distribution functions (cPDFs) and transverse momentum-dependent parton distribution...
👍1
برای کار به عنوان داده کاو یا دانشمند داده در یک شرکت، باید مصاحبه فنی مربوطه را با موفقیت پشت سر گذاشت. اما چه سوالهایی معمولا برای این مصاحبه پرسیده می شوند؟ چند نمونه از این سوالات را که خودم در مصاحبه ها با آنها مواجه شده ام را در اینجا مطرح می کنم. با توجه به اینکه سابقه کار در این زمینه را در ایران ندارم، لذا سوالات مربوطه از مصاحبه های فنی موسسات و شرکتهای واقع در خارج از ایران نظیر IBM, ANZ bank, Sportsbet, iSelect
می باشد.
(صحبت های یک دیتا ساینتیست در خارج ایران)
۱- تعریف و توضیح در مورد
P-value
۲- رگولاریزاسیون چیست و برای حل چه مشکلی استفاده میشود؟ تفاوت بین نرم L1 و L2 چیست؟
۳- تبدیل Box-Cox چیست؟
۴- توضیح در مورد MultiCollinearity
و چگونگی حل آن؟
۵- آیا الگوریتم Gradient descent همیشه به نقطه یکسانی همگرا میشود؟
۶- چگونه در الگوریتم K-means تعداد کلاسترهای بهینه را می توان مشخص کرد؟
۷- بردار ویژه و مقدار ویژه چیست؟
۸- با چه کتابخانه های داده کاوی از زبان پایتون آشنایی دارید؟ همچنین سوالاتی که توانایی شما را در کدنویسی ارزیابی میکند که معمولا این کدها را باید بر روی تخته وایت بردی که در اختیار شما قرار می گیرد، بنویسید
۹- نفرین بعدیت چیست؟
۱۰- چرا خطای کمترین مربعات همیشه متریک مناسبی برای ارزیابی خطا نیست؟ چه متریک دیگری را پیشنهاد می کنید؟
۱۱- آیا استفاده از ۵۰ درخت تصمیم کوچک به جای یک درخت تصمیم بزرگ اولویت دارد؟ چرا؟
۱۲- تعامل بین بایاس و واریانس به چه معناست؟
۱۳- منحنی
ROC
چیست؟
۱۴- کدام را ترجیح می دهید؟ داشتن تعداد زیادی جواب منفی کاذب و یا داشتن تعداد زیادی جواب مثبت کاذب؟
۱۵- چرا دسته بندی کننده نایو بیز، الگوریتم مناسبی نیست؟ برای مسئله تشخیص اسپم در ایمیل، چه روشی را برای بهبود نایو بیز پیشنهاد می کنید؟
۱۶ در بعضی مواقع یک سناریو به داوطلب داده می شود و از او خواسته می شود که برای آن سناریو راه حل پیشنهاد کند. به عنوان مثال: مدیر یک موسسه انتشاراتی که پنج مجله در آن به چاپ می رسد از شما ( به عنوان داده کاو) می خواهد روشی ارائه دهید برای طراحی یک سیستم توصیه به خواننده که بر اساس سلیقه خواننده مجله مورد علاقه اش را به او پیشنهاد می کند.
الگوریتم های #یادگیری_ماشین
#مصاحبه_علم_داده
#علم_داده
می باشد.
(صحبت های یک دیتا ساینتیست در خارج ایران)
۱- تعریف و توضیح در مورد
P-value
۲- رگولاریزاسیون چیست و برای حل چه مشکلی استفاده میشود؟ تفاوت بین نرم L1 و L2 چیست؟
۳- تبدیل Box-Cox چیست؟
۴- توضیح در مورد MultiCollinearity
و چگونگی حل آن؟
۵- آیا الگوریتم Gradient descent همیشه به نقطه یکسانی همگرا میشود؟
۶- چگونه در الگوریتم K-means تعداد کلاسترهای بهینه را می توان مشخص کرد؟
۷- بردار ویژه و مقدار ویژه چیست؟
۸- با چه کتابخانه های داده کاوی از زبان پایتون آشنایی دارید؟ همچنین سوالاتی که توانایی شما را در کدنویسی ارزیابی میکند که معمولا این کدها را باید بر روی تخته وایت بردی که در اختیار شما قرار می گیرد، بنویسید
۹- نفرین بعدیت چیست؟
۱۰- چرا خطای کمترین مربعات همیشه متریک مناسبی برای ارزیابی خطا نیست؟ چه متریک دیگری را پیشنهاد می کنید؟
۱۱- آیا استفاده از ۵۰ درخت تصمیم کوچک به جای یک درخت تصمیم بزرگ اولویت دارد؟ چرا؟
۱۲- تعامل بین بایاس و واریانس به چه معناست؟
۱۳- منحنی
ROC
چیست؟
۱۴- کدام را ترجیح می دهید؟ داشتن تعداد زیادی جواب منفی کاذب و یا داشتن تعداد زیادی جواب مثبت کاذب؟
۱۵- چرا دسته بندی کننده نایو بیز، الگوریتم مناسبی نیست؟ برای مسئله تشخیص اسپم در ایمیل، چه روشی را برای بهبود نایو بیز پیشنهاد می کنید؟
۱۶ در بعضی مواقع یک سناریو به داوطلب داده می شود و از او خواسته می شود که برای آن سناریو راه حل پیشنهاد کند. به عنوان مثال: مدیر یک موسسه انتشاراتی که پنج مجله در آن به چاپ می رسد از شما ( به عنوان داده کاو) می خواهد روشی ارائه دهید برای طراحی یک سیستم توصیه به خواننده که بر اساس سلیقه خواننده مجله مورد علاقه اش را به او پیشنهاد می کند.
الگوریتم های #یادگیری_ماشین
#مصاحبه_علم_داده
#علم_داده
👌1
درواقع CSRF شبیه Stored XSSعه. اینجوری که هکر یه لینک مخرب رو توی یه سایت(یا یه کامنت توی سوشال مدیا و...) میزاره قربانی با کلیک کردن روش، این حمله اتفاق میوفته.
همچنین ممکنه بعضی از این حملهها با متد GET باشن و حتی بدون نیاز به یه سایت دوم، صرفا با یه لینک این حمله انجام بشه:
<img src="https://vulnerable-website.com/email/[email protected]">
روشهای جلوگیری و محافظت در برابر CSRF:
توکن csrf = یه هدر که توی درخواستهای حساس، ارسال میشه و از سمت سرور ست میشه.
کوکی samesite = یه مکانیزم امنیتی مرورگره که از استفاده شدن کوکیهای یه سایت، توی درخواست سایتهای دیگه جلوگیری میکنه.
اعتبار سنجی Referer = بعضی وقتا از هدر ریفرر استفاده میشه. (تاثیر کمتری داره)
همچنین ممکنه بعضی از این حملهها با متد GET باشن و حتی بدون نیاز به یه سایت دوم، صرفا با یه لینک این حمله انجام بشه:
<img src="https://vulnerable-website.com/email/[email protected]">
روشهای جلوگیری و محافظت در برابر CSRF:
توکن csrf = یه هدر که توی درخواستهای حساس، ارسال میشه و از سمت سرور ست میشه.
کوکی samesite = یه مکانیزم امنیتی مرورگره که از استفاده شدن کوکیهای یه سایت، توی درخواست سایتهای دیگه جلوگیری میکنه.
اعتبار سنجی Referer = بعضی وقتا از هدر ریفرر استفاده میشه. (تاثیر کمتری داره)
توکن CSRF یه توکن غیرقابل پیشبینیعه که برنامه نویس اون رو طراحی میکنه. این توکن باید توی درخواستهای حساس کاربر که به سمت سرور ارسال میکنه وجود داشته باشه، در غیر این صورت اون درخواست توسط سرور پردازش نمیشه. برای مثال:
<form name="change-email-form" action="/my-account/change-email" method="POST">
<label>Email</label>
<input required type="email" name="email" value="[email protected]">
<input required type="hidden" name="csrf" value="50FaWgdOhi9M9wyna8taR1k3ODOR8d6u">
<button class='button' type='submit'> Update email </button>
</form>
با درست ست شدن توکن CSRF درخواستهای حساس، شبیه به درخواست زیر ارسال میشن:
POST /my-account/change-email HTTP/1.1
Host: normal-website.com
Content-Length: 70
Content-Type: application/x-www-form-urlencoded
csrf=50FaWgdOhi9M9wyna8taR1k3ODOR8d6u&[email protected]
و با وجود توکن CSRF جلوی این آسیب پذیری گرفته میشه. چرا که مهاجم نمیتونه این توکن رو حدس بزنه و درخواست کاربر رو جعل کنه.
البته این رو هم توجه کنید که توکن CSRF همیشه به عنوان یه پارامتر مخفی با متد POST ارسال نمیشه و توی برخی موارد به عنوان یه هدر HTTP هم ست میشه.
<form name="change-email-form" action="/my-account/change-email" method="POST">
<label>Email</label>
<input required type="email" name="email" value="[email protected]">
<input required type="hidden" name="csrf" value="50FaWgdOhi9M9wyna8taR1k3ODOR8d6u">
<button class='button' type='submit'> Update email </button>
</form>
با درست ست شدن توکن CSRF درخواستهای حساس، شبیه به درخواست زیر ارسال میشن:
POST /my-account/change-email HTTP/1.1
Host: normal-website.com
Content-Length: 70
Content-Type: application/x-www-form-urlencoded
csrf=50FaWgdOhi9M9wyna8taR1k3ODOR8d6u&[email protected]
و با وجود توکن CSRF جلوی این آسیب پذیری گرفته میشه. چرا که مهاجم نمیتونه این توکن رو حدس بزنه و درخواست کاربر رو جعل کنه.
البته این رو هم توجه کنید که توکن CSRF همیشه به عنوان یه پارامتر مخفی با متد POST ارسال نمیشه و توی برخی موارد به عنوان یه هدر HTTP هم ست میشه.
قانون هافستتر:
هر چیزی بیشتر از آنچه که انتظار دارید طول میکشد
قانون هافستتر یا قانون هوفستاتر (Hofstadter's Law) یک اصل طنزآمیز است که در مورد برآورد زمان مورد نیاز برای انجام یک کار به کار میرود. این قانون میگوید:
هر کاری بیشتر از آن چیزی که انتظار دارید طول میکشد، حتی اگر این قانون را در نظر بگیرید
این قانون، به طرز شگفتانگیزی، بسیاری از تجربیات ما را در زندگی روزمره و پروژههای مختلف توصیف میکند. به نظر میرسد که هر چقدر هم که سعی کنیم زمان لازم برای انجام یک کار را دقیقاً تخمین بزنیم، همیشه با تأخیر مواجه میشویم.
#قوانین_هکرها
هر چیزی بیشتر از آنچه که انتظار دارید طول میکشد
قانون هافستتر یا قانون هوفستاتر (Hofstadter's Law) یک اصل طنزآمیز است که در مورد برآورد زمان مورد نیاز برای انجام یک کار به کار میرود. این قانون میگوید:
هر کاری بیشتر از آن چیزی که انتظار دارید طول میکشد، حتی اگر این قانون را در نظر بگیرید
این قانون، به طرز شگفتانگیزی، بسیاری از تجربیات ما را در زندگی روزمره و پروژههای مختلف توصیف میکند. به نظر میرسد که هر چقدر هم که سعی کنیم زمان لازم برای انجام یک کار را دقیقاً تخمین بزنیم، همیشه با تأخیر مواجه میشویم.
#قوانین_هکرها