Abstract-binary kodanalys gör det möjligt att analysera binär kod utan att ha tillgång till motsvarande källkod. En binär, efter demontering, uttrycks i ett monteringsspråk. Detta inspirerar oss att närma oss binär analys genom att utnyttja idéer och tekniker från Natural Language Processing (NLP), ett fruktbart område fokuserat på bearbetning av text av olika naturliga språk. Vi märker att binär kodanalys och NLP delar många analoga ämnen, såsom semantik extraktion, klassificering, och kod / text jämförelse. Detta arbete lånar alltså idéer från NLP för att ta itu med två viktiga likhetsproblem. (I) Med tanke på ett par grundläggande block av olika instruktionsuppsättning arkitekturer (ISAs), avgöra om deras semantik är liknande; och (II) ges en kod av intresse, bestämma om det ingår i en annan kod av en annan ISA. Lösningarna på dessa två problem har många tillämpningar, såsom korsarkitektur sårbarhet upptäckt och kod plagiat upptäckt. Trots den uppenbara betydelsen av problem I är befintliga lösningar antingen ineffektiva eller otydliga. Inspirerad av Neural Machine Translation (NMT), som är ett nytt tillvägagångssätt som hanterar text över naturliga språk mycket väl, vi betraktar instruktioner som ord och grundläggande block som meningar, och föreslår en ny kors-(montering) språk djup inlärningsmetod för att lösa problem I, uppnå hög effektivitet och precision. Många lösningar har föreslagits för att avgöra om två koder, t.ex. funktioner, är likvärdiga (som kallas ekvivalensproblem), vilket skiljer sig från problem II (som kallas inneslutningsproblem). Att lösa problemet med korsarkiveringskodens inneslutning är en ny och mer utmanande uppgift. Genom att använda vår teknik för att jämföra basblock mellan arkitekturer föreslår vi den första lösningen på problem II. Vi implementerar ett prototypsystem INNEREYE och genomför en omfattande utvärdering. En jämförelse mellan vår strategi och befintliga strategier för problem Jag visar att vårt system överträffar dem i fråga om noggrannhet, effektivitet och skalbarhet. De fallstudier som tillämpar systemet visar att vår lösning på problem II är effektiv. Dessutom visar denna forskning hur man tillämpar idéer och tekniker från NLP till storskalig binär kodanalys.
Zuo m.fl. REF använder NMT tekniker för att hantera en korsarkitektur kod likhet jämförelse.
Neural Machine Translation Inspired Binary Code Similarity Comparison beyond Function Pairs
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}