کد QR مطلبدریافت صفحه با کد QR

وجود آسیب‌پذیری در PYTHON-FLASK-RESTFUL-API

مرکز ماهر , 11 مرداد 1401 ساعت 9:00

یک آسیب‌پذیری بحرانی در PYTHON-FLASK-RESTFUL-API وجود دارد.


یک آسیب‌پذیری بحرانی در PYTHON-FLASK-RESTFUL-API وجود دارد.

به گزارش افتانا (پایگاه خبری امنیت فناوری اطلاعات)، مخزن akashtalole/python-flask-restful-api در GitHub تا نسخه ۲۰۱۹-۰۹-۱۶ دارای ‫آسیب‌پذیری بحرانی (۹.۳ از ۱۰) است.

این آسیب‌پذیری در تابع send_file کتابخانه flask یافت می‌شود. چنانچه فراخوانی این تابع در ماژول /app/api/exports.py با ورودی نامناسب (دنباله‌ای از "dot-dot-slash (../)" یا مسیرهای کامل فایل‌ها) انجام شود، می‌تواند باعث حمله پیمایش مسیر شده و دسترسی به فایل‌ها و دایرکتورهای اختیاری را که خارج از پوشه ریشه وب قرار دارند، میسر ‌سازد.

ریشه این مسئله در قطعه کد زیر نشان داده شده است؛ فراخوانی os.path.join برای استفاده با ورودی نامطمئن، امن نیست. هنگامی که os.path.join با استفاده از یک «مسیر کامل» فراخوانی می‌شود، تمام پارامترهای قبلی را نادیده گرفته و شروع به کار با مسیر کامل جدید می‌کند.

فراخوانی os.path.join با ورودی نامناسب

برای رفع این آسیب‌پذیر باید از اعمال ورودی نامطمئن به تابع آسیب‌پذیر send_file جلوگیری کرد و در صورتی که مطابق با منطق برنامه، این کار ضرورت داشته باشد، می‌توان از werkzeug.utils.safe_join برای استفاده از مسیرهای نامطمئن بهره برد یا فراخوانی‌های flask.send_file را با flask.send_from_directory جایگزین کرد.


کد مطلب: 19256

آدرس مطلب :
https://www.aftana.ir/news/19256/وجود-آسیب-پذیری-python-flask-restful-api

افتانا
  https://www.aftana.ir