
Crawler-ის სახელი ლოგში მტკიცებაა: Google Cloud-ის ერთი ქსელიდან მოსული მოთხოვნების 38% .env ფაილებს ითხოვდა
Google Cloud-ის ერთი ქსელიდან crawler-ის სახელით მოსული 1 395 მოთხოვნიდან 533 საიდუმლო ან კონფიგურაციის ფაილს ითხოვდა, მაშინ როცა სხვა ქსელებიდან ასეთი მოთხოვნა არცერთი იყო. მონაცემები ერთი პატარა საიტის 82 საათს მოიცავს.
პატარა საიტის 82-საათიანი ლოგის ანალიზმა აჩვენა, რომ user agent-ში მითითებული crawler-ის სახელი იმას არ ადასტურებს, თუ ვინ გაგზავნა მოთხოვნა. dev.to-ზე გამოქვეყნებულ ანგარიშში ავტორი Reese Calder მოთხოვნის მიერ დასახელებულ ბოტს იმ ქსელს ადარებს, საიდანაც მოთხოვნა რეალურად მოვიდა.
რა შემოწმდა
საიტი მცირეა: ერთი Cloudflare Worker ორ ჰოსტნეიმზე. 23 სექტემბრიდან Worker-ი ინახავს ASN-საც, რომელსაც Cloudflare request.cf.asn-ში გადასცემს. დაკვირვების ფანჯარა 23 სექტემბრის 03:02 საათიდან 26 სექტემბრის 13:00 საათამდე პერიოდს მოიცავს (UTC): 82 საათი და 18 846 მოთხოვნა.
თითოეულ მოთხოვნაზე სამი რამ ფიქსირდებოდა: crawler-ის სახელი user agent-ში (ცნობილი crawler-ებისა და fetcher-ების 22 სახელი), ქსელი და ის, ითხოვდა თუ არა მოთხოვნა საიდუმლო ან კონფიგურაციის ფაილს, როგორიცაა .env, .git, id_rsa ან wp-config. დოკუმენტირებული crawler-ი ასეთ ფაილებს არ ითხოვს.
რა აღმოჩნდა
18 846 მოთხოვნიდან 5 180 (27,5%) ერთი ქსელიდან, AS396982-დან მოვიდა, რაც Google Cloud-ია. მათგან 2 696 (52%) ასეთ ფაილს ითხოვდა, მაშინ როცა ყველა სხვა ქსელმა ერთად 13 666 მოთხოვნიდან მხოლოდ 296 ასეთი მოთხოვნა გაგზავნა. Crawler-ის სახელით მოსული 1 395 მოთხოვნა ამავე ქსელიდან იყო და მათგან 533 (38,2%) საიდუმლო ან კონფიგურაციის ფაილს ითხოვდა. სხვა ქსელებიდან crawler-ის სახელით მოსულ 867 მოთხოვნაში ასეთი მოთხოვნა არცერთი არ ყოფილა, ხოლო 867-იდან 754 (87%) იმ ქსელიდან მოვიდა, რომელიც crawler-ის ოპერატორს ემთხვევა: Applebot Apple-ის, bingbot Microsoft-ის, ClaudeBot კი Anthropic-ის ქსელიდან.
შვიდი სახელი, მათ შორის Google-Extended (56 მოთხოვნა), მხოლოდ ამ ერთი ქსელიდან გამოჩნდა.
რატომ არის მნიშვნელოვანი
Google-Extended ყველაზე ნათელი მაგალითია: Google-ის დოკუმენტაციის მიხედვით, ამ ტოკენს ცალკე HTTP user agent არ აქვს და ის მხოლოდ robots.txt-ში გამოიყენება, ამიტომ ასეთი მოთხოვნა ვიღაცის მტკიცებაა.
22 სექტემბერს ავტორის ლოგში ხუთი სხვადასხვა crawler-ის სახელი თითოეული 40-45 დარტყმით გამოჩნდა, რაც ერთი კლიენტის მიერ სახელების მონაცვლეობას ჰგავდა. მხოლოდ user agent-ზე დაფუძნებული ანგარიში ასეთ მოთხოვნებს crawler-ის ვიზიტად ითვლის, ისევე როგორც firewall-ის წესი, რომელიც მხოლოდ user agent-ს ემთხვევა.
გამოქვეყნების შემდეგ ავტორმა Worker-ი შეცვალა: 26 სექტემბრის 13:27 საათიდან (UTC) ასეთი მოთხოვნა ცალკე, „other bot“ კატეგორიაში ხვდება, ხოლო Google-Extended-ის სახელის მქონე მოთხოვნა 13:33 საათიდან „spoofed crawler name“-ად აღინიშნება.
შეზღუდვები
ავტორი ხაზს უსვამს, რომ მონაცემები ერთი პატარა საიტის 82 საათს მოიცავს. ლოგი კლიენტის IP-ს არ ინახავს, ამიტომ ოპერატორების გამოქვეყნებულ დიაპაზონებთან შედარება არ მომხდარა, ოპერატორის სვეტი კი თავად ავტორის დაშვებაა. ფაილზე დაფუძნებული ტესტი მხოლოდ იმ მოთხოვნებს იჭერს, რომლებიც თავად წარმოაჩენენ თავს, ამიტომ 533 ქვედა ზღვარია. Google Cloud-ზე პატიოსანი ბოტებიც მუშაობენ (მაგალითად, AgenstryBot და ProwlBot), ასე რომ, იმავე ქსელიდან მოსული 862 მოთხოვნა, რომლებმაც ასეთი ფაილი არ ითხოვეს, ჯერ არაფერს ამტკიცებს.
SiTech — AI-გაძლიერებული ვებ დეველოპმენტი
ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.