የክላውድፌር (Cloudflare) ነጻ እቅድ ላይ የመረጃ ሰብሳቢ (scraper) ጥቃት፡ የቆመው ምንድን ነው፣ የተዘጉትስ ምንድን ናቸው

ኦፕስ

አንድ ጠዋት የምርት መግለጫ (listing) ጣቢያችን መክፈት ቀመጠ። ክላውድፌር (Cloudflare) ጎብኚዎችን 524 አሳየ፣ መነሻው (origin) ለእያንዳንዱ ገጽ ከሁለት እስከ ስድስት ደቂቃ ወሰደ፣ እና ለወደ 10 ሰዓታት ማንም አልነገረንም። ምክንያቱ የመረጃ ሰብሳቢ (scraper) በመኖሪያ ፕሮክሲዎች (residential proxies) በኩል በሰከንድ ወደ 225 ጥያቄዎች ሲያካሂድ ነበር።

የጥቃቱ ቅርጽ

ለእያንዳንዱ ጥያቄ እያንዳንዱ ገጽ ስለተሰራ (rendered)፣ እያንዳንዱ ሰራተኛ (worker) መቶዎችን የሚቆጠሩ ማቅረቦችን ወደ ወረፋ ገብቶ የCPU ገደቡን አገኘ።

ለአድራሻ የሚሰጡ ገደቦች ለምን ሊረዱ አልቻሉም

የፍጥነት ገደብ (rate limit) ጥያቄዎችን በአድራሻ ይቆጥራል። ከሺህዎች አድራሻዎች እያንዳንዱ ከአንድ እስከ ሶስት ጥያቄዎች ሲያደርግ፣ ምንም አንድ አድራሻ ወደ ገደቡ አይጠጋም። ሀገሮችን መከልከል ጎብኚዎቻችንን ይከለክላቸው ነበር። የመረጃ ሰብሳቢው በአነስተኛ ወጪ ማስመሰል ያልቻለው፣ ቀደም ሲል ወደ ጣቢያው የሄደ አሳሽ እንደሆነ መታየት ነበር።

በክላውድፌር (Cloudflare) ዳርቻ ላይ፡ ሶስት ነጻ ደንቦች

ነጻው እቅድ ለእያንዳንዱ ዞን አምስት የWAF ልዩ ደንቦችን ይፈቅዳል። ሶስቱን ተጠቀምን፣ ሁሉም ከመከልከል ይልቅ የተቆጣጠረ ፈተና (managed challenge) እንዲሆን ተደርጎ ነው፣ ስለዚህ በስህተት የተያዘ ሰው በጠቅታ ያልፋል፡

ሦስቱም የCloudflare የተረጋገጡ ቦቶችን፣ እንደ ሮቦት ራሳቸውን የሚገልጹ የተጠቃሚ ኤጀንቶችን፣ የእኛ አድራሻዎችን፣ የAPI እና የዌብሁክ መንገዶችን፣ እንዲሁም ገጽ ያልሆኑ ፋይሎችን ያስታል። ከሁለት ቀናት በኋላ ጎርፉ አሁንም እየተከናወነ ነበር፡ በአንድ ሰዓት ውስጥ የውሸት-አሳሽ ሕጉ ከ10,000 በላይ ጥያቄዎችን ፈተና አስገብቷል። Cloudflare በእያንዳንዱ ጥያቄ የሚመልሳቸው 10,000 ክስተቶች ከ9,627 አድራሻዎች የመጡ ሲሆን፣ ከ4 በላይ የሚያደርጉ አልነበሩም።

በመነሻው፡ በመተግበሪያው ውስጥ ያለ መስተጋብር

የራስ-ሰር ክፍሉ ሙሉ የአሳሽ ራስ-ገጾች (headers) ስላሉት፣ የድንበር ሕጎች ብቻ የአስቸኳይ ሕጉ ሲጠፋ ይይዙታል። በመተግበሪያው ውስጥ በገጽ አሳሽው ፊት ትንሽ ሚድልዌር አስቀምጠናል፡

በመጀመሪያው ደቂቃ መስተጋብሩ በግምት 6,700 የውሸት አሳሾችን ውድቅ አደረገ እና በግምት 6,700 እንግዶችን አባረረ፣ በሰከንድ ግን ለእንግዶች በግምት 9 ገጾችን አቀረበ። ቀርፋፋ ጥያቄዎች ወደ ዜሮ ቀነሱ፣ የሠራተኞች CPU ከገደባቸው ወደ 12 እስከ 15 በመቶ ቀነሰ፣ እና ማህደራቸው ከእያንዳንዱ 4 እስከ 5 GB ወደ 0.65 GB ቀነሰ።

የተዘጉት ነገሮች

ዋናው ማስተዋል

በመኖሪያ ፕሮክሲዎች የሚመጣ ጎርፍ በሌላቸው ነገሮች በቀላሉ ይታወቃል፡ የአሳሽ fetch headers፣ ኩኪዎች እና Referers። ይህንን በድንበሩ ላይ ይፈትኑ፣ እንግዶችን ሠራተኞችዎ ማቅረብ በሚችሉት ወሰን ውስጥ ያስቀርጡ፣ እና አንድ ገጽ መክፈት ሲቆም ከሰርቨሩ ውጭ ያለ ነገር እንዲያስተውል ያድርጉ። Night Watch ሦስቱንም ያሳልፋል፡ የክትትል ስርዓቱ፣ ለአስቸኳይ ሕጉ ራስ-ሰር ማብሪያ/ማጥፊያ ያላቸው ሕጎች፣ እና ለPython የዌብ መተግበሪያዎች መስተጋብሩ።

ተሻሽሏል: