کلود نزدیک به 500 مشکل امنیتی منبع باز نگران کننده را نشان می دهد - کدهای C، جاوا و پایتون که همگی در معرض خطر هستند زیرا یک نقص به مدت 21 سال شناسایی نشد.
آنتروپیک استدلال می کند که شکار آسیب پذیری های فردی ما را به جایی نمی رساند. در عوض، مشاغل باید کدهای قابل دسترسی را کاهش دهند.
آنتروپیک از کلود برای تجزیه و تحلیل 25 پروژه منبع باز استفاده کرد و نزدیک به 500 مشکل امنیتی را کشف کرد.
تحقیقات نشان داده است که مسیرهای کد پیش از احراز هویت، تنظیمات امنیتی متضاد، و نقصهای پنهان مدتها آشکار شده است
هوش مصنوعی کاهشهای سطح حمله را شناسایی کرد که قبل از سوء استفاده از آسیبپذیریها، قرار گرفتن در معرض کدهای غیرضروری را حذف کرد. Anthropic اخیرا از Claude برای تجزیه و تحلیل 25 پروژه منبع باز اصلی نوشته شده در C، C++، Java، PHP و Python در جستجوی مسائل امنیتی استفاده کرد. تقریبا 500 مورد از آنها را پیدا کرد، از جمله کنترلهای امنیتی که به دلیل تداخل در تنظیمات، کدهای حساس قابل دسترسی قبل از احراز هویت، و حتی یک آسیبپذیری که به مدت 21 سال در کد وجود داشت.
این یک شکار استاندارد برای آسیبپذیریها نبود. آنتروپیک در گزارش خود استدلال می کند که جستجوی آسیب پذیری های فردی یک کار سیزیفی است که مقیاس ضعیفی دارد و هرگز امنیت را تضمین نمی کند. در عوض، فکر میکند که مدافعان باید با محدود کردن دسترسی غیرضروری به کدهای بالقوه قابل بهرهبرداری، به سمت کاهش سطوح حمله نرمافزاری روی بیاورند.
آنتروپیک گفت: "مدافعی که سطح حمله غیرضروری را در کد خود کاهش می دهد، خطر همه آسیب پذیری های ناشناخته در آن کد را به طور همزمان کاهش می دهد - از جمله آسیب پذیری هایی که در حال حاضر بی سر و صدا مورد سوء استفاده قرار می گیرند."
25 پروژه اسکن شده شامل بیش از پنج میلیون خط کد بود. کلود فهرستی از بیش از 17000 گزینه پیکربندی ایجاد کرد که 3842 مورد آن مربوط به کنترلها و ویژگیهای مرتبط با امنیت بود.
کنترل های امنیتی اشتباه پیکربندی شده است
تحقیقات این شرکت بر سه روشی است که ممکن است کد بهطور غیرضروری در معرض دید قرار گیرد: ویژگیهایی که در پیکربندی پیشفرض در مواقعی که مورد نیاز نیستند قابل دسترسی هستند، تنظیمات مختلف که در صورت ترکیب، امنیت را از بین میبرند، و کدهای پیچیده و غیر ضروری که قبل از بررسیهای امنیتی اجرا میشوند.
تجزیه و تحلیل نشان داد که تمام 11 پروژه، که برای خدمت به کاربران احراز هویت شده طراحی شده بودند، حاوی کدهایی بودند که در زمانی که نباید قابل دسترسی بودند. اینها شامل 93 سطح حمله پیش از احراز هویت در تنظیمات پیش فرض، 37 نمونه از اجرای کد قبل از احراز هویت، و 61 ترکیب از پیکربندی های مختلف است که کنترل های پیش از احراز هویت را از بین می برد.
در مجموع، 25 پروژه تجزیه و تحلیل شده شامل 162 ترکیب پیکربندی بودند که بدون اینکه مستندات آنها توضیح دهد که چگونه باید رفتار کنند، پذیرفته شدند. در برخی موارد، کنترل های امنیتی غیرفعال می شد. در برخی دیگر، ناهماهنگی ها و مشکلات مختلفی وجود داشت.
آنتروپیک دریافت که یک نقص پیکربندی برای بیش از دو دهه کشف نشده بود. در حالی که یک تنظیم باعث میشد مشتریان هویت خود را از طریق گواهیها اثبات کنند، یکی دیگر آن را کاملا غیرفعال کرد (حتی اگر برای به تأخیر انداختن چک طراحی شده بود، نه از بین بردن آن). اگرچه اینها گزینه های متناقضی بودند، اما بدون هشدار پذیرفته شدند.
OpenSSH هزاران خط کد را در معرض دید قرار داد
Anthropic OpenSSH را به عنوان مطالعه موردی خود برای این گزارش انتخاب کرده است. این نرم افزار که به طور گسترده برای ارائه دسترسی از راه دور ایمن مورد استفاده قرار می گیرد، حاوی دیمونی بود که می توانست به 4500 خط کد آزمایشی برسد که یک الگوریتم امضای پس کوانتومی را قبل از بررسی اینکه آیا پیکربندی سرور مجاز به آن است، پیاده سازی می کند.
همانطور که مشخص شد، این الگوریتم به طور پیش فرض غیرفعال بود، اما کد تجزیه آن برای کلاینت های احراز هویت نشده قابل دسترسی بود. Anthropic یافتههای خود را برای OpenSSH فاش کرد، که با یک اصلاح در نسخه 10.6 بازگشت که در آن حدود 20٪ از کد اکنون توسط کلاینتهای احراز هویت نشده قابل دسترسی نبود.
این شرکت گفت که این تکنیکها را در یک مهارت کلود قابل استفاده مجدد ترکیب کرده است که به زودی در OSS-Scanner، سرویس اسکن امنیتی رایگان و انتخابی آن برای پروژههای منبع باز، ادغام خواهد شد. این مهارت پیکربندیهای پیشفرض، کدهایی که قبل از بررسیهای امنیتی قابل دسترسی است و همچنین تنظیمات تنظیماتی که با یکدیگر در تضاد هستند را بررسی میکند.
آنتروپیک اضافه کرد که این سیستم یافته ها را از طریق ردیابی برنامه پویا تایید می کند و تغییرات پیشنهادی را در برابر رفتار موجود آزمایش می کند. تغییرات بالقوه مخرب در اختیار انسان ها گذاشته می شود تا بررسی کنند.
محققان نتیجه گرفتند: «شاید اندازهگیری تعداد آسیبپذیریهای ناشناخته در هر پایگاه کد معین غیرممکن باشد. و دادههای زیادی وجود دارد که نشان میدهد مهاجمان میتوانند این آسیبپذیریها را با زمان کافی پیدا کنند و خواهند یافت (به ویژه اگر مجهز به مدلهای هوش مصنوعی مرزی باشند). بنابراین، هوش مصنوعی می تواند به توسعه دهندگان کمک کند تا به طور سیستماتیک قرار گرفتن در معرض غیر ضروری را محدود کنند و حمله به نرم افزار را بسیار سخت تر کند.
متن اصلی (انگلیسی)
Claude flags nearly 500 worrying open source security issues — C, Java, and Python code all at risk as one flaw wasn't spotted for 21 years
Hunting for individual vulnerabilities will get us nowhere, Anthropic argues. Instead, businesses should reduce accessible code.