Kubernetes ప్రాజెక్ట్ ద్వారా అభివృద్ధి చేయబడిన ingress-nginx కంట్రోలర్లో, డిఫాల్ట్ కాన్ఫిగరేషన్లో, Ingress ఆబ్జెక్ట్ యొక్క సెట్టింగ్లకు ప్రాప్యతను అనుమతించే మూడు దుర్బలత్వాలు గుర్తించబడ్డాయి, ఇది ఇతర విషయాలతోపాటు, Kubernetes సర్వర్లను యాక్సెస్ చేయడానికి ఆధారాలను నిల్వ చేస్తుంది, ప్రత్యేక ప్రాప్యతను అనుమతిస్తుంది. క్లస్టర్కి. సమస్యలు Kubernetes ప్రాజెక్ట్ నుండి ingress-nginx కంట్రోలర్లో మాత్రమే కనిపిస్తాయి మరియు NGINX డెవలపర్లు అభివృద్ధి చేసిన kubernetes-ingress కంట్రోలర్పై ప్రభావం చూపవు.
ప్రవేశ నియంత్రిక ఒక గేట్వే వలె పనిచేస్తుంది మరియు బాహ్య నెట్వర్క్ నుండి క్లస్టర్లోని సేవలకు యాక్సెస్ని నిర్వహించడానికి కుబెర్నెట్స్లో ఉపయోగించబడుతుంది. ingress-nginx కంట్రోలర్ అత్యంత ప్రజాదరణ పొందింది మరియు క్లస్టర్కు అభ్యర్థనలను ఫార్వార్డ్ చేయడానికి, బాహ్య అభ్యర్థనలను రూట్ చేయడానికి మరియు లోడ్ బ్యాలెన్స్కు NGINX సర్వర్ని ఉపయోగిస్తుంది. కుబెర్నెటెస్ ప్రాజెక్ట్ AWS, GCE మరియు nginx కోసం కోర్ ఇన్గ్రెస్ కంట్రోలర్లను అందిస్తుంది, వీటిలో రెండోది F5/NGINX ద్వారా నిర్వహించబడే kubernetes-ingress కంట్రోలర్కు ఏ విధంగానూ సంబంధం లేదు.
దుర్బలత్వాలు CVE-2023-5043 మరియు CVE-2023-5044 “nginx.ingress.kubernetes.io/configuration-snippet” మరియు “nginx.ingressని ఉపయోగించి ఇన్గ్రెస్ కంట్రోలర్ ప్రాసెస్ హక్కులతో సర్వర్లో మీ కోడ్ను అమలు చేయడానికి మిమ్మల్ని అనుమతిస్తాయి. .kubernetes" పారామితులు దానిని ప్రత్యామ్నాయం చేయడానికి .io/permanent-redirect." ఇతర విషయాలతోపాటు, పొందిన యాక్సెస్ హక్కులు క్లస్టర్ మేనేజ్మెంట్ స్థాయిలో ప్రామాణీకరణ కోసం ఉపయోగించే టోకెన్ను తిరిగి పొందడానికి మిమ్మల్ని అనుమతిస్తాయి. Vulnerability CVE-2022-4886 log_format డైరెక్టివ్ని ఉపయోగించి ఫైల్ పాత్ వెరిఫికేషన్ను దాటవేయడానికి మిమ్మల్ని అనుమతిస్తుంది.
మొదటి రెండు దుర్బలత్వాలు వెర్షన్ 1.9.0కి ముందు ingress-nginx విడుదలలలో మాత్రమే కనిపిస్తాయి మరియు చివరిది - వెర్షన్ 1.8.0కి ముందు. దాడిని నిర్వహించడానికి, దాడి చేసే వ్యక్తి తప్పనిసరిగా ప్రవేశ వస్తువు యొక్క కాన్ఫిగరేషన్కు ప్రాప్యతను కలిగి ఉండాలి, ఉదాహరణకు, బహుళ-అద్దెదారు కుబెర్నెట్స్ క్లస్టర్లలో, వినియోగదారులు వారి నేమ్స్పేస్లో వస్తువులను సృష్టించగల సామర్థ్యాన్ని ఇస్తారు.
మూలం: opennet.ru