Statically Detecting Buffer Overflow in Cross-language Android
Applications Written in Java and C/C++
- URL: http://arxiv.org/abs/2305.10233v2
- Date: Thu, 18 May 2023 03:08:50 GMT
- Title: Statically Detecting Buffer Overflow in Cross-language Android
Applications Written in Java and C/C++
- Abstract summary: We propose an approach to do data flow analysis between Java and C/C++ to detect buffer overflow.
We have developed PilaiPidi, a tool that can automatically analyse the data flow in projects written in Java and C/C++.
- Score: 10.607324343206024
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Many applications are being written in more than one language to take
advantage of the features that different languages provide such as native code
support, improved performance, and language-specific libraries. However, there
are few static analysis tools currently available to analyse the source code of
such multilingual applications. Existing work on cross-language (Java and
C/C++) analysis fails to detect buffer overflow vulnerabilities that are of
cross-language nature. In this work, we are addressing how to do cross-language
analysis between Java and C/C++. Specifically, we propose an approach to do
data flow analysis between Java and C/C++ to detect buffer overflow. We have
developed PilaiPidi, a tool that can automatically analyse the data flow in
projects written in Java and C/C++. Using our approach, we were able to detect
23 buffer overflow vulnerabilities, which are of cross-language nature, in six
different well-known Android applications, and out of these, developers have
confirmed 11 vulnerabilities in three applications.
Related papers
- Multi-Language Detection of Design Pattern Instances [0.0]
We propose DP-LARA, a multi-language pattern detection tool.<n>It uses the multi-language capability of the LARA framework to support finding pattern instances in a code base.<n>We evaluate the detection performance and consistency of DP-LARA with a few software projects.
arXiv Detail & Related papers (2025-06-04T12:57:54Z) - Vulnerability Detection in Popular Programming Languages with Language Models [2.048226951354646]
This paper investigates the effectiveness of Language Models (LMs) for vulnerability detection in JavaScript, Java, Python, PHP, and Go.
We find that JavaScript exhibits the best performance, with considerably better and more practical detection capabilities compared to C/C++.
arXiv Detail & Related papers (2024-12-20T13:57:27Z) - Development and Benchmarking of Multilingual Code Clone Detector [2.253851493296371]
multilingual code clone detectors make it easier to add new language support by providing syntax information of the target language only.
We propose a multilingual code block extraction method based on ANTLR generation and implement a multilingual code clone detector (MSCCD)
Compared to ten state-of-the-art detectors, MSCCD performs at an average level while it also supports a significantly larger number of languages.
arXiv Detail & Related papers (2024-09-10T03:08:33Z) - CRUXEval-X: A Benchmark for Multilingual Code Reasoning, Understanding and Execution [50.7413285637879]
The CRUXEVAL-X code reasoning benchmark contains 19 programming languages.
It comprises at least 600 subjects for each language, along with 19K content-consistent tests in total.
Even a model trained solely on Python can achieve at most 34.4% Pass@1 in other languages.
arXiv Detail & Related papers (2024-08-23T11:43:00Z) - Context-Sensitive Abstract Interpretation of Dynamic Languages [0.0]
There is a vast gap in the quality of IDE tooling between static languages like Java and dynamic languages like Python or JavaScript.
Modern frameworks and libraries in these languages heavily use their dynamic capabilities to achieve the best ergonomics and readability.
We propose an algorithm that can bridge this gap by statically analyzing dynamic metaprogramming and runtime in programs.
arXiv Detail & Related papers (2024-01-31T17:45:05Z) - GWP-ASan: Sampling-Based Detection of Memory-Safety Bugs in Production [30.534320345970286]
heap-use-after-free and heap-buffer-overflow bugs remain the primary problem for security, reliability, and developer productivity for applications written in C or C++.
This paper describes a family of tools that detect these two classes of memory-safety bugs, while running in production, at near-zero overhead.
arXiv Detail & Related papers (2023-11-15T21:41:53Z) - AdaCCD: Adaptive Semantic Contrasts Discovery Based Cross Lingual
Adaptation for Code Clone Detection [69.79627042058048]
AdaCCD is a novel cross-lingual adaptation method that can detect cloned codes in a new language without annotations in that language.
We evaluate the cross-lingual adaptation results of AdaCCD by constructing a multilingual code clone detection benchmark consisting of 5 programming languages.
arXiv Detail & Related papers (2023-11-13T12:20:48Z) - ZC3: Zero-Shot Cross-Language Code Clone Detection [79.53514630357876]
We propose a novel method named ZC3 for Zero-shot Cross-language Code Clone detection.
ZC3 designs the contrastive snippet prediction to form an isomorphic representation space among different programming languages.
Based on this, ZC3 exploits domain-aware learning and cycle consistency learning to generate representations that are aligned among different languages are diacritical for different types of clones.
arXiv Detail & Related papers (2023-08-26T03:48:10Z) - ReadMe++: Benchmarking Multilingual Language Models for Multi-Domain Readability Assessment [12.704628912075218]
This paper introduces ReadMe++, a multilingual multi-domain dataset with human annotations of 9757 sentences in Arabic, English, French, Hindi, and Russian.
Using ReadMe++, we benchmark multilingual and monolingual language models in the supervised, unsupervised, and few-shot prompting settings.
Our experiments reveal exciting results of superior domain generalization and enhanced cross-lingual transfer capabilities by models trained on ReadMe++.
arXiv Detail & Related papers (2023-05-23T18:37:30Z) - Zero-Shot Cross-lingual Semantic Parsing [56.95036511882921]
We study cross-lingual semantic parsing as a zero-shot problem without parallel data for 7 test languages.
We propose a multi-task encoder-decoder model to transfer parsing knowledge to additional languages using only English-Logical form paired data.
Our system frames zero-shot parsing as a latent-space alignment problem and finds that pre-trained models can be improved to generate logical forms with minimal cross-lingual transfer penalty.
arXiv Detail & Related papers (2021-04-15T16:08:43Z) - X-FACTR: Multilingual Factual Knowledge Retrieval from Pretrained
Language Models [103.75890012041366]
Language models (LMs) have proven surprisingly successful at capturing factual knowledge.
However, studies on LMs' factual representation ability have almost invariably been performed on English.
We create a benchmark of cloze-style probes for 23 typologically diverse languages.
arXiv Detail & Related papers (2020-10-13T05:29:56Z) - Inducing Language-Agnostic Multilingual Representations [61.97381112847459]
Cross-lingual representations have the potential to make NLP techniques available to the vast majority of languages in the world.
We examine three approaches for this: (i) re-aligning the vector spaces of target languages to a pivot source language; (ii) removing language-specific means and variances, which yields better discriminativeness of embeddings as a by-product; and (iii) increasing input similarity across languages by removing morphological contractions and sentence reordering.
arXiv Detail & Related papers (2020-08-20T17:58:56Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.