چگونه خطرات امنیتی را با استفاده از فایل Robots.txt رفع کنیم

طراحی سایت در مشهد

استاندارد محرومیت ربات نزدیک به 25 ساله است، اما خطرات امنیتی ناشی از استفاده نادرست از استاندارد به طور گسترده ای درک نمی شود.

اشتباه در مورد هدف استاندارد ربات باقی مانده است.

برای یادگیری نحوه استفاده از آن به منظور جلوگیری از خطرات امنیتی و حفظ اطلاعات حساس خود ، حتما این مقاله را مطالعه کنید.


استاندارد های ربات و فایل robots.txt چیست؟

فایل robots.txt مورد استفاده قرار می گیرد تا چند چیز در مورد ساختار یک وب سایت به خزنده های وب و سایر ربات ها بگوید. این فایل قابل دسترسی است و همچنین می تواند به سرعت و به راحتی توسط انسان خوانده و درک شود.

فایل robots.txt می تواند به خزنده ها بگوید فایل XML Sitemap را کجا پیدا کند، سایت با چه سرعتی می تواند کراول شود و کدام صفحات وب و دایرکتوری ها نباید کراول شوند.

قبل از اینکه یک ربات خوب یک صفحه وب را کراول کند، ابتدا به دنبال فایل robots.txt می گردد و اگر وجود داشته باشد، معمولا به دستورالعمل های موجود در آن احترام می گذارد.

فایل robots.txt یکی از اولین چیزهایی است که تمرین کنندگان جدید SEO در مورد آن می آموزند. استفاده از آن آسان و بسیار قدرتمند است.

برای اینکه به یک ربات بگوییم که یک صفحه وب یا دایرکتوری کراول نشود، استاندارد ربات استفاده از «  Disallow» است - که در آن یک ربات مجاز برای دسترسی به صفحات نیست.
 

خطر امنیتی Robots.txt

فایل robots.txt یک دستور سخت نیست، فقط یک پیشنهاد است. ربات های خوب مانند Googlebot به دستورالعمل های فایل robots.txt احترام می گذارند.

هر چند ربات های بد ممکن است به طور کامل آن را نادیده بگیرند. در واقع، برخی ربات ها از جمله ربات های نفوذی به طور خاص به دنبال فایل robots.txt می گردند تا به بخش های غیر مجاز سایت پی ببرند.

اگر یک فرد خائن - چه انسان یا ربات - در تلاش برای پیدا کردن اطلاعات خصوصی یا محرمانه در یک وبسایت باشد، لیست disallow در فایل robots.txt میتواند به عنوان یک نقشه عمل کند. این نخستین و واضح ترین مکان برای نگاه کردن است.

به این ترتیب، اگر یک مدیر سایت فکر می کند که از فایل robots.txt استفاده می کند تا محتوا را امن کند و صفحات خصوصی را حفظ کند، احتمالا به طور کامل مخالف عمل می کند.

موارد متعددی نیز وجود دارد که این اطلاعات به طور جدی محرمانه نیستند، اما مطلوب نیست که یک رقیب این بخش ها را پیدا کند.

به عنوان مثال، فایلهای robots.txt میتوانند اطلاعاتی در مورد الگوهای URL تست A / B یا بخشهای وب سایت که جدید و در حال توسعه هستند را شامل شود.

در این موارد ممکن است یک خطر واقعی امنیتی نباشد، اما هنوز ریسک دسترسی به یک سند حساس در این بخش ها وجود دارد.
 

بهترین روش برای کاهش خطر فایل های Robots.txt

چندین روش برای کاهش خطرات فایلهای robots.txt وجود دارد:
 

1. درک اینکه Robots.txt برای چه چیز هایی مفید است و برای چه چیز هایی نیست

استاندارد ربات ها برای حذف یک URL از ایندکس موتور جستجو کمکی نخواهد کرد و موتور جستجو را از اضافه کردن یک URL به فهرست آن متوقف نخواهد کرد.

موتورهای جستجو معمولا URL ها را به فهرست خود اضافه می کنند، حتی اگر به آنها دستور داده باشیم که نیازی به ردیابی URL نداشته باشند. کراول کردن و ایندکس کردن URL با هم متفاوت است، و فایل robots.txt هیچ کاری برای توقف ایندکس کردن URL ها انجام نمی دهد.
 

2. هنگام استفاده همزمان از Noindex وdisallow در Robots.txt دقت کنید

این یک مورد بسیار نادر است که صفحه هم برچسب noindex داشته باشد و هم در فایل ربات disallow شود. در واقع، چنین موردی نباید وجود داشته باشد.

به تازگی، گوگل در نتایج این صفحات، پیام "برای این صفحه اطلاعاتی در دسترس نیست" را نمایش می دهد.

 

3. برای صفحاتی که باید خصوصی شوند اما در دسترس عمومی باشند از Noindex استفاده کنید

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

برای محتوا با این سطح امنیتی مورد نیاز، اگر خزنده از URL بازدید کند خوب است، اما ایندکس کردن آن، خوب نیست.

برای صفحاتی که باید خصوصی باشند و در دسترس عموم قرار نگیرند، حفاظت از رمز عبور یا لیست سفید آی پی بهترین راه حل است.

 

4. دایرکتوری ها را disallow کنید، نه صفحات خاص را

با disallow کردن صفحات خاص، شما پیدا کردن صفحاتی که می خواهید پیدا نشوند را برای ربات های بد آسان تر می کنید.

اگر یک دایرکتوری را disallow کنید، فرد یا ربات خرابکار می تواند صفحات پنهان را از طریق دایرکتوری پیدا کند، اما نقشه دقیقی از صفحات نخواهد داشت.

اطمینان حاصل کنید که یک صفحه index، یک تغییر مسیر یا یک 404 در دایرکتوری index قرار دهید تا مطمئن شوید فایلهای شما به صورت تصادفی از طریق یک صفحه «index of» نمایش داده نمی شوند. اگر یک صفحه index برای سطح دایرکتوری ایجاد کردید، پیوندهایی که به محتوای خصوصی اشاره می کنند را اضافه نکنید!


5. یک Honeypot برای بلک لیستIP  تنظیم کنید

اگر میخواهید امنیت خود را به سطح بعدی برسانید، با استفاده از فایل robots.txt خود، یک honeypot را تنظیم کنید. شامل یک دستور  disallow در robots.txt که برای افراد بد جذاب به نظر می رسد، مانند "Disallow: /secure/logins.html".

سپس، یک  سیستم IP logging  را بر روی منبع غیرمجاز تنظیم کنید. هر آدرس IP که تلاش می کند تا "logins.html" را بارگذاری کند وارد بلک لیست می شود، و از دسترسی آن به هر بخش از وب سایت شما جلوگیری می شود.

 

نتیجه گیری

فایل robots.txt یک ابزار SEO مهم برای آموزش روبات های خوب در مورد نحوه رفتار آن هاست، اما می تواند به نوعی یک پروتکل امنیتی اشتباه و خطرناک باشد.

اگر صفحات وبی دارید که باید در دسترس عموم قرار داشته باشند، اما در نتایج جستجو نمایش داده نشوند، بهترین روش این است که از تگ noindex در صفحات خود استفاده کنید.

اضافه کردن یک لیست از URL ها به فایل robots.txt یکی از بدترین روش ها برای پنهان نگه داشتن URL ها است.