DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

ቫርቲ ከቦቶች እና ከ DDoS ጥቃቶች ጥበቃን ያዳብራል, እንዲሁም የጭንቀት እና የጭነት ሙከራዎችን ያካሂዳል. በHighLoad++ 2018 ኮንፈረንስ ላይ ከተለያዩ የጥቃት አይነቶች ሃብቶችን እንዴት መጠበቅ እንደምንችል ተነጋግረናል። ባጭሩ፡ የስርዓቱን ክፍሎች ማግለል፣ የደመና አገልግሎቶችን እና ሲዲኤንን ተጠቀም እና በየጊዜው አዘምን። ግን አሁንም ያለ ልዩ ኩባንያዎች ጥበቃን ማስተናገድ አይችሉም :)

ጽሑፉን ከማንበብዎ በፊት, አጫጭር ጽሑፎችን ማንበብ ይችላሉ በኮንፈረንስ ድህረ ገጽ ላይ.
እና ማንበብ የማትወድ ከሆነ ወይም ቪዲዮውን ለማየት ብቻ የምትፈልግ ከሆነ የሪፖርታችን ቀረጻ በአበላሹ ስር ነው።

የሪፖርቱ ቪዲዮ ቀረጻ

ብዙ ኩባንያዎች የጭነት ሙከራን እንዴት እንደሚሠሩ አስቀድመው ያውቃሉ, ነገር ግን ሁሉም የጭንቀት ሙከራዎችን አያደርጉም. አንዳንድ ደንበኞቻችን ከፍተኛ ጭነት ስርዓት ስላላቸው ጣቢያቸው የማይበገር ነው ብለው ያስባሉ እና ከጥቃቶች በደንብ ይከላከላል። ይህ ሙሉ በሙሉ እውነት እንዳልሆነ እናሳያለን.
እርግጥ ነው፣ ሙከራዎችን ከማድረጋችን በፊት፣ ከደንበኛው ፈቃድ አግኝተናል፣ ፈርመናል እና ማህተም አደረግን፣ እና በእኛ እርዳታ የ DDoS ጥቃት በማንም ላይ ሊፈጸም አይችልም። ሙከራ የሚከናወነው በደንበኛው በተመረጠው ጊዜ ነው ፣ ወደ ሀብቱ የሚወስደው ትራፊክ አነስተኛ በሚሆንበት ጊዜ እና የመዳረሻ ችግሮች ደንበኞችን አይጎዱም። በተጨማሪም, በፈተና ሂደት ውስጥ አንድ ነገር ሁልጊዜ ሊሳሳት ስለሚችል, ከደንበኛው ጋር የማያቋርጥ ግንኙነት አለን. ይህ የተገኘውን ውጤት ሪፖርት ለማድረግ ብቻ ሳይሆን በፈተና ወቅት የሆነ ነገር ለመለወጥ ያስችላል. ሙከራውን እንደጨረስን፣ የተገኙትን ድክመቶች የምንጠቁምበት እና የገጹን ድክመቶች ለማስወገድ ምክሮች የምንሰጥበት ሪፖርት ሁልጊዜ እንዘጋጃለን።

እንዴት እየሰራን ነው።

በፈተና ጊዜ, ቦትኔትን እንኮርጃለን. እኛ የምንሰራው በእኛ ኔትወርኮች ላይ ከሌሉ ደንበኞች ጋር በመሆኑ፣በመጀመሪያው ደቂቃ ላይ ፈተናው በገደብ ወይም በተፈጠረ ጥበቃ ምክንያት እንዳያልቅ፣ጭነቱን የምናቀርበው ከአንድ አይፒ ሳይሆን ከራሳችን ሳብኔት ነው። በተጨማሪም፣ ጉልህ ጭነት ለመፍጠር የራሳችን በጣም ኃይለኛ የሙከራ አገልጋይ አለን።

ይለጠፋል።

መብዛት ጥሩ ማለት አይደለም።
አነስተኛ ሸክም ሀብትን ወደ ውድቀት ማምጣት የምንችል ሲሆን የተሻለ ይሆናል። ጣቢያው በሴኮንድ በአንድ ጥያቄ፣ ወይም በደቂቃ አንድ ጥያቄ እንኳን ስራውን እንዲያቆም ማድረግ ከቻሉ በጣም ጥሩ ነው። ምክንያቱም በጥቃቅን ህግ መሰረት ተጠቃሚዎች ወይም አጥቂዎች በአጋጣሚ በዚህ ልዩ ተጋላጭነት ውስጥ ይወድቃሉ።

ከፊል ውድቀት ከሙሉ ውድቀት ይሻላል
ስርዓቶችን የተለያዩ እንዲሆኑ ሁልጊዜ እንመክራለን። ከዚህም በላይ እነሱን በአካላዊ ደረጃ መለየት ተገቢ ነው, እና በመያዣነት ብቻ አይደለም. አካላዊ መለያየትን በተመለከተ, በጣቢያው ላይ የሆነ ነገር ቢወድቅ እንኳን, ሙሉ በሙሉ መስራቱን የማያቆም ከፍተኛ እድል አለ, እና ተጠቃሚዎች ቢያንስ በከፊል የተግባርን መዳረሻ ማግኘታቸውን ይቀጥላሉ.

ጥሩ አርክቴክቸር ለዘላቂነት መሰረት ነው።
የሃብት ስህተት መቻቻል እና ጥቃቶችን እና ሸክሞችን የመቋቋም ችሎታ በዲዛይን ደረጃ ላይ መቀመጥ አለበት, በእውነቱ, በማስታወሻ ደብተር ውስጥ የመጀመሪያውን የፍሰት ገበታዎች በመሳል ደረጃ ላይ. ምክንያቱም ገዳይ ስህተቶች ወደ ውስጥ ዘልቀው ከገቡ, ለወደፊቱ እነሱን ማረም ይቻላል, ግን በጣም ከባድ ነው.

ኮዱ ጥሩ ብቻ ሳይሆን ውቅሩም መሆን አለበት
ብዙ ሰዎች ጥሩ የእድገት ቡድን ስህተትን የሚቋቋም አገልግሎት ዋስትና ነው ብለው ያስባሉ። ጥሩ የእድገት ቡድን በእርግጥ አስፈላጊ ነው, ነገር ግን ጥሩ ስራዎች, ጥሩ DevOps መኖር አለባቸው. ማለትም ሊኑክስን እና አውታረ መረቡን በትክክል የሚያዋቅሩ ፣ በ nginx ውስጥ በትክክል የሚፃፉ ፣ ገደቦችን የሚያዘጋጁ ፣ ወዘተ ልዩ ባለሙያዎችን እንፈልጋለን። አለበለዚያ ሀብቱ በጥሩ ሁኔታ የሚሰራው በሙከራ ላይ ብቻ ነው, እና አንዳንድ ጊዜ ሁሉም ነገር በምርት ውስጥ ይሰበራል.

በጭነት እና በጭንቀት መሞከር መካከል ያሉ ልዩነቶች
የጭነት ሙከራ የስርዓቱን አሠራር ወሰኖች ለመለየት ያስችልዎታል. የጭንቀት ሙከራ በስርዓት ውስጥ ድክመቶችን ለማግኘት ያለመ ነው እና ይህንን ስርዓት ለመስበር እና በአንዳንድ ክፍሎች ውድቀት ሂደት ውስጥ እንዴት እንደሚታይ ለማየት ይጠቅማል። በዚህ ሁኔታ, የጭንቀት ሙከራ ከመጀመሩ በፊት የጭነቱ ባህሪ ብዙውን ጊዜ ለደንበኛው የማይታወቅ ነው.

የ L7 ጥቃቶች ልዩ ባህሪያት

ብዙውን ጊዜ የጭነት ዓይነቶችን በ L7 እና L3&4 ደረጃዎች ወደ ጭነት እንከፋፍላለን። L7 በአፕሊኬሽን ደረጃ ላይ ያለ ጭነት ነው፣ ብዙ ጊዜ ኤችቲቲፒ ብቻ ማለት ነው፣ ነገር ግን በTCP ፕሮቶኮል ደረጃ ላይ ያለ ማንኛውንም ጭነት ማለታችን ነው።
L7 ጥቃቶች የተወሰኑ ልዩ ባህሪያት አሏቸው. በመጀመሪያ ፣ እነሱ በቀጥታ ወደ ማመልከቻው ይመጣሉ ፣ ማለትም ፣ በአውታረ መረብ መንገዶች ሊገለጡ አይችሉም። እንደነዚህ ያሉት ጥቃቶች አመክንዮዎችን ይጠቀማሉ እና በዚህ ምክንያት ሲፒዩ ፣ ማህደረ ትውስታ ፣ ዲስክ ፣ ዳታቤዝ እና ሌሎች ሀብቶችን በጣም በተቀላጠፈ እና በትንሽ ትራፊክ ይጠቀማሉ።

HTTP ጎርፍ

በማንኛውም ጥቃት ላይ, ሸክሙ ከመፍጠር ይልቅ ለመፍጠር ቀላል ነው, እና በ L7 ሁኔታ ይህ እውነት ነው. የጥቃት ትራፊክን ከህጋዊ ትራፊክ መለየት ሁል ጊዜ ቀላል አይደለም ፣ እና ብዙውን ጊዜ ይህ በድግግሞሽ ሊከናወን ይችላል ፣ ግን ሁሉም ነገር በትክክል የታቀደ ከሆነ ፣ ጥቃቱ የት እንዳለ እና ህጋዊ ጥያቄዎች የት እንዳሉ ከምዝግብ ማስታወሻዎች መረዳት አይቻልም።
እንደ መጀመሪያ ምሳሌ የኤችቲቲፒ ጎርፍ ጥቃትን ተመልከት። ግራፉ እንደሚያሳየው እንደዚህ አይነት ጥቃቶች ብዙውን ጊዜ በጣም ኃይለኛ ናቸው, ከታች ባለው ምሳሌ, ከፍተኛው የጥያቄዎች ብዛት በደቂቃ ከ 600 ሺህ አልፏል.

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

የኤችቲቲፒ ጎርፍ ጭነት ለመፍጠር ቀላሉ መንገድ ነው። በተለምዶ፣ እንደ ApacheBench ያሉ አንዳንድ ዓይነት የጭነት መሞከሪያ መሳሪያ ይወስዳል፣ እና ጥያቄ እና ኢላማ ያዘጋጃል። በእንደዚህ ዓይነት ቀላል አቀራረብ ወደ አገልጋይ መሸጎጫ ውስጥ የመሮጥ እድሉ ከፍተኛ ነው ፣ ግን እሱን ለማለፍ ቀላል ነው። ለምሳሌ፣ በጥያቄው ላይ የዘፈቀደ ገመዶችን ማከል፣ ይህም አገልጋዩ ያለማቋረጥ ትኩስ ገጽ እንዲያገለግል ያስገድደዋል።
እንዲሁም ጭነትን በመፍጠር ሂደት ውስጥ ስለ ተጠቃሚ-ወኪሉ አይርሱ. ብዙ የተጠቃሚ-የታዋቂ የሙከራ መሳሪያዎች ወኪሎች በስርዓት አስተዳዳሪዎች ተጣርተዋል፣ እና በዚህ አጋጣሚ ጭነቱ በቀላሉ ወደ ኋላ ላይ ላይደርስ ይችላል። ብዙ ወይም ያነሰ የሚሰራ ራስጌ ከአሳሹ ወደ ጥያቄው በማስገባት ውጤቱን በከፍተኛ ሁኔታ ማሻሻል ይችላሉ።
የኤችቲቲፒ የጎርፍ ጥቃቶች ቀላል እንደሆኑ ሁሉ፣ ጉዳቶቻቸውም አሏቸው። በመጀመሪያ ደረጃ, ጭነቱን ለመፍጠር ከፍተኛ መጠን ያለው ኃይል ያስፈልጋል. በሁለተኛ ደረጃ, እንደዚህ አይነት ጥቃቶች በተለይም ከአንድ አድራሻ የሚመጡ ከሆነ ለመለየት በጣም ቀላል ናቸው. በውጤቱም ፣ጥያቄዎች ወዲያውኑ በስርዓት አስተዳዳሪዎች ወይም በአቅራቢዎች ደረጃ ማጣራት ይጀምራሉ።

ምን መፈለግ

ቅልጥፍናን ሳያጡ የጥያቄዎችን ብዛት በሰከንድ ለመቀነስ ትንሽ ሀሳብን ማሳየት እና ጣቢያውን ማሰስ ያስፈልግዎታል። ስለዚህ ቻናሉን ወይም አገልጋዩን ብቻ ሳይሆን የመተግበሪያውን ነጠላ ክፍሎች ለምሳሌ የውሂብ ጎታዎችን ወይም የፋይል ስርዓቶችን መጫን ይችላሉ. እንዲሁም በጣቢያው ላይ ትላልቅ ስሌቶችን የሚሠሩ ቦታዎችን መፈለግ ይችላሉ: ካልኩሌተሮች, የምርት ምርጫ ገጾች, ወዘተ. በመጨረሻም ፣ ጣቢያው ብዙ መቶ ሺህ መስመሮችን የሚያመነጭ አንድ ዓይነት ፒኤችፒ ስክሪፕት ስላለው ብዙ ጊዜ ይከሰታል። እንዲህ ዓይነቱ ስክሪፕት አገልጋዩን በከፍተኛ ሁኔታ ይጭናል እና የጥቃት ኢላማ ሊሆን ይችላል።

የት እንደሚታይ

ከመፈተሽ በፊት አንድን መርጃ ስንቃኝ፣ መጀመሪያ የምንመለከተው፣ በእርግጥ፣ ጣቢያውን ነው። ሁሉንም ዓይነት የግቤት መስኮችን ፣ ከባድ ፋይሎችን - በአጠቃላይ ፣ በሀብቱ ላይ ችግር የሚፈጥሩ እና አሠራሩን የሚያዘገዩ ሁሉንም ነገር እንፈልጋለን። በጎግል ክሮም እና ፋየርፎክስ ውስጥ ያሉ የባናል ልማት መሳሪያዎች የገጽ ምላሽ ጊዜዎችን በማሳየት እዚህ ያግዛሉ።
ንዑስ ጎራዎችንም እንቃኛለን። ለምሳሌ፣ አንድ የተወሰነ የመስመር ላይ መደብር abc.com አለ፣ እና ንዑስ ጎራ admin.abc.com አለው። ምናልባትም ፣ ይህ ፈቃድ ያለው የአስተዳዳሪ ፓነል ነው ፣ ግን በላዩ ላይ ጭነት ከጫኑ ፣ ለዋናው ምንጭ ችግር ሊፈጥር ይችላል።
ጣቢያው ንዑስ ጎራ api.abc.com ሊኖረው ይችላል። ምናልባትም ይህ ለሞባይል መተግበሪያዎች መገልገያ ነው። አፕሊኬሽኑ በApp Store ወይም በጎግል ፕሌይ ውስጥ ሊገኝ ይችላል፣ ልዩ የመዳረሻ ነጥብ ይጫኑ፣ ኤፒአይን ይከፋፍሉ እና የሙከራ መለያዎችን ይመዝገቡ። ችግሩ ሰዎች ብዙውን ጊዜ በተፈቀደላቸው ጥበቃ የሚደረግለት ማንኛውም ነገር የአገልግሎት ጥቃቶችን ከመከልከል የጸዳ ነው ብለው ያስባሉ። ፍቃድ መስጠት ምርጡ CAPTCHA ነው ተብሎ ይገመታል፣ ግን አይደለም። 10-20 የሙከራ መለያዎችን ማድረግ ቀላል ነው, ነገር ግን እነሱን በመፍጠር, ውስብስብ እና ያልተደበቀ ተግባራዊነት መዳረሻ እናገኛለን.
በተፈጥሮ፣ ታሪክን፣ robots.txt እና WebArchiveን፣ ViewDNSን እናያለን እና የድሮውን የሀብቱን ስሪቶች እንፈልጋለን። አንዳንድ ጊዜ ገንቢዎች mail2.yandex.net ከለቀቁ በኋላ ይከሰታል፣ ነገር ግን የድሮው ስሪት mail.yandex.net ይቀራል። ይህ mail.yandex.net ከአሁን በኋላ አይደገፍም፣ የልማት ግብዓቶች አልተመደቡትም፣ ነገር ግን የውሂብ ጎታውን መብላቱን ቀጥሏል። በዚህ መሠረት የድሮውን ስሪት በመጠቀም የኋለኛውን ሀብቶች እና ከአቀማመጡ በስተጀርባ ያለውን ሁሉንም ነገር በትክክል መጠቀም ይችላሉ። በእርግጥ ይህ ሁልጊዜ አይከሰትም, ነገር ግን አሁንም ብዙ ጊዜ ያጋጥመናል.
በተፈጥሮ, ሁሉንም የጥያቄ መለኪያዎችን እና የኩኪውን መዋቅር እንመረምራለን. በሉት፣ የተወሰነ እሴት ወደ JSON ድርድር በኩኪ ውስጥ መጣል፣ ብዙ ጎጆ መፍጠር እና ሃብቱ ያለምክንያት ለረጅም ጊዜ እንዲሰራ ማድረግ ይችላሉ።

ጭነት ይፈልጉ

አንድ ጣቢያ ሲመረምር ወደ አእምሮ የሚመጣው የመጀመሪያው ነገር የውሂብ ጎታውን መጫን ነው, ምክንያቱም ሁሉም ሰው ማለት ይቻላል ፍለጋ አለው, እና ለሁሉም ማለት ይቻላል, በሚያሳዝን ሁኔታ, በጥሩ ሁኔታ የተጠበቀ ነው. በሆነ ምክንያት፣ ገንቢዎች ለመፈለግ በቂ ትኩረት አይሰጡም። ግን እዚህ አንድ ምክር አለ - ተመሳሳይ አይነት ጥያቄዎችን ማቅረብ የለብዎትም, ምክንያቱም መሸጎጫ ሊያጋጥሙዎት ይችላሉ, ልክ እንደ HTTP ጎርፍ.
በመረጃ ቋቱ ላይ የዘፈቀደ መጠይቆችን ማድረግም ሁልጊዜ ውጤታማ አይደለም። ከፍለጋው ጋር ተዛማጅነት ያላቸውን ቁልፍ ቃላት ዝርዝር መፍጠር በጣም የተሻለ ነው። ወደ የመስመር ላይ መደብር ምሳሌ ከተመለስን: ጣቢያው የመኪና ጎማዎችን ይሸጣል እና የጎማውን ራዲየስ, የመኪና አይነት እና ሌሎች መመዘኛዎችን እንዲያዘጋጁ ይፈቅድልዎታል እንበል. በዚህ መሠረት ተዛማጅ ቃላት ጥምረት የውሂብ ጎታውን በጣም ውስብስብ በሆኑ ሁኔታዎች ውስጥ እንዲሠራ ያስገድደዋል.
በተጨማሪም ፣ የገጽ መግለጫን መጠቀም ተገቢ ነው-ፍለጋ ከመጀመሪያው የፍለጋ ውጤቶችን የመጨረሻ ገጽ ለመመለስ በጣም ከባድ ነው። ማለትም ፣ በ pagination እገዛ ጭነቱን በትንሹ ማባዛት ይችላሉ።
ከታች ያለው ምሳሌ የፍለጋውን ጭነት ያሳያል. ከሙከራው የመጀመሪያ ሰከንድ ጀምሮ በሰከንድ አስር ጥያቄዎች ድረ-ገጹ ወርዶ ምላሽ ሳይሰጥ መቆየቱን ማየት ይቻላል።

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

ፍለጋ ከሌለ?

ምንም ፍለጋ ከሌለ, ይህ ማለት ጣቢያው ሌሎች ተጋላጭ የሆኑ የግቤት መስኮችን አልያዘም ማለት አይደለም. ይህ መስክ ፈቃድ ሊሆን ይችላል። በአሁኑ ጊዜ ገንቢዎች የመግቢያ ዳታቤዙን ከቀስተ ደመና ሠንጠረዥ ጥቃት ለመከላከል ውስብስብ hashes ማድረግ ይወዳሉ። ይህ ጥሩ ነው, ነገር ግን እንደዚህ አይነት hashes ብዙ የሲፒዩ ሀብቶችን ይበላሉ. ትልቅ የውሸት ፈቃዶች ፍሰት ወደ ፕሮሰሰር ውድቀት ያመራል፣ እና በዚህ ምክንያት ጣቢያው መስራት ያቆማል።
ለአስተያየቶች እና ለአስተያየቶች ሁሉም ዓይነት ቅጾች በጣቢያው ላይ መገኘቱ በጣም ትልቅ ጽሑፎችን ለመላክ ወይም በቀላሉ ትልቅ ጎርፍ ለመፍጠር ምክንያት ነው። አንዳንድ ጊዜ ጣቢያዎች በ gzip ቅርጸት ጨምሮ የተያያዙ ፋይሎችን ይቀበላሉ. በዚህ አጋጣሚ 1 ቴባ ፋይል እንወስዳለን, gzipን በመጠቀም ወደ ብዙ ባይት ወይም ኪሎባይት እንጨምረዋለን እና ወደ ጣቢያው እንልካለን. ከዚያም ዚፕ ተከፍቷል እና በጣም አስደሳች ውጤት ይገኛል.

እረፍት ኤ.ፒ.አይ.

እንደ የእረፍት ኤፒአይ ለመሳሰሉት ታዋቂ አገልግሎቶች ትንሽ ትኩረት መስጠት እፈልጋለሁ። የእረፍት ኤፒአይን መጠበቅ ከመደበኛ ድር ጣቢያ የበለጠ ከባድ ነው። ከይለፍ ቃል brute Force እና ሌሎች ህገወጥ ተግባራት ላይ ጥቃቅን የመከላከያ ዘዴዎች እንኳን ለተቀረው ኤፒአይ አይሰሩም።
የተቀረው ኤፒአይ ለመስበር በጣም ቀላል ነው ምክንያቱም ዳታቤዙን በቀጥታ ስለሚደርስ። በተመሳሳይ ጊዜ የእንደዚህ ዓይነቱ አገልግሎት ውድቀት ለንግድ ሥራ ከባድ መዘዝ ያስከትላል ። እውነታው ግን የእረፍት ኤፒአይ አብዛኛውን ጊዜ ለዋናው ድረ-ገጽ ብቻ ሳይሆን ለሞባይል መተግበሪያ እና ለአንዳንድ ውስጣዊ የንግድ ሃብቶች ጭምር ጥቅም ላይ ይውላል. እና ይህ ሁሉ ከወደቀ ፣ ከዚያ ውጤቱ ከቀላል ድርጣቢያ ውድቀት ሁኔታ የበለጠ ጠንካራ ነው።

ከባድ ይዘት በመጫን ላይ

ውስብስብ ተግባር የሌለውን አንዳንድ ተራ ባለአንድ ገጽ መተግበሪያን፣ ማረፊያ ገጽን ወይም የቢዝነስ ካርድ ድህረ ገጽን እንድንሞክር ከተሰጠን ከባድ ይዘትን እንፈልጋለን። ለምሳሌ, አገልጋዩ የሚልካቸው ትላልቅ ምስሎች, ሁለትዮሽ ፋይሎች, ፒዲኤፍ ሰነዶች - ይህን ሁሉ ለማውረድ እንሞክራለን. እንደነዚህ ያሉ ሙከራዎች የፋይል ስርዓቱን በደንብ ይጫኑ እና ሰርጦችን ይዘጋሉ, እና ስለዚህ ውጤታማ ናቸው. ማለትም አገልጋዩን ባያስቀምጡትም ትልቅ ፋይልን በዝቅተኛ ፍጥነት አውርደህ በቀላሉ የታለመውን ሰርቨር ቻናል ትዘጋለህ ከዚያም የአገልግሎት መከልከል ይከሰታል።
የእንደዚህ አይነት ሙከራ ምሳሌ የሚያሳየው በ 30 RPS ፍጥነት ጣቢያው ምላሽ መስጠት አቁሟል ወይም 500 ኛ የአገልጋይ ስህተቶችን አድርጓል።

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

አገልጋዮችን ስለማዋቀር አይርሱ። ብዙውን ጊዜ አንድ ሰው ምናባዊ ማሽን እንደገዛ ፣ Apache ን እዚያ እንደተጫነ ፣ ሁሉንም ነገር በነባሪ እንዳዋቀረ ፣ የ PHP መተግበሪያ እንደተጫነ እና ከዚህ በታች ውጤቱን ማየት ይችላሉ።

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

እዚህ ጭነቱ ወደ ሥሩ ሄዶ 10 RPS ብቻ ነበር. 5 ደቂቃ ጠብቀን አገልጋዩ ተበላሽቷል። ለምን እንደወደቀ ሙሉ በሙሉ ባይታወቅም ብዙ የማስታወስ ችሎታ እንደነበረው እና በዚህም ምክንያት ምላሽ መስጠት አቆመ የሚል ግምት አለ።

በሞገድ ላይ የተመሰረተ

ባለፈው ዓመት ወይም ሁለት ውስጥ, የማዕበል ጥቃቶች በጣም ተወዳጅ እየሆኑ መጥተዋል. ይህ የሆነበት ምክንያት ብዙ ድርጅቶች ለዲዶኤስ ጥበቃ የተወሰኑ የሃርድዌር ክፍሎችን በመግዛታቸው ነው, ይህም ጥቃቱን ለማጣራት ስታቲስቲክስን ለመሰብሰብ የተወሰነ ጊዜ ያስፈልገዋል. ያም ማለት በመጀመሪያዎቹ 30-40 ሰከንዶች ውስጥ ጥቃቱን አያጣሩም, ምክንያቱም መረጃ ይሰበስባሉ እና ይማራሉ. በዚህ መሠረት በነዚህ ከ30-40 ሰከንድ ውስጥ በጣቢያው ላይ ብዙ ማስጀመር ስለሚችሉ ሁሉም ጥያቄዎች እስኪጸድቁ ድረስ ሀብቱ ለረጅም ጊዜ ይተኛል ።
ከዚህ በታች በተፈፀመው ጥቃት የ10 ደቂቃ ልዩነት ነበር ፣ከዚያም አዲስ ፣የተሻሻለው የጥቃቱ ክፍል ደረሰ።

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

ማለትም መከላከያው ተማረ፣ ማጣራት ጀመረ፣ ነገር ግን አዲስ፣ ፍፁም የተለየ የጥቃቱ ክፍል ደረሰ እና መከላከያ እንደገና መማር ጀመረ። እንደ እውነቱ ከሆነ ማጣራት ሥራውን ያቆማል, ጥበቃው ውጤታማ አይሆንም, እና ጣቢያው አይገኝም.
የማዕበል ጥቃቶች በከፍተኛ ደረጃ በከፍተኛ ዋጋ ተለይተው ይታወቃሉ ፣ በ L7 ሁኔታ በሰከንድ መቶ ሺህ ወይም አንድ ሚሊዮን ጥያቄዎችን ሊደርስ ይችላል። ስለ L3&4 ከተነጋገርን በመቶዎች የሚቆጠሩ ጊጋቢት ትራፊክ፣ ወይም በዚህ መሰረት፣ በመቶዎች የሚቆጠሩ mpps፣ በጥቅሎች ውስጥ ከተቆጠሩ።
የእንደዚህ አይነት ጥቃቶች ችግር ማመሳሰል ነው. ጥቃቶቹ ከ botnet የመጡ ናቸው እና በጣም ትልቅ የአንድ ጊዜ ስፒል ለመፍጠር ከፍተኛ ደረጃ ማመሳሰልን ይፈልጋሉ። እና ይህ ቅንጅት ሁል ጊዜ አይሰራም ፣ አንዳንድ ጊዜ ውጤቱ አንዳንድ የፓራቦሊክ ጫፍ ነው ፣ ይህም ይልቁንም አሳዛኝ ይመስላል።

ኤችቲቲፒ ብቻውን አይደለም።

ከኤችቲቲፒ በ L7 በተጨማሪ ሌሎች ፕሮቶኮሎችን መጠቀም እንፈልጋለን። እንደ አንድ ደንብ ፣ መደበኛ ድር ጣቢያ ፣ በተለይም መደበኛ ማስተናገጃ ፣ የመልእክት ፕሮቶኮሎች እና MySQL ተለጣፊዎች አሉት። የመልእክት ፕሮቶኮሎች ከመረጃ ቋቶች ያነሰ ጭነት ተገዢ ናቸው፣ ነገር ግን በተቀላጠፈ ሁኔታ ሊጫኑ እና በአገልጋዩ ላይ ከመጠን በላይ የተጫነ ሲፒዩ ሊኖራቸው ይችላል።
የ2016 ኤስኤስኤች ተጋላጭነትን በመጠቀም በጣም ስኬታማ ነበርን። አሁን ይህ ተጋላጭነት ለሁሉም ማለት ይቻላል ተስተካክሏል ፣ ግን ይህ ማለት ጭነት ወደ SSH መቅረብ አይችልም ማለት አይደለም ። ይችላል. በቀላሉ ትልቅ የፍቃድ ጭነት አለ፣ ኤስኤስኤች በአገልጋዩ ላይ ያለውን ሲፒዩ ከሞላ ጎደል ይበላል፣ እና ድህረ ገጹ በአንድ ወይም ሁለት ጥያቄዎች በሰከንድ ይወድቃል። በዚህ መሠረት እነዚህ በምዝግብ ማስታወሻዎች ላይ የተመሠረቱ አንድ ወይም ሁለት ጥያቄዎች ከሕጋዊ ጭነት ሊለዩ አይችሉም.
በአገልጋዮች ውስጥ የምንከፍታቸው ብዙ ግንኙነቶችም ጠቃሚ ሆነው ይቆያሉ። ከዚህ ቀደም Apache በዚህ ጥፋተኛ ነበር, አሁን nginx በእውነቱ በዚህ ይሠቃያል, ምክንያቱም ብዙውን ጊዜ በነባሪነት የተዋቀረ ነው. nginx ክፍት ሆኖ የሚያቆየው የግንኙነቶች ብዛት የተገደበ ነው፣ ስለዚህ ይህን የግንኙነት ቁጥር እንከፍተዋለን፣ nginx ከአሁን በኋላ አዲስ ግንኙነት አይቀበልም እና በዚህ ምክንያት ጣቢያው አይሰራም።
የእኛ የሙከራ ክላስተር SSL መጨባበጥን ለማጥቃት በቂ ሲፒዩ አለው። በመርህ ደረጃ, እንደ ልምምድ እንደሚያሳየው, botnets አንዳንድ ጊዜ ይህን ማድረግ ይወዳሉ. በአንድ በኩል, ያለ ኤስኤስኤል ማድረግ እንደማይችሉ ግልጽ ነው, ምክንያቱም Google ውጤቶች, ደረጃ, ደህንነት. በሌላ በኩል፣ SSL በሚያሳዝን ሁኔታ የሲፒዩ ችግር አለበት።

L3&4

በL3&4 ደረጃዎች ላይ ስለደረሰ ጥቃት ስንነጋገር፣ አብዛኛውን ጊዜ የምንናገረው በአገናኝ ደረጃ ስላለው ጥቃት ነው። የ SYN-ጎርፍ ጥቃት ካልሆነ በስተቀር እንዲህ ዓይነቱ ጭነት ሁል ጊዜ ከህጋዊው ይለያል። ለደህንነት መሳሪያዎች የ SYN-ጎርፍ ጥቃቶች ችግር የእነሱ ትልቅ መጠን ነው. ከፍተኛው L3&4 እሴት 1,5-2 Tbit/s ነበር። ይህ ዓይነቱ ትራፊክ ኦራክል እና ጎግልን ጨምሮ ለትላልቅ ኩባንያዎች እንኳን ለማስኬድ በጣም ከባድ ነው።
SYN እና SYN-ACK ግንኙነት ሲፈጥሩ ጥቅም ላይ የሚውሉ እሽጎች ናቸው። ስለዚህ፣ SYN-ጎርፍ ከህጋዊ ጭነት ለመለየት አስቸጋሪ ነው፡ ይህ SYN ግንኙነት ለመመስረት የመጣ ወይም የጎርፍ አካል ስለመሆኑ ግልጽ አይደለም።

UDP-ጎርፍ

በተለምዶ አጥቂዎች እኛ ያለን አቅም ስለሌላቸው ማጉላት ጥቃቶችን ለማደራጀት መጠቀም ይቻላል። ማለትም አጥቂው ኢንተርኔትን በመቃኘት ለጥቃት የተጋለጡ ወይም በስህተት የተዋቀሩ አገልጋዮችን ለምሳሌ ለአንድ የSYN ፓኬት ምላሽ በሶስት SYN-ACKs ምላሽ ይሰጣሉ። የምንጭ አድራሻውን ከተጠቂው አገልጋይ አድራሻ በማንኳኳት በአንድ ፓኬት ሶስት ጊዜ ኃይሉን ማሳደግ እና ትራፊክን ወደ ተጎጂው ማዞር ይቻላል።

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

የማጉላት ችግር እነርሱ ለመለየት አስቸጋሪ ናቸው. የቅርብ ጊዜ ምሳሌዎች የተጋላጭ መካድ ስሜት ቀስቃሽ ጉዳይን ያካትታሉ። በተጨማሪም ፣ አሁን ብዙ የአይኦቲ መሳሪያዎች ፣ አይፒ ካሜራዎች አሉ ፣ እነሱም በአብዛኛው በነባሪነት የተዋቀሩ ናቸው ፣ እና በነባሪነት እነሱ በስህተት የተዋቀሩ ናቸው ፣ ለዚህም ነው አጥቂዎች ብዙውን ጊዜ በእንደዚህ ያሉ መሳሪያዎች ላይ ጥቃት የሚፈጽሙት።

DDoS ለማዳን፡ የጭንቀት እና የጭነት ሙከራዎችን እንዴት እንደምንመራ

አስቸጋሪ SYN-ጎርፍ

SYN-ጎርፍ ምናልባት ከገንቢ እይታ አንጻር በጣም የሚያስደስት የጥቃት አይነት ነው። ችግሩ የስርዓት አስተዳዳሪዎች ለጥበቃ ሲባል ብዙውን ጊዜ የአይፒ እገዳን ይጠቀማሉ። ከዚህም በላይ የአይፒ ማገድ ስክሪፕቶችን በመጠቀም የሚሠሩትን የስርዓት አስተዳዳሪዎች ብቻ ሳይሆን በሚያሳዝን ሁኔታ በብዙ ገንዘብ የሚገዙ አንዳንድ የደህንነት ስርዓቶችን ይጎዳል።
ይህ ዘዴ ወደ አደጋ ሊለወጥ ይችላል, ምክንያቱም አጥቂዎች የአይፒ አድራሻዎችን ከተተኩ, ኩባንያው የራሱን ንኡስ አውታረ መረብ ያግዳል. ፋየርዎል የራሱን ክላስተር ሲያግድ ውጤቱ ውጫዊ መስተጋብር ይወድቃል እና ሀብቱ አይሳካም።
ከዚህም በላይ የራስዎን አውታረ መረብ ለማገድ አስቸጋሪ አይደለም. የደንበኛው ቢሮ የዋይ ፋይ ኔትወርክ ካለው ወይም የሀብት አፈጻጸም የሚለካው የተለያዩ የክትትል ስርዓቶችን በመጠቀም ከሆነ የዚን የክትትል ስርዓት አይፒ አድራሻ ወይም የደንበኛውን ቢሮ ዋይ ፋይ ወስደን እንደ ምንጭ እንጠቀማለን። በመጨረሻ ፣ ሀብቱ የሚገኝ ይመስላል ፣ ግን የታለመው የአይፒ አድራሻዎች ታግደዋል። ስለዚህ, የኩባንያው አዲስ ምርት እየቀረበበት ያለው የሃይሎድ ኮንፈረንስ የ Wi-Fi አውታረ መረብ ሊታገድ ይችላል, ይህ ደግሞ የተወሰኑ የንግድ እና ኢኮኖሚያዊ ወጪዎችን ያካትታል.
በሙከራ ጊዜ ማጉላትን ከማንኛውም ውጫዊ ምንጮች ጋር በሜምካሼድ መጠቀም አንችልም ምክንያቱም ትራፊክ ወደተፈቀደላቸው አይፒ አድራሻዎች ብቻ ለመላክ ስምምነቶች አሉ። በዚህም መሰረት በSYN እና SYN-ACK በኩል ማጉላት የምንጠቀመው ሲስተሙ አንድ ሲን ሁለት ወይም ሶስት SYN-ACK ሲላክ ምላሽ ሲሰጥ እና በውጤቱ ላይ ጥቃቱ በሁለት ወይም በሶስት እጥፍ ይባዛል።

መሳሪያዎች

ለ L7 የስራ ጫና ከምንጠቀምባቸው ዋና መሳሪያዎች አንዱ Yandex-tank ነው። በተለይም ፋንተም እንደ ሽጉጥ ጥቅም ላይ ይውላል፣ በተጨማሪም ካርትሬጅ ለማምረት እና ውጤቱን ለመተንተን ብዙ ስክሪፕቶች አሉ።
Tcpdump የአውታረ መረብ ትራፊክን ለመተንተን ይጠቅማል፣ እና Nmap አገልጋዩን ለመተንተን ይጠቅማል። ጭነቱን በL3&4 ደረጃ ለመፍጠር፣ OpenSSL እና ትንሽ የራሳችን አስማት ከDPDK ቤተ-መጽሐፍት ጋር ጥቅም ላይ ይውላሉ። DPDK የሊኑክስ ቁልል በማለፍ ከአውታረ መረብ በይነገጽ ጋር እንዲሰሩ የሚያስችል የኢንቴል ቤተ-መጽሐፍት ነው፣ በዚህም ውጤታማነትን ይጨምራል። በተፈጥሮ, DPDK የምንጠቀመው በ L3 & 4 ደረጃ ብቻ ሳይሆን በ L7 ደረጃ ነው, ምክንያቱም በጣም ከፍተኛ የሆነ የጭነት ፍሰት ለመፍጠር ስለሚያስችለን, ከአንድ ማሽን በሴኮንድ በርካታ ሚሊዮን ጥያቄዎች ውስጥ.
ለተወሰኑ ፈተናዎች የምንጽፋቸውን የተወሰኑ የትራፊክ ማመንጫዎች እና ልዩ መሳሪያዎችን እንጠቀማለን። በኤስኤስኤች ስር ያለውን ተጋላጭነት ካስታወስን ፣ ከዚያ በላይ ያለው ስብስብ ጥቅም ላይ ሊውል አይችልም። የመልእክት ፕሮቶኮሉን ካጠቃን የደብዳቤ መገልገያዎችን እንይዛለን ወይም በቀላሉ ስክሪፕቶችን እንጽፋለን።

ግኝቶች

እንደ ማጠቃለያ እንዲህ ማለት እፈልጋለሁ፡-

  • ከጥንታዊ ጭነት ሙከራ በተጨማሪ የጭንቀት ሙከራን ማካሄድ አስፈላጊ ነው. የአጋር ንዑስ ተቋራጭ የጭነት ሙከራን ብቻ ያከናወነበት ትክክለኛ ምሳሌ አለን። ሀብቱ መደበኛውን ጭነት መቋቋም እንደሚችል አሳይቷል. ነገር ግን ከዚያ ያልተለመደ ጭነት ታየ, የጣቢያ ጎብኚዎች ሀብቱን ትንሽ ለየት ባለ መንገድ መጠቀም ጀመሩ, እናም በዚህ ምክንያት ንዑስ ተቋራጩ ተኝቷል. ስለዚህ፣ ከ DDoS ጥቃቶች የተጠበቁ ቢሆኑም እንኳ ተጋላጭነትን መፈለግ ተገቢ ነው።
  • የስርዓቱን አንዳንድ ክፍሎች ከሌሎች መለየት አስፈላጊ ነው. ፍለጋ ካለህ ወደ ተለያዩ ማሽኖች ማለትም ወደ ዶከር እንኳን ማዛወር አለብህ። ምክንያቱም ፍለጋ ወይም ፍቃድ ካልተሳካ ቢያንስ አንድ ነገር መስራቱን ይቀጥላል። በመስመር ላይ መደብር ውስጥ ተጠቃሚዎች በካታሎግ ውስጥ ምርቶችን ማግኘታቸውን ፣ ከአሰባሳቢው ይሂዱ ፣ ቀድሞውኑ ፈቃድ ካገኙ ይግዙ ወይም በ OAuth2 በኩል ፈቃድ ማግኘታቸውን ይቀጥላሉ ።
  • ሁሉንም ዓይነት የደመና አገልግሎቶችን ችላ አትበል።
  • የሲዲኤንን የኔትወርክ መዘግየቶችን ለማመቻቸት ብቻ ሳይሆን በሰርጥ መሟጠጥ እና በቀላሉ ወደ ቋሚ ትራፊክ ከመጥለቅለቅ ለመከላከል እንደ መከላከያ ዘዴ ይጠቀሙ።
  • ልዩ ጥበቃ አገልግሎቶችን መጠቀም አስፈላጊ ነው. በሰርጥ ደረጃ እራስዎን ከ L3&4 ጥቃቶች መጠበቅ አይችሉም፣ ምክንያቱም በቀላሉ በቂ ቻናል የለዎትም። በጣም ትልቅ ሊሆኑ ስለሚችሉ የL7 ጥቃቶችን ለመዋጋትም ዕድለኞች አይደሉም። በተጨማሪም, ትናንሽ ጥቃቶችን መፈለግ አሁንም የልዩ አገልግሎቶች, ልዩ ስልተ ቀመሮች መብት ነው.
  • በየጊዜው አዘምን. ይህ በከርነል ላይ ብቻ ሳይሆን በኤስኤስኤች ዲሞን ላይም ይሠራል፣ በተለይም ወደ ውጭ ክፍት ካደረጉ። በመርህ ደረጃ, ሁሉም ነገር መዘመን አለበት, ምክንያቱም አንዳንድ ድክመቶችን በራስዎ መከታተል አይችሉም.

ምንጭ: hab.com

አስተያየት ያክሉ