ఆండ్రాయిడ్ ప్లాట్ఫారమ్ మరియు జావా ప్రోగ్రామ్ల కోసం అప్లికేషన్లలోని దుర్బలత్వాలను గుర్తించే లక్ష్యంతో Facebook కొత్త ఓపెన్ స్టాటిక్ ఎనలైజర్, మరియానా ట్రెంచ్ను పరిచయం చేసింది. సోర్స్ కోడ్లు లేకుండా ప్రాజెక్ట్లను విశ్లేషించడం సాధ్యమవుతుంది, దీని కోసం డాల్విక్ వర్చువల్ మెషీన్ కోసం బైట్కోడ్ మాత్రమే అందుబాటులో ఉంటుంది. మరొక ప్రయోజనం ఏమిటంటే దాని అధిక అమలు వేగం (కోడ్ యొక్క అనేక మిలియన్ లైన్ల విశ్లేషణ సుమారు 10 సెకన్లు పడుతుంది), ఇది వచ్చినప్పుడు అన్ని ప్రతిపాదిత మార్పులను తనిఖీ చేయడానికి మరియానా ట్రెంచ్ని ఉపయోగించడానికి మిమ్మల్ని అనుమతిస్తుంది. ప్రాజెక్ట్ కోడ్ C++లో వ్రాయబడింది మరియు MIT లైసెన్స్ క్రింద పంపిణీ చేయబడుతుంది.
ఫేస్బుక్, ఇన్స్టాగ్రామ్ మరియు వాట్సాప్ కోసం మొబైల్ అప్లికేషన్ల సోర్స్ టెక్స్ట్లను సమీక్షించే ప్రక్రియను ఆటోమేట్ చేసే ప్రాజెక్ట్లో భాగంగా ఎనలైజర్ అభివృద్ధి చేయబడింది. 2021 ప్రథమార్థంలో, Facebook మొబైల్ అప్లికేషన్లలోని అన్ని దుర్బలత్వాలలో సగం ఆటోమేటెడ్ విశ్లేషణ సాధనాలను ఉపయోగించి గుర్తించబడ్డాయి. మరియానా ట్రెంచ్ కోడ్ ఇతర Facebook ప్రాజెక్ట్లతో ముడిపడి ఉంది; ఉదాహరణకు, బైట్కోడ్ను అన్వయించడానికి Redex బైట్కోడ్ ఆప్టిమైజర్ ఉపయోగించబడింది మరియు SPARTA లైబ్రరీ దృశ్యమానంగా అర్థం చేసుకోవడానికి మరియు స్టాటిక్ విశ్లేషణ ఫలితాలను అధ్యయనం చేయడానికి ఉపయోగించబడింది.
SQL ప్రశ్నలు, ఫైల్ ఆపరేషన్లు మరియు బాహ్య ప్రోగ్రామ్లను ట్రిగ్గర్ చేసే కాల్లు వంటి ప్రమాదకరమైన నిర్మాణాలలో ముడి బాహ్య డేటా ప్రాసెస్ చేయబడే పరిస్థితులను గుర్తించడానికి అప్లికేషన్ అమలు సమయంలో డేటా ప్రవాహాలను విశ్లేషించడం ద్వారా సంభావ్య దుర్బలత్వాలు మరియు గోప్యతా సమస్యలు గుర్తించబడతాయి.
ఎనలైజర్ యొక్క పని డేటా యొక్క మూలాలను మరియు సోర్స్ డేటాను ఉపయోగించకూడని ప్రమాదకరమైన కాల్లను గుర్తించడానికి వస్తుంది - ఎనలైజర్ ఫంక్షన్ కాల్ల గొలుసు ద్వారా డేటా యొక్క మార్గాన్ని ట్రాక్ చేస్తుంది మరియు కోడ్లోని ప్రమాదకరమైన ప్రదేశాలతో సోర్స్ డేటాను కనెక్ట్ చేస్తుంది. . ఉదాహరణకు, Intent.getDataకి కాల్ ద్వారా స్వీకరించబడిన డేటా మూలాధార ట్రాకింగ్ అవసరమని పరిగణించబడుతుంది మరియు Log.w మరియు Runtime.execకి చేసే కాల్లు ప్రమాదకరమైన ఉపయోగాలుగా పరిగణించబడతాయి.
మూలం: opennet.ru