HTTP/2 ప్రోటోకాల్ యొక్క వివిధ అమలులలో 8 DoS దుర్బలత్వాలు గుర్తించబడ్డాయి

Netflix మరియు Google నుండి పరిశోధకులు గుర్తించారు HTTP/2 ప్రోటోకాల్ యొక్క వివిధ అమలులలో ఎనిమిది దుర్బలత్వాలు ఉన్నాయి, ఇవి నిర్దిష్ట మార్గంలో నెట్‌వర్క్ అభ్యర్థనల స్ట్రీమ్‌ను పంపడం ద్వారా సేవ యొక్క తిరస్కరణకు కారణమవుతాయి. సమస్యలు HTTP/2 మద్దతు ఉన్న చాలా HTTP సర్వర్‌లను కొంత వరకు ప్రభావితం చేస్తాయి మరియు వర్కర్ ప్రాసెస్ మెమరీ అయిపోవడానికి లేదా చాలా CPU లోడ్‌ని సృష్టించడానికి కారణమవుతుంది. దుర్బలత్వాలను తొలగించే అప్‌డేట్‌లు ఇప్పటికే అందించబడ్డాయి nginx 1.16.1/1.17.3 и H2O 2.2.6, కానీ ప్రస్తుతానికి అందుబాటులో లేదు Apache httpd కోసం మరియు ఇతర ఉత్పత్తులు.

బైనరీ నిర్మాణాల ఉపయోగం, కనెక్షన్‌లలో డేటా ప్రవాహాలను పరిమితం చేసే వ్యవస్థ, ఫ్లో ప్రాధాన్యతా విధానం మరియు HTTP/2 కనెక్షన్‌లో పనిచేసే ICMP-వంటి నియంత్రణ సందేశాల ఉనికితో అనుబంధించబడిన HTTP/2 ప్రోటోకాల్‌లో ప్రవేశపెట్టిన సంక్లిష్టతల వల్ల సమస్యలు ఉత్పన్నమయ్యాయి. స్థాయి (ఉదాహరణకు, పింగ్, రీసెట్ మరియు ఫ్లో సెట్టింగ్‌లు). అనేక అమలులు నియంత్రణ సందేశాల ప్రవాహాన్ని సరిగ్గా పరిమితం చేయలేదు, అభ్యర్థనలను ప్రాసెస్ చేస్తున్నప్పుడు ప్రాధాన్యత క్రమాన్ని సమర్ధవంతంగా నిర్వహించలేదు లేదా ఫ్లో నియంత్రణ అల్గారిథమ్‌ల యొక్క ఉపశీర్షిక అమలులను ఉపయోగించలేదు.

గుర్తించబడిన చాలా దాడి పద్ధతులు సర్వర్‌కు నిర్దిష్ట అభ్యర్థనలను పంపడం వరకు వస్తాయి, ఇది పెద్ద సంఖ్యలో ప్రతిస్పందనల ఉత్పత్తికి దారి తీస్తుంది. క్లయింట్ సాకెట్ నుండి డేటాను చదవకపోతే మరియు కనెక్షన్‌ను మూసివేయకపోతే, సర్వర్ వైపు ప్రతిస్పందన బఫరింగ్ క్యూ నిరంతరం నింపుతుంది. ఈ ప్రవర్తన నెట్‌వర్క్ కనెక్షన్‌లను ప్రాసెస్ చేయడం కోసం క్యూ మేనేజ్‌మెంట్ సిస్టమ్‌పై లోడ్‌ను సృష్టిస్తుంది మరియు అమలు లక్షణాలపై ఆధారపడి, అందుబాటులో ఉన్న మెమరీ లేదా CPU వనరుల క్షీణతకు దారితీస్తుంది.

గుర్తించబడిన దుర్బలత్వాలు:

  • CVE-2019-9511 (డేటా డ్రిబుల్) - స్లైడింగ్ విండో పరిమాణం మరియు థ్రెడ్ ప్రాధాన్యతను మార్చడం ద్వారా దాడి చేసే వ్యక్తి పెద్ద మొత్తంలో డేటాను బహుళ థ్రెడ్‌లలోకి అభ్యర్థించి, 1-బైట్ బ్లాక్‌లలో డేటాను క్యూలో ఉంచమని సర్వర్‌ని బలవంతం చేస్తాడు;
  • CVE-2019-9512 (పింగ్ ఫ్లడ్) - దాడి చేసే వ్యక్తి HTTP/2 కనెక్షన్‌లో పింగ్ సందేశాలను నిరంతరం విషపూరితం చేస్తాడు, దీనివల్ల పంపిన ప్రతిస్పందనల అంతర్గత క్యూ మరొక వైపు వరదలు వచ్చేలా చేస్తుంది;
  • CVE-2019-9513 (రిసోర్స్ లూప్) - దాడి చేసే వ్యక్తి బహుళ అభ్యర్థన థ్రెడ్‌లను సృష్టిస్తాడు మరియు థ్రెడ్‌ల ప్రాధాన్యతను నిరంతరం మారుస్తాడు, దీని వలన ప్రాధాన్యత చెట్టు షఫుల్ అవుతుంది;
  • CVE-2019-9514 (ప్రళయాన్ని రీసెట్ చేయండి) - దాడి చేసే వ్యక్తి బహుళ థ్రెడ్‌లను సృష్టిస్తాడు
    మరియు ప్రతి థ్రెడ్ ద్వారా చెల్లని అభ్యర్థనను పంపుతుంది, దీని వలన సర్వర్ RST_STREAM ఫ్రేమ్‌లను పంపుతుంది, కానీ ప్రతిస్పందన క్యూను పూరించడానికి వాటిని అంగీకరించదు;

  • CVE-2019-9515 (సెట్టింగ్‌ల వరద) - దాడి చేసే వ్యక్తి ఖాళీ “సెట్టింగ్‌లు” ఫ్రేమ్‌ల స్ట్రీమ్‌ను పంపుతాడు, దానికి ప్రతిస్పందనగా సర్వర్ ప్రతి అభ్యర్థన యొక్క రసీదును తప్పనిసరిగా గుర్తించాలి;
  • CVE-2019-9516 (0-పొడవు హెడర్స్ లీక్) - దాడి చేసే వ్యక్తి శూన్య పేరు మరియు శూన్య విలువతో హెడర్‌ల స్ట్రీమ్‌ను పంపుతాడు మరియు సర్వర్ ప్రతి హెడర్‌ను నిల్వ చేయడానికి మెమరీలో బఫర్‌ను కేటాయిస్తుంది మరియు సెషన్ ముగిసే వరకు దాన్ని విడుదల చేయదు. ;
  • CVE-2019-9517 (అంతర్గత డేటా బఫరింగ్) - దాడి చేసే వ్యక్తి తెరవబడింది
    పరిమితులు లేకుండా డేటాను పంపడానికి సర్వర్ కోసం HTTP/2 స్లైడింగ్ విండో, కానీ TCP విండోను మూసి ఉంచుతుంది, డేటా వాస్తవానికి సాకెట్‌కు వ్రాయబడకుండా చేస్తుంది. తరువాత, దాడి చేసే వ్యక్తి పెద్ద ప్రతిస్పందన అవసరమయ్యే అభ్యర్థనలను పంపుతాడు;

  • CVE-2019-9518 (ఖాళీ ఫ్రేమ్‌ల వరద) - దాడి చేసే వ్యక్తి DATA, HEADERS, CONTINUATION లేదా PUSH_PROMISE రకం ఫ్రేమ్‌ల స్ట్రీమ్‌ను పంపుతాడు, కానీ ఖాళీ పేలోడ్‌తో మరియు ఫ్లో ముగింపు ఫ్లాగ్ లేకుండా పంపుతాడు. దాడి చేసే వ్యక్తి వినియోగించే బ్యాండ్‌విడ్త్‌కు అసమానంగా, ప్రతి ఫ్రేమ్‌ను ప్రాసెస్ చేయడానికి సర్వర్ సమయాన్ని వెచ్చిస్తుంది.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి