چهارشنبه ۱۱ آبان ۰۱ ۱۱:۳۴ ۸۷۰ بازديد
فیلترهای Context-specific deserialization در ورژن 17 جاوا به نرم افزار ها اذن میدهند طراحی سایت در مشهد تا فیلترهای deserialization که به طور داینامیک گزینش گردیده اند یا این که فیلترهایی که context-specific میباشند را تنظیمات نمایند. این شغل از روش فراخوانی تولید کننده غربال JVM-wide شکل میگیرد که یک غربال را برای هریک از عملیات های serialization تعیین می نماید.
اوراکل راجع به علت ای که پشت این خصوصیت وجود داشت میگوید: deserialize کردن داده های غیر قابل اتکا ذاتا یک عمل خطرناک میباشد به دلیل آن که داده ای که از جریان اطلاعات بیرون میشود معین کننده شیئی که تشکیل شده، رایاپارس قیمت فیلدهای متعدد آن و یک مرجع فی مابین آنها میباشد. در بخش اعظمی از مورد ها بایت هایی که درون جریان داده وجود دارا هستند از سمت کاربری که ناشناخته، غیرقابل اتکا و احراز نام و نشان نشده میباشد میباشد. با ارتقا توجه در تشکیل داد جریان داده رقبای شما میتوانند ahrefs به آسانی کلاس های کد شمارا بهم ریخته و با هدف ها مخرب داده های اشتباهی را وارد کدهای شما نمایند. در صورتی ایجاد کرد شی ها دارنده اثرات جانبی باشد که وضعیت را عوض نماید یا بقیه اقدامات را فراخوانی نماید این اقدامات جانبی میتوانند یکپارچگی شی ءها نرم افزار را به خطر انداخته و منجر ساخت و ساز خطرها و ریسک های متفاوت در شی ءها کتابخانه ها و همچنین ران تایم جاوا شوند.
کلید مهم دوری از حمله ها serialization
کلید مهم برای دوری از حمله ها serialization به اشیاء پیشین که در نرم افزار ها ایجاد شده است این میباشد که از جاری ساختن کردن بی واسطه یا این که غیر بی واسطه متدهای آنان خودداری کنیم. فیلترهای Deserialization در جاوا 9 معرفی شدند تا به کدهای نرم افزار و کتابخانه ها این قابلیت را بدهند که جریان داده خروجی را قبل از deserialize کردن آنان اعتبارسنجی نمایند. این کد هنگامی که یک جریان deserialization ساختوساز میشود منطق اعتبارسنجی را تحت عنوان یک java.io.ObjectInputFilter روی آن ایفا می نماید. با این اکنون می بایست اعتنا داشته باشید که توکل کردن بر تولیدکننده جریان اطلاعات برای درخواست بدون واسطه اعتبارسنجی دارنده محدودیت هایی میباشد.
بهبودهایی که در ورژن 17 جاوا صورت داده میباشد راهکارهایی را برای برطرف کردن این محدودیت ها با معرفی غربال JVM-wide deserialization ارائه داده میباشد که می اقتدار آن را با به کارگیری از یک API، خصوصیت های سیستم یا این که خصوصیت های امنیتی تهیه کرد ولی می بایست توجه داشته باشید کهاین روش نیز دارنده محدودیت هایی به خصوص در نرم افزار های بغرنج است. رویه عالی این میباشد که از فیلترهای منحصربهفرد هر جریان داده به کارگیری نمایید به این دلیلکه این فیلترها نیازی به شرکت کردن همگی سازندگان جریان های داده ندارند. این seo ها و اضافه شدن خصوصیت های تازه به گسترش دهندگان این اذن را میدهد تا فیلترهای قابل قبولی را برای هر deserialization context ساخته و در شکل نیاز آنان را انجام نمایند.