در حال بارگذاری...
بررسی نحوه مدیریت پسوندهای فایل توسط سرور وب و شناسایی فایلهای حساس با پسوندهای مختلف.
اهداف این درس
تست مدیریت پسوندهای فایل (File Extensions Handling Testing) شامل بررسی نحوه مدیریت فایلهای مختلف توسط سرور وب است. هدف شناسایی فایلهای حساسی است که ممکن است از طریق وب قابل دسترسی باشند، مثل فایلهای پشتیبان، پیکربندی، لاگ و کد منبع.
توسعهدهندگان معمولاً فایلهای پشتیبان، نسخههای قدیمی و فایلهای پیکربندی را در کنار فایلهای اصلی برنامه نگه میدارند. اگر این فایلها از طریق وب قابل دسترسی باشند، میتوانند اطلاعات حساسی مثل رمزهای عبور، کلیدهای API و کد منبع را فاش کنند.
| پسوند | نوع فایل | خطر |
|---|---|---|
| .bak, .old, .backup | فایل پشتیبان | کد منبع، تنظیمات |
| .config, .conf, .ini | فایل پیکربندی | رمزهای عبور، تنظیمات |
| .sql, .db, .sqlite | پایگاه داده | دادههای حساس |
| .log | فایل لاگ | اطلاعات سیستم، خطاها |
| .env | متغیرهای محیطی | کلیدها، رمزها |
| .git | مخزن Git | کد منبع، تاریخچه |
| .svn | مخزن SVN | کد منبع، تاریخچه |
| .DS_Store | macOS | اطلاعات ساختار پوشه |
| .htaccess | Apache | تنظیمات امنیتی |
| .php, .asp, .jsp | کد سمت سرور | منطق برنامه |
با استفاده از ابزارهایی مثل dirb، gobuster یا wfuzz، فایلها و پوشههای مخفی را شناسایی کنید. همچنین فایلهای پشتیبان را با الگوهای رایج جستجو کنید.
1# جستجوی فایلهای پشتیبان2gobuster dir -u https://target.com -w wordlist.txt -x bak,old,backup,config,sql34# جستجوی فایلهای مخفی5dirb https://target.com /usr/share/wordlists/dirb/common.txt67# بررسی فایلهای خاص8curl https://target.com/.env9curl https://target.com/.git/configبررسی کنید که آیا سرور وب محتوای پوشهها را بهصورت خودکار نمایش میدهد. این کار با دسترسی به پوشههای مختلف و بررسی پاسخ انجام میشود.
اگر سرور فیلتر پسوند دارد، تکنیکهای مختلف دور زدن را تست کنید:
دسترسی به فایلهای حساس میتواند منجر به نشت کد منبع، رمزهای عبور، کلیدهای API، دادههای پایگاه داده و تنظیمات امنیتی شود. این اطلاعات میتوانند برای حملات بعدی استفاده شوند.
توصیه عملی
یک لیست از پسوندهای ممنوع تهیه کنید و در پیکربندی سرور وب آنها را مسدود کنید. همچنین فرآیند استقرار باید شامل حذف فایلهای غیرضروری باشد.
فایلهای .bak، .old، .config و .sql نباید از طریق وب قابل دسترسی باشند.
Directory Listing باید در محیط تولید غیرفعال باشد.
فیلترهای پسوند ممکن است قابل دور زدن باشند.
کدام پسوند معمولاً شامل اطلاعات حساس است؟
چرا فایلهای پشتیبان خطرناک هستند؟
فایلهای پشتیبان معمولاً شامل کد منبع، تنظیمات پایگاه داده، رمزهای عبور و سایر اطلاعات حساس هستند. دسترسی به این فایلها میتواند اطلاعات کلیدی در اختیار مهاجم قرار دهد.