حفاظت از برنامه های وب OWASP WAP یک ابزار برای شناسایی و اصلاح آسیب پذیری های اعتبار ورودی در برنامه های وب می باشد که با کد PHP نوشته شده است و پیش بینی های مثبتی را ارائه داده است .
فرآیند owasp wap فوق ترکیبی از تجزیه و تحلیل استاتیک کد منبع و داده کاوی برای شناسایی آسیب پذیری و پیش بینی اعتبارات نادرست است . سپس ، کد منبع را تصحیح می کند تا آسیب پذیری های واقعی را با قرار دادن اصلاحات (توابع کوچک) در مکان های مناسب کد منبع، حذف کند.
به طور خلاصه :
- OWASP WAP یک ابزار امنیتی برای شناسایی و حذف آسیب پذیری اعتبار سنجی ورودی در برنامه های وب است و پیش بینی های مفیدی ارائه می کند .
- جهت تشخیص آسیب پذیری با استفاده از تجزیه و تحلیل استاتیک کد منبع ، شروع به داده کاوی برای پیش بینی اعتبار های نادرست و کاذب و قرار دادن رفع اصلاح کد منبع می کند .
- شناسایی و اصلاح ۸ نوع آسیب پذیری اعتبار سنجی ورودی.
- کاربر را برای ساخت نرم افزار امن آموزش می دهد.
- در لینوکس، مکینتاش و ویندوز کار می کند.
- نیاز به اجرای JRE دارد.
- قابل حمل، آماده برای اجرا و بدون نیاز به نصب .
WAP آسیب پذیری های زیر را شناسایی و تصحیح می کند :
- (SQL Injection (SQLI
- (Cross-site scripting (XSS
- (Remote File Inclusion (RFI
- (Local File Inclusion (LFI
- (Directory Traversal or Path Traversal (DT/PT
- (Source Code Disclosure (SCD
- (OS Command Injection (OSCI
- PHP Code Injection
ابزار owasp wap کد منبع را تجزیه و تحلیل می کند.
به طور دقیق تر، تجزیه و تحلیل فوق (تجزیه و تحلیل جریان داده ها) جهت شناسایی آسیب پذیری های اعتبار سنجی ورودی می باشد . هدف از این تجزیه و تحلیل ردیابی ورودی های مخرب وارد شده در نقاط ورودی ( آرایه های GET, POST) و همچنین برای بررسی حساسیت توابع پی اچ پی که می توانند توسط ورودی های مخرب، مانند mysql_query مورد سوء استفاده قرار بگیرند می باشد .
پس از تشخیص، این ابزار با استفاده از داده کاوی تایید می کند که آسیب پذیری ها واقعی هستند یا کاذب . در پایان ، آسیب پذیری های واقعی با قرار دادن اصلاحات (تکه های کوچکی از کد) در کد منبع اصلاح می شود .
حفاظت از برنامه وب (WAP) توسط سه ماژول تشکیل شده است :
تجزیه و تحلیل کد :
ساخته شده توسط tree generator و تحلیلگر taint می باشد . این ابزار یک لایسنس و یک تجزیه کننده تولید شده توسط ANTLR و براساس دستور زبان و گرامر درخت نوشته شده در زبان PHP است . tree generator از lexer و parser برای ساخت (AST (Abstract Syntactic Tree در فایل های PHP استفاده می کند . تحلیلگر taint تجزیه و تحلیل را از طریق AST انجام می دهد تا آسیب پذیری های بالقوه را تشخیص دهد.
پیش بینی های خطای مثبت یا False Positives :
owasp wap متشکل از داده های آموزش دیده تحت نظارت با نمونه های طبقه بندی شده به عنوان آسیب پذیری ، خطای مثبت و الگوریتم یادگیری ماشین رگرسیون منطقی می باشد . برای هر آسیب پذیری احتمالی که توسط تحلیلگر کد شناسایی شده است ، این ماژول حضور ویژگی هایی را که خطای مثبت تعریف می شود را جمع آوری کرده و نمونه ای را با آنها ایجاد می کند.
سپس، الگوریتم پشتیبانی رگرسیون نمونه ها را دریافت می کند و آنها را به عنوان خطای مثبت یا مثبت کاذب یا نه (آسیب پذیری واقعی) طبقه بندی می کند .
اصلاح کننده کد :
هر آسیب پذیری واقعی با اصلاح کد منبع آن حذف می شود. این ماژول برای نوع آسیب پذیری ، اصلاحاتی را که آسیب پذیری را حذف می کند انتخاب می کند و مکان هایی را در کد منبع که در آن ثابت قرار می گیرد را نشان می دهد .
سپس کد اصلاح می شود و فایل های جدید ایجاد می شوند. رفع اشکال کوچکی از کد (توابع کوچک PHP که برای اثرگذاری ایجاد شده اند) که انجام sanitization یا اعتبار سنجی ورودی کاربر است ، بسته به نوع آسیب پذیری آن دارد
نصب و راه اندازی:
الزامات:
– (JRE (www.oracle.com
- در اینجا آخرین نسخه بسته WAP را دانلود کنید.
- بسته را به کامپیوتر محلی خود به یک دایرکتوری منتقل کنید.
- در ترمینال به دایرکتوری که در آن بسته استخراج شده است بروید.
- برای استفاده از این ابزار اسکریپت wp را اجرا کنید. در اینجا می توانید امکانات این ابزار را مشاهده کنید.