Identifying runtime libraries in statically linked linux binaries

Vulnerabilities in unpatched applications can originate from third-party dependencies in statically linked applications, as they must be relinked each time to take advantage of libraries that have been updated to fix any vulnerability. Despite this, malware binaries are often statically linked to ensure they run on target platforms and to complicate malware analysis. In this sense, identification of libraries in malware analysis becomes crucial to help filter out those library functions and focus on malware function analysis. In this paper, we introduce MANTILLA , a system for identifying runtime libraries in statically linked Linux-based binaries. Our system is based on radare2 to identify functions and extract their features (independent of the underlying architecture of the binary) through static binary analysis and on the K-nearest neighbors supervised machine learning model and a majority rule to predict final values. MANTILLA is evaluated on a dataset consisting of binaries built for different architectures ( MIPSeb , ARMel , Intel x86 , and Intel x86-64 ) and different runtime libraries ( uClibc , glibc , and musl ), achieving very high accuracy. We also evaluate it in two case studies. First, using a dataset of binary files belonging to the binutils collection and second, using an IoT malware dataset. In both cases, good accuracy results are obtained both in terms of runtime library detection (94.4% and 95.5%, respectively) and architecture identification (100% and 98.6%, respectively). • We present MANTILLA, a system that automatically identifies the runtime library within a given binary using static binary analysis and KNN classification. • We evaluate MANTILLA on a dataset of real-world (statically linked) IoT malware, observing that majority of them prefer using uClibc to glibc and musl. • Our system achieves accuracy results close to 95.5% on runtime library identification. • In addition, we also evaluate our system with a dataset created with the tools from the binutils collection, achieving an accuracy of 94.4%.

Authors

Institutions

Publication Details

Journal
Future Generation Computer Systems
Published
2024-11-13
DOI
https://doi.org/10.1016/j.future.2024.107602
Citations
2
Primary Topic
Advanced Malware Detection Techniques
Type
article
Field-Weighted Citation Impact
0.70

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Identifying runtime libraries in statically linked linux binaries

Javier Carrillo-Mondéjar, Ricardo J. Rodríguez
2 citations
Future Generation Computer Systems
Advanced Malware Detection Techniques
0.70
article

Identifying runtime libraries in statically linked linux binaries

Javier Carrillo-Mondéjar, Ricardo J. Rodríguez
article en
2 citations

Abstract

Vulnerabilities in unpatched applications can originate from third-party dependencies in statically linked applications, as they must be relinked each time to take advantage of libraries that have been updated to fix any vulnerability. Despite this, malware binaries are often statically linked to ensure they run on target platforms and to complicate malware analysis. In this sense, identification of libraries in malware analysis becomes crucial to help filter out those library functions and focus on malware function analysis. In this paper, we introduce MANTILLA , a system for identifying runtime libraries in statically linked Linux-based binaries. Our system is based on radare2 to identify functions and extract their features (independent of the underlying architecture of the binary) through static binary analysis and on the K-nearest neighbors supervised machine learning model and a majority rule to predict final values. MANTILLA is evaluated on a dataset consisting of binaries built for different architectures ( MIPSeb , ARMel , Intel x86 , and Intel x86-64 ) and different runtime libraries ( uClibc , glibc , and musl ), achieving very high accuracy. We also evaluate it in two case studies. First, using a dataset of binary files belonging to the binutils collection and second, using an IoT malware dataset. In both cases, good accuracy results are obtained both in terms of runtime library detection (94.4% and 95.5%, respectively) and architecture identification (100% and 98.6%, respectively). • We present MANTILLA, a system that automatically identifies the runtime library within a given binary using static binary analysis and KNN classification. • We evaluate MANTILLA on a dataset of real-world (statically linked) IoT malware, observing that majority of them prefer using uClibc to glibc and musl. • Our system achieves accuracy results close to 95.5% on runtime library identification. • In addition, we also evaluate our system with a dataset created with the tools from the binutils collection, achieving an accuracy of 94.4%.

Future Generation Computer SystemsVol. 164
Universidad de Zaragoza (ES)
European Commission, Instituto Nacional de Ciberseguridad, Agencia Estatal de Investigación
Openalex Percentile: Top 30%
Advanced Malware Detection Techniques
0.70
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.