అథరైజేషన్ బగ్లను (authorization bugs) కనుగొనడానికి AIని ఉపయోగించడం
బగ్ బౌంటీ ప్రోగ్రామ్లు మూసివేయబడుతున్నాయి. తక్కువ నాణ్యత కలిగిన AI రిపోర్ట్ల కారణంగా Nextcloud చెల్లింపులను నిలిపివేసింది. Mattermost తన ప్రోగ్రామ్ను ముగించింది. Internet Bug Bounty తన పేఅవుట్లను 80 శాతం తగ్గించింది.
సమస్య ఏమిటంటే AI బగ్లను కనుగొనలేకపోవడం కాదు. సమస్య ఏమిటంటే, AI నిజమైనవిగా కనిపించే కానీ తప్పుగా ఉండే అనేక రిపోర్ట్లను సృష్టిస్తుంది. ట్రైయేజ్ (Triage) బృందాలు ఈ అనవసరమైన సమాచారంతో (noise) సతమతమవుతున్నాయి.
2026లో, మీకు కావాల్సిన నైపుణ్యం బగ్లను కనుగొనడం కాదు. ఒక మోడల్ మీకు మధ్యాహ్న భోజనానికి ముందే యాభై ఆలోచనలను ఇస్తుంది. వాటిలో నలభై తొమ్మిది ఎందుకు తప్పు అని నిరూపించడమే అసలైన నైపుణ్యం. సరైన నెగటివ్స్ను (correct negatives) అందించే పద్ధతి మీకు అవసరం.
సోర్స్-అవైలబుల్ కోడ్ (source-available code) కోసం ఈ రెండు దశల పద్ధతిని ఉపయోగించండి:
Fan-out (చౌకైన మోడల్స్) అథరైజేషన్ సర్ఫేస్ను చిన్న భాగాలుగా విభజించండి. ప్రతి భాగాన్ని సమాంతరంగా (in parallel) చదవండి. విఫలమైన నియమాలను (broken rules) వెతకండి. ఓనర్ చెక్ లేకుండా ఆబ్జెక్ట్ లోడ్ అయ్యే చోట్ల చూడండి. సెక్యూరిటీ గేట్లను దాటవేసే పాత్ల (paths) కోసం వెతకండి. సాధ్యమయ్యే ప్రతి లీడ్ను కనుగొనడంపై దృష్టి పెట్టండి. చాలా ఫాల్స్ పాజిటివ్స్ (false positives) వచ్చే అవకాశం ఉంటుంది.
Adversarial Verification (ఖరీదైన మోడల్స్) ప్రతి లీడ్ను తీసుకోండి మరియు అది తప్పు అని నిరూపించడానికి ప్రయత్నించండి. ఆ లీడ్ తప్పు అనే ఊహతోనే ప్రారంభించండి. సెక్యూరిటీ గార్డ్ లేదని నిరూపించే ఖచ్చితమైన కోడ్ లైన్లను మీరు చూపగలిగితేనే ఆ లీడ్ నిలబడుతుంది. ఆ పాత్ చేరుకోదగినదని (reachable) మరియు దాడిని ఆపడానికి మరేమీ లేదని మీరు నిరూపించాలి.
అత్యంత ముఖ్యమైన అవుట్పుట్ 'రిఫ్యూటేషన్స్' (refutations) జాబితా. ఏదైనా బగ్ ఎందుకు కాదో చెప్పే కారణాల జాబితా, ట్రైయర్లతో నమ్మకాన్ని పెంచుతుంది.
నేను ఒక ఐడెంటిటీ సర్వర్ అయిన Ory Kratosని పరీక్షించాను. ఈ సిస్టమ్ పాస్వర్డ్లు లేదా ఈమెయిల్స్ మార్చడం వంటి సున్నితమైన చర్యలను నిర్వహిస్తుంది. ఇది అధిక రిస్క్ ఉన్న విభాగం.
మొదటి దశ ఒక లీడ్ను కనుగొంది. సిస్టమ్ OIDC ఫ్లోస్ను ఎలా నిర్వహిస్తుందనే దానిలో ఇది ఒక పెద్ద లోపంలా కనిపించింది. ఒక ప్యాటర్న్-మ్యాచ్ టూల్ దీనిని హై-సెవెరిటీ బగ్ అని పిలుస్తుంది.
దానిని ధృవీకరించడానికి నేను రెండవ దశను ఉపయోగించాను. మిస్ అయిన చెక్ వల్ల ఎక్స్ప్లాయిట్ (exploit) జరగదని నేను కనుగొన్నాను. సిస్టమ్ లైవ్ సెషన్ కుక్కీలను ఉపయోగిస్తుంది మరియు చివరి దశలో ప్రివిలేజ్లను మళ్లీ తనిఖీ చేస్తుంది. ఆ లోపం వల్ల ఎటువంటి ప్రమాదం లేదు.
నేను దానిని రిపోర్ట్ చేసి ఉంటే, నా విశ్వసనీయతను కోల్పోయేవాడిని. మౌనంగా ఉండగలిగే ఆత్మవిశ్వాసమే అసలైన విలువ.
ఇదే పద్ధతి మరొక టార్గెట్లో నిజమైన బగ్ను కనుగొంది. ఒక సెకండరీ ఎంట్రీ పాయింట్ అథరైజేషన్ చెక్ను మిస్ అయ్యింది. యూజర్ యాక్సెస్ రద్దు చేయబడిన తర్వాత కూడా వారు సైడ్ డోర్ ద్వారా లోపలికి ప్రవేశించగలిగారు.
బగ్ హంటింగ్లో విజేతలు పరిమాణం (volume) మీద కాకుండా, సిగ్నల్ (signal) మీద దృష్టి పెడతారు. మనిషి కంటే ఎక్కువ కోడ్ను చదవడానికి AIని ఉపయోగించండి. ఆపై రిపోర్ట్ను సమర్పించే ముందు, మీరు చెప్పింది తప్పు అని నిరూపించుకోవడానికి కూడా AIని ఉపయోగించండి.
Optional learning community: https://t.me/GyaanSetuAi
