از دسترسی عمومی به .git جلوگیری کنید

کنترل نسخه گیت اکنون تقریباً در هر پروژه و محیط وب (از جمله محیط عملیاتی) به یک روش استاندارد تبدیل شده است. گیت همیشه یک زیرشاخه به نام `.git` ایجاد می‌کند و اگر این زیرشاخه در همان سطح دایرکتوری عمومی وب‌سایت قرار داشته باشد، می‌توان به فایل‌های حساس به صورت عمومی دسترسی داشت (برای مثال، دسترسی به `/.git/logs/ HEAD` آخرین کامیت‌ها را نمایش می‌دهد). این راهنما به تفصیل نحوه کلون کردن یک مخزن گیت دیگر را حتی بدون فهرست دایرکتوری توضیح می‌دهد.


برای جلوگیری از این امر ، در مورد سرور Apache ، دسترسی به کل پوشه .git در پرونده .htaccess محدود شده و خطای 404 صادر می شود. مهاجم حتی نمی داند که این پوشه وجود دارد:

32b39d7c9836a649597019300a5c2115

اگر سرور NGINX شما در حال اجرا است، این قوانین مناسب خواهند بود.:

32b39d7c9836a649597019300a5c2115

بازگشت