<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">64260</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2025.064260</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Enhancing Ransomware Detection with Machine Learning Techniques and Effective API Integration</article-title>
<alt-title alt-title-type="left-running-head">Enhancing Ransomware Detection with Machine Learning Techniques and Effective API Integration</alt-title>
<alt-title alt-title-type="right-running-head">Enhancing Ransomware Detection with Machine Learning Techniques and Effective API Integration</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Iqbal</surname><given-names>Asad</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-2" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Hussain</surname><given-names>Mehdi</given-names></name><xref ref-type="aff" rid="aff-1">1</xref><email>mehdi.hussain@seecs.edu.pk</email></contrib>
<contrib id="author-3" contrib-type="author">
<name name-style="western"><surname>Riaz</surname><given-names>Qaiser</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-4" contrib-type="author">
<name name-style="western"><surname>Khalid</surname><given-names>Madiha</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-5" contrib-type="author">
<name name-style="western"><surname>Mumtaz</surname><given-names>Rafia</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-6" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Jung</surname><given-names>Ki-Hyun</given-names></name><xref ref-type="aff" rid="aff-2">2</xref><email>khanny.jung@gmail.com</email></contrib>
<aff id="aff-1"><label>1</label><institution>School of Electrical Engineering and Computer Science, National University of Sciences and Technology (NUST)</institution>, <addr-line>Islamabad, 44000</addr-line>, <country>Pakistan</country></aff>
<aff id="aff-2"><label>2</label><institution>Department of Software Convergence, Gyeongbuk National University (Andong National University)</institution>, <addr-line>Gyeongbuk, 36729</addr-line>, <country>Republic of Korea</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Authors: Mehdi Hussain. Email: <email>mehdi.hussain@seecs.edu.pk</email>; Ki-Hyun Jung. Email: <email>khanny.jung@gmail.com</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2025</year>
</pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>29</day><month>08</month><year>2025</year>
</pub-date>
<volume>85</volume>
<issue>1</issue>
<fpage>1693</fpage>
<lpage>1714</lpage>
<history>
<date date-type="received">
<day>10</day>
<month>2</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>11</day>
<month>7</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2025 The Authors.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Published by Tech Science Press.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_64260.pdf"></self-uri>
<abstract>
<p>Ransomware, particularly crypto-ransomware, remains a significant cybersecurity challenge, encrypting victim data and demanding a ransom, often leaving the data irretrievable even if payment is made. This study proposes an early detection approach to mitigate such threats by identifying ransomware activity before the encryption process begins. The approach employs a two-tiered approach: a signature-based method using hashing techniques to match known threats and a dynamic behavior-based analysis leveraging Cuckoo Sandbox and machine learning algorithms. A critical feature is the integration of the most effective Application Programming Interface call monitoring, which analyzes system-level interactions such as file encryption, key generation, and registry modifications. This enables the detection of both known and zero-day ransomware variants, overcoming limitations of traditional methods. The proposed technique was evaluated using classifiers such as Random Forest, Support Vector Machine, and K-Nearest Neighbors, achieving a detection accuracy of 98% based on 26 key ransomware attributes with an 80:20 training-to-testing ratio and 10-fold cross-validation. By combining minimal feature sets with robust behavioral analysis, the proposed method outperforms existing solutions and addresses current challenges in ransomware detection, thereby enhancing cybersecurity resilience.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Ransomware</kwd>
<kwd>machine learning malware</kwd>
<kwd>cyber security</kwd>
<kwd>malware</kwd>
<kwd>application program interface (API) malware</kwd>
</kwd-group>
<funding-group>
<award-group id="awg1">
<funding-source>National Research Foundation of Korea</funding-source>
<award-id>2021R1I1A3049788</award-id>
</award-group>
</funding-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Ransomware encrypts digital data and alters system login credentials to restrict access to victims&#x2019; resources. The attacker claims a ransom from the target for acquiring access to its resources. In 2017, the WannaCry cyberattack infected over 200,000 systems across 150 countries [<xref ref-type="bibr" rid="ref-1">1</xref>]. Ransomware is a prominent threat in the malware landscape, consistently ranked as one of the top concerns for cybersecurity experts. While infection rates have declined, ransomware remains highly cost-effective, as attackers focus on targeted internal communications and demand larger payouts. This profitability continues to attract cybercriminals, solidifying ransomware&#x2019;s position as a major cybersecurity challenge.</p>
<p>The proliferation of ransomware consists of multiple factors, including the widespread Internet usage enabling cross-border cyberattacks and the anonymity of cryptocurrencies facilitating untraceable ransom payments. Moreover, the cost-effectiveness of digital storage creates vulnerabilities that ransomware exploits, particularly through encryption. The availability of ransomware kits on the Dark Web and the rise of ransomware-as-a-service schemes makes it increasingly accessible, ensuring its sustained growth as a cyber threat. The types of ransomwares can be shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>Types of ransomwares</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-1.tif"/>
</fig>
<p><bold><italic>Attack Vector</italic></bold></p>
<p>Ransomware is often propagated through phishing emails, in which cybercriminals distribute malicious attachments or embed links that direct victims to counterfeit documents or seemingly legitimate websites. When a victim clicks on these attachments, the ransomware activates on their device and begins spreading across the system. Advanced ransomware variants further execute reconnaissance on the infected device, gathering system information before establishing communication with their Command and Control (C &#x0026; C) server. Through this connection, the ransomware transmits the collected data and requests cryptographic keys. Using these keys, it encrypts critical files, such as Microsoft Office documents, images, media files, and metadata. The ransomware only reveals its presence after encrypting all essential data, leaving the victim locked out of their files [<xref ref-type="bibr" rid="ref-2">2</xref>]. Almost 63.3% of ransomware infections are attributable to emails, with 35.7% relating to opening an attachment and 28.6% to clicking on a link, as illustrated in <xref ref-type="fig" rid="fig-2">Fig. 2</xref>. Moreover, 21.4% of victims report being unaware of how they became infected with ransomware. Additionally, ransomware typically provides its victims with a limited timeframe to pay the ransom before the amount increases.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Ransomware attack vectors [<xref ref-type="bibr" rid="ref-2">2</xref>]</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-2.tif"/>
</fig>
<p>Another significant vector for ransomware attacks involves victims visiting malicious or compromised websites, either intentionally or inadvertently. This type of attack, known as malvertising, leverages redirection strategies to exploit vulnerabilities in unsuspecting users. In a typical malvertising scenario, attackers embed exploit kits within an inline frame, or iframe, on a legitimate website. When users access the compromised site, they are redirected from the secure page to a malicious one, triggering the download and execution of ransomware. This sophisticated tactic highlights the increasing risks associated with online advertising and website vulnerabilities [<xref ref-type="bibr" rid="ref-3">3</xref>]. Windows OS is the most widely used operating system, making it a primary target for ransomware attacks. A critical aspect of ransomware detection within Windows lies in its Application Programming Interface (API). APIs serve as the primary interaction point with the operating system, and all programs rely on these interfaces for execution. Consequently, analyzing API behavior is a highly effective approach for identifying ransomware [<xref ref-type="bibr" rid="ref-4">4</xref>].</p>
<p>This study focuses on crypto ransomware, a particularly destructive variant that encrypts victims&#x2019; data and files using robust techniques such as hybrid encryption. The damage caused by crypto ransomware is often severe and irreversible, especially if recovery mechanisms are unavailable post-encryption. The pre-encryption phase is therefore crucial for detection and intervention, as early identification can significantly reduce the impact of an attack. Developing an early detection model is vital for mitigating these threats and safeguarding user data.</p>
<p>Existing research has introduced numerous models for ransomware detection, leveraging classical and advanced machine learning techniques. Advanced ML techniques, such as deep learning and convolutional neural networks (CNNs), require extensive data for effective training/classification, where classical machine learning algorithms can deliver reliable performance with fewer samples, making them an ideal choice. However, most of the classical ML-based ransomware detection models also rely on an extensive number of features, complex architectures, and are based on a single detection approach, which may lead them to be less effective against sophisticated ransomware variants.</p>
<p>Therefore, the proposed model addresses these limitations by employing a smaller, optimized set of features (API calls) and integrating both signature-based and behavior-based crypto ransomware detection mechanisms through classical machine learning. Furthermore, we optimized the detection process by reducing the required number of features, improving the model&#x2019;s efficiency compared to existing machine learning-based approaches. This approach serves as proof of concept for a lightweight and effective ransomware detection system. In short, the proposed approach enhances robustness and adaptability, offering a significant contribution to the advancement of ransomware detection methodologies. The core contribution of the study is as follows:
<list list-type="bullet">
<list-item>
<p>Behavioral Analysis: Identified key ransomware behaviors through API analysis and optimized features for efficient detection.</p></list-item>
<list-item>
<p>Pre-Encryption Detection: Developed a model to detect ransomware before encryption, minimizing damage.</p></list-item>
<list-item>
<p>Dataset Enhancement: Enriched ransomware datasets using real-time analysis of ransomware features by employing machine learning.</p></list-item>
</list></p>
<p>This paper conducts a comprehensive review of existing studies and presents a detailed discussion on the design, implementation, and analysis of the experimental framework. The findings derived from the experiments are thoroughly analyzed, leading to significant conclusions that contribute to the field. Additionally, the paper offers valuable recommendations to guide future research and advance the understanding of the subject.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related Work</title>
<p>Numerous studies and technical reports have highlighted the escalating threat of malware and its substantial impact on organizational security. The proliferation of advanced technologies, such as the Internet of Things (IoT) and cloud computing, which enhance global connectivity, has been accompanied by a corresponding rise in malware attacks [<xref ref-type="bibr" rid="ref-5">5</xref>]. This increase presents significant risks, especially when end-users lack awareness of the threats associated with these emerging technologies [<xref ref-type="bibr" rid="ref-6">6</xref>]. Among malware families, ransomware stands out as the most prevalent, targeting organizations and individual users on a large scale. Ransomware&#x2019;s effectiveness stems from its direct interaction between attackers and victims, where attackers demand ransoms in exchange for decryption keys. Alarmingly, data shows that 37% of affected organizations fail to recover their data even after paying the ransom [<xref ref-type="bibr" rid="ref-7">7</xref>]. Once ransomware infiltrates a system, it encrypts files using advanced encryption algorithms, withholding the decryption key and rendering data inaccessible [<xref ref-type="bibr" rid="ref-8">8</xref>]. While encryption is fundamentally used to ensure data confidentiality, attackers maliciously exploit this technology by deploying crypto-ransomware to deny users access to their own data. In particular, the work in [<xref ref-type="bibr" rid="ref-9">9</xref>] highlights the challenges and vulnerabilities associated with encryption schemes when faced with such attacks, discussing how encryption, although essential for security, can be turned against users when misused by malicious actors. The study also outlines the limitations of current encryption techniques in big data environments, where the massive scale and distributed nature of data increase the impact of ransomware and emphasize the need for robust, attack-resistant public key encryption schemes.</p>
<p>Current anti-malware solutions, such as antivirus software and intrusion detection systems (IDS), which rely on signature-based detection methods, are ineffective against zero-day attacks. This limitation arises because new malware signatures are not immediately added to the signature databases, leaving systems vulnerable to emerging threats [<xref ref-type="bibr" rid="ref-10">10</xref>]. Ransomware remains a favored tool for cybercriminals, with new variants continually developed to evade antivirus programs [<xref ref-type="bibr" rid="ref-11">11</xref>]. Moreover, the emergence of Ransomware-as-a-Service (RaaS) has lowered the technical barrier, enabling non-technical individuals with malicious intent to deploy ransomware attacks [<xref ref-type="bibr" rid="ref-12">12</xref>]. To address this growing threat, strong protection is urgently needed for organizations and users. Significant research efforts are focused on detecting ransomware at an early stage, employing techniques such as static and dynamic analysis to improve detection accuracy and mitigate damage [<xref ref-type="bibr" rid="ref-13">13</xref>].</p>
<p>Static analysis involves examining the source code without executing the ransomware, making it a safer approach for initial evaluation. One common technique involves extracting opcodes from the source code and generating n-gram representations, which are then used to train machine learning models for ransomware prediction [<xref ref-type="bibr" rid="ref-14">14</xref>]. Similarly, researchers have proposed rule-based detection methods derived from source code analysis [<xref ref-type="bibr" rid="ref-15">15</xref>]. In addition, analyzing the headers of executable files has also proven effective for ransomware detection. Malware apps targeting mobile devices exploit Android&#x2019;s open-source nature, unofficial app stores, and lack of verification processes. PerDRaML [<xref ref-type="bibr" rid="ref-16">16</xref>] is a permissions-based malware detection system that uses features such as permissions and smali sizes from a dataset of 10,000 apps. Machine learning models demonstrated high detection accuracy, with Random Forest achieving 89.96%. The approach optimized approximately 77% of the feature set, enhancing precision, sensitivity, and F-measure compared to existing techniques. Another study [<xref ref-type="bibr" rid="ref-17">17</xref>] evaluates four classifiers using a real-device hybrid analysis dataset (2008&#x2013;2020). Random Forest achieved the highest accuracy (97.86%) and demonstrated sustainability, while Logistic Regression was the most efficient, with GPU-based setups significantly reducing training time. The results demonstrate notable improvements in detection accuracy, efficiency, and long-term performance. However, a major limitation of static analysis lies in its susceptibility to obfuscation techniques, which can mask malicious code and potentially result in flawed or incomplete evaluations.</p>
<p>Dynamic analysis of ransomware requires executing the malware in a controlled environment, such as a sandbox, to monitor its behavior. This approach is effective due to the direct interaction it enables, allowing researchers to observe the ransomware&#x2019;s activities. However, the primary risk of dynamic analysis is the potential spread of malware within the lab environment. Additionally, advanced ransomware may detect the sandbox environment and alter its behavior, remaining dormant to evade detection. Some studies have proposed various detection methods, such as analyzing the encryption process, which involves repetitive patterns that can be examined at the file system level to identify ransomware behavior [<xref ref-type="bibr" rid="ref-18">18</xref>]. Tracking the frequency of encryption is another technique to distinguish between malicious attacks and legitimate encryption processes. A dynamic analysis approach involves monitoring system API calls to track ransomware interactions with the operating system [<xref ref-type="bibr" rid="ref-19">19</xref>].</p>
<p>In [<xref ref-type="bibr" rid="ref-20">20</xref>], the authors introduced a similar framework for detecting crypto-ransomware, named RENTAKA. This framework used the RISS dataset as a reference and successfully reduced the number of features to 80. However, this reduction caused a 3% decrease in detection accuracy, lowering the detection rate to 97.03% when using the Support Vector Machine (SVM) classifier, compared to [<xref ref-type="bibr" rid="ref-21">21</xref>]. The authors also employed several classification models, including SVM, Random Forest, Naive Bayes, KNN, and J48. Despite these advancements, the study lacks detailed information about the proposed model, and it does not clarify which encryption APIs were targeted during the analysis. A study on API-based ransomware detection was proposed by [<xref ref-type="bibr" rid="ref-22">22</xref>], using a feature importance technique. The authors analyzed API calls to identify specific patterns of ransomware behavior. They collected 653 executable files, including both benign and malicious applications. After conducting API analysis, they performed feature ranking and created a dataset for further use. The dataset was then provided to machine learning models, which were trained using four classifiers: Random Forest, C5.0, AdaBoost, and SVM. The highest detection accuracy achieved was 95.38% using the AdaBoost classifier. However, the primary contribution of this study lies in the application of feature ranking.</p>
<p>In [<xref ref-type="bibr" rid="ref-21">21</xref>], the authors analyze crypto-ransomware behaviors through function calls and Application Programming Interfaces (APIs). They propose a two-level detection model: the first level uses signature-based detection, while the second level employs machine learning algorithms to detect ransomware based on API calls. The authors employed the RISS dataset [<xref ref-type="bibr" rid="ref-23">23</xref>], which contains 30,967 applications, including both benign and malicious ones. After analyzing the dataset, they extracted ransomware-specific features, resulting in a new dataset with 232 API features and 1800 entries. This new dataset was specifically focused on pre-encryption functions. Using machine learning, the authors achieved 100% detection accuracy with the Random Forest classifier. After detecting ransomware, the model stores its signature for future detections. The experiments were conducted using Cuckoo Sandbox (V2.0.6), Windows 10 Pro, and Ubuntu 18.04 platforms. However, there is potential for further optimization by reducing insignificant features while maintaining similar detection accuracy. Another recent study [<xref ref-type="bibr" rid="ref-24">24</xref>] proposed a similar model to Kok et al. [<xref ref-type="bibr" rid="ref-21">21</xref>], focusing on API-based detection, but reduced the number of features from 232 to 206. However, this reduction led to a 1% decrease in detection accuracy when using the K-NN classifier. While both models focus on detecting known ransomware. <xref ref-type="table" rid="table-1">Table 1</xref> presents a comprehensive overview of commonly employed techniques for ransomware detection.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Crypto-ransomware techniques &#x0026; detection framework</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th align="center">Framework</th>
<th align="center">Pre-encryption methods</th>
<th align="center">Identification features</th>
<th align="center">Dataset</th>
</tr>
</thead>
<tbody>
<tr>
<td>Zakaria et al. [<xref ref-type="bibr" rid="ref-20">20</xref>]</td>
<td>Dynamic analysis of crypto-ransomware</td>
<td>Identification of 80 APIs</td>
<td>RISS</td>
</tr>
<tr>
<td>Kok et al. [<xref ref-type="bibr" rid="ref-21">21</xref>]</td>
<td>Identification of CRYPTO APIs at the start</td>
<td>Identification of 232 APIs</td>
<td>RISS</td>
</tr>
<tr>
<td>Sgandurra [<xref ref-type="bibr" rid="ref-23">23</xref>]</td>
<td>Dynamic analysis of Ransomware by executing an application for only 20 s</td>
<td>Identified the 30,967 functions named (system operations, system calls, APIs, performance)</td>
<td>RISS</td>
</tr>
<tr>
<td>Smith et al. [<xref ref-type="bibr" rid="ref-25">25</xref>]</td>
<td>Neural networks for early-stage ransomware detection</td>
<td>Utilized time-series data of system calls</td>
<td>Public Malware Dataset</td>
</tr>
<tr>
<td>Zhang and Liu [<xref ref-type="bibr" rid="ref-26">26</xref>]</td>
<td>API-level detection using federated learning</td>
<td>Identified 120 significant APIs</td>
<td>Federated public datasets</td>
</tr>
<tr>
<td>Berrueta et al. [<xref ref-type="bibr" rid="ref-27">27</xref>]</td>
<td>Machine learning for ransomware detection in file-sharing networks</td>
<td>Features from encrypted network traffic</td>
<td>File-sharing dataset</td>
</tr>
<tr>
<td>Frequent Pattern Mining Approach [<xref ref-type="bibr" rid="ref-28">28</xref>]</td>
<td>Utilizes frequent pattern mining to identify common behaviors among different ransomware families.</td>
<td>Extracts maximal frequent patterns from activity logs to serve as features for classification algorithms.</td>
<td>Activity logs from various ransomware families, including Locky, Cerber, and TeslaCrypt.</td>
</tr>
<tr>
<td>Dynamic Feature Analysis [<xref ref-type="bibr" rid="ref-29">29</xref>]</td>
<td>Dynamic Feature Analysis</td>
<td>Dynamic Feature Analysis</td>
<td>Dynamic Feature Analysis</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>It is observed that the above methods achieved high detection accuracies, however, they also employed a larger number of features, i.e., 323, 80, 100, 120. That further can be reduced, or only effective API calls can be employed for real-time detection. Secondly, the above methods are totally dependent on ML-based detection models, which can be optimized with signature matching for existing and future ransomware. Finally, the existing methods employed the custom or proprietary ransomware sample dataset, which is inaccessible to researchers in this domain.</p>
<p>This study proposes an optimal approach for detecting ransomware before it is executed, thereby minimizing potential damage to an organization. A dynamic solution is introduced to enable early detection through signature matching through an updated database, as well as the use of API calls and machine learning techniques. The proposed model identified only 26 features and can detect both known and unknown ransomware variants on the available sample dataset.</p>
</sec>
<sec id="s3">
<label>3</label>
<title>Overview of the Proposed Pre-Encryption Detection Model</title>
<p>In this section, we discuss the proposed pre-encryption detection model of ransomware, which consists of two phases. The first phase focuses on identifying known ransomware using a signature database. The second phase involves analyzing system calls or APIs to identify ransomware behavior (discussed in <xref ref-type="sec" rid="s4">Section 4</xref>), aided by a trained machine learning algorithm. This approach allows for the detection of previously unknown ransomware. The overview of the proposed model is illustrated in <xref ref-type="fig" rid="fig-3">Fig. 3</xref>.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Flow diagram of the proposed detection model</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-3.tif"/>
</fig>
<p>In the first phase, the proposed approach allows users to inspect files before opening them to identify potential ransomware threats. The user selects a file for analysis, and the model generates its SHA-256 hash signature, a unique 256-bit fingerprint based on the file&#x2019;s contents. This hash is then compared against known ransomware hashes stored in the Signature Archive. Hash comparison is more efficient than analyzing the entire file and requires minimal storage. If a match is found, the pre-encryption approach alerts the user and isolates the file. However, this method is limited to detecting known ransomware.</p>
<p>In the case of an unmatched file, the second phase of the proposed model is executed by sending the files to the Cuckoo Sandbox for further analysis of potential unknown malware. The file is executed in a secure virtual environment, where its behavior is monitored. Once the processing is complete, Cuckoo generates an analysis report for the file. In this study, we focus on the APIs that are employed for opening and accessing files. The pre-encryption model identifies these APIs before the encryption function call occurs.</p>
<p>The model searches for the keyword &#x201C;crypt&#x201D; within the APIs. If the keyword is found, the API is recorded, and the process proceeds to the next stage. After the APIs are converted into a suitable data format in a comma-separated values (CSV) file. The machine learning model is then applied to the extracted API for classification. The pseudocode is as follows (Pseudocode I).</p>
<fig id="fig-9">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-9.tif"/>
</fig>
<sec id="s3_1">
<label>3.1</label>
<title>Discretization</title>
<p>Discretization is a pre-processing phase that converts continuous data into discrete values to enhance the predictive accuracy of machine learning algorithms [<xref ref-type="bibr" rid="ref-30">30</xref>]. It typically employs rules-based and tree-based algorithms. While there are numerous techniques available for discretizing continuous variables, the optimal approach divides the variable into a meaningful number of intervals that align with the intended classification of the data.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Classification Models</title>
<p>After discretizing the data, the following ML classifiers are employed to detect ransomware in files: Random Forest, Support Vector Machine, Decision Tree, K-Nearest Neighbors, and Naive Bayes. If ransomware is detected, the pre-encryption model will alert the user, quarantine the file, and store its signature in the Signature Repository. If the model determines that the file is not ransomware, the user will be notified that the file is safe to open.</p>
</sec>
<sec id="s3_3">
<label>3.3</label>
<title>Ransomware Signature</title>
<p>Hashing is a form of encryption that uses a one-way function [<xref ref-type="bibr" rid="ref-31">31</xref>], generating a digest code that cannot be reversed to retrieve the original plaintext. Even a minor change in the content results in a completely different digest code. Comparing these digest codes is a common method for verifying message integrity. For our experiments, we employed the SHA-256 function. Initially, we calculated the message length and appended extra bits if its size deviated from 64 bits, ensuring that the total length became a multiple of 512. In such cases, the appended bits start with zero. The modulus of the original message with 2<sup>32</sup> is used to fill the final 64 bits. A compression algorithm is then applied to the resulting 512-bit message. The hashing operation is repeated 64 times to generate the final hash.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Proposed Methodology</title>
<p>In this section, we present the proposed methodology for ransomware detection. The study is organized into four key components shown in <xref ref-type="fig" rid="fig-4">Fig. 4</xref>: Sample Collection, Cuckoo Sandbox, Data Extraction, Machine Learning, and Database. Further details are as follows.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Components of the proposed approach</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-4.tif"/>
</fig>
<sec id="s4_1">
<label>4.1</label>
<title>Sample Collections</title>
<p><italic>Ransomware Samples</italic></p>
<p>This section discusses the collection of ransomware data. The process began with the dataset from Sgandurra et al. [<xref ref-type="bibr" rid="ref-23">23</xref>], which included 582 ransomware samples from eleven different categories, along with 942 benign applications (Goodware). This dataset encompasses Locky ransomware and crypto-ransomware, which exhibit varying file operations, strings, directory activities, deleted file extensions, registry key actions, and API metrics. Each application was analyzed for 30 s to record its features. An important component of the dataset is the API, which reveals how an application interacts with the operating system. Previous studies have shown that API-based attributes significantly impact detection rates, which is why we also use API-based features. Initial dataset samples were downloaded from RISS [<xref ref-type="bibr" rid="ref-23">23</xref>].</p>
<p>To further enhance the dataset with novel ransomware samples and other additional samples, we obtained from both VirusShare and theZoo (TZ) repositories. VirusShare is available to security experts, incident investigators, forensic professionals, and other users, containing &#x007E;34 million samples, with access requiring registration and verification by the site administrator. Additionally, 357 fresh crypto-ransomware samples were sourced from various websites, and 56 crypto-ransomware samples were collected from TZ.</p>
<p>As a result, 995 software samples are executed in Cuckoo Sandbox, with 904 providing relevant reports. The Cuckoo Sandbox is used to execute the collected samples and select the pre-encryption samples. The Sandbox report listed the order in which each sample called APIs during different iterations. For instance, an API sequence containing the keyword &#x201C;crypt&#x201D; was selected, as it is found that APIs with this keyword execute encryption functions. In total, there were 205 samples related to encryption, some of which are shown in <xref ref-type="table" rid="table-2">Table 2</xref>.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>APIs with &#x201C;Crypt&#x201D; keywords</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="center">No.</th>
<th align="center">API</th>
<th align="center">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>CryptAcquireContextA</td>
<td>A specific cryptographic service provider (CSP) was requested by CryptoAPI to supply a key container.</td>
</tr>
<tr>
<td>2</td>
<td>CryptAcquireContextW</td>
<td>It is a Windows API function used in cryptographic operations to acquire a handle to a cryptographic service provider (CSP). This handle is then used for performing various cryptographic functions, such as encryption, decryption, hashing, and digital signatures.</td>
</tr>
<tr>
<td>3</td>
<td>CryptExportKey</td>
<td>To securely export one symmetric encryption key or two asymmetric cryptographic keys out of a specific CSP.</td>
</tr>
<tr>
<td>4</td>
<td>CryptDecodeObjectEx</td>
<td>To decode using the lpszStructType parameter&#x2019;s definition of the structure type.</td>
</tr>
<tr>
<td>5</td>
<td>CryptEncrypt</td>
<td>Using the hkey option to conduct the encryption function with the encryption key supplied by CSP.</td>
</tr>
<tr>
<td>6</td>
<td>CryptCreateHash</td>
<td>The information flow enabled secure session communication to be hashed to start.</td>
</tr>
<tr>
<td>7</td>
<td>CryptGenKey</td>
<td>Create a public or private key pair for asymmetric cryptography or a random encryption key for symmetric encryption.</td>
</tr>
<tr>
<td>8</td>
<td>CryptHashData</td>
<td>To include details in a hash item that supported long or continuous transmissions.</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Initially, we collected APIs containing the keyword &#x201C;crypt&#x201D;, as they were primarily responsible for ransomware detection. To enhance efficiency, we analyzed these &#x201C;crypt&#x201D; APIs and identified those with a higher contribution to file encryption. Through feature ranking and detailed analysis, we extracted 46 APIs that were directly responsible for converting file content from plaintext to ciphertext. Since these APIs had both read and write permissions, we classified them into 20 read APIs and 26 write APIs. Further analysis revealed that the 26 write APIs played a more significant role and demonstrated higher accuracy compared to all APIs containing the &#x201C;crypt&#x201D; keyword.</p>
<p>These APIs are specifically used for data encryption, granting direct access to file system objects. In ransomware operations, APIs are exploited to systematically encrypt user files by reading plaintext data, applying cryptographic transformations, and writing the ciphertext back to storage. Additionally, ransomware often abuses these APIs to overwrite original files, delete volume shadow copies, and modify registry entries to prevent recovery.</p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Environmental Setup</title>
<p><italic>Cuckoo Sandbox</italic></p>
<p>The Cuckoo Sandbox monitors program execution by recording all API calls made by a sample. After execution, it generates a detailed report of these calls. Cuckoo was installed on a Haier system (Intel Core m3-7Y30, 8 GB RAM, Ubuntu 20.04, Windows 10 Pro), though its configuration was complex. Required dependencies included Python 2.7, Python 3, MongoDB, PostgreSQL, XenAPI, TCPdump, and VirtualBox. After meeting these requirements, Ubuntu 20.04 successfully installed Cuckoo Sandbox 2.0.7. For secure analysis, a Windows 7 guest machine was set up in VirtualBox before deploying Cuckoo, as Windows is a common ransomware target.</p>
<p>The Windows 7 guest machine is set up in VirtualBox and configured according to the network requirements listed in <xref ref-type="table" rid="table-3">Table 3</xref>, enabling its connection to the Cuckoo Sandbox host machine. A screenshot of the guest computer was taken to ensure it could be restarted without issues for each analysis. The default Cuckoo Sandbox settings were modified, as detailed in <xref ref-type="table" rid="table-4">Table 4</xref>. The guest machine needed to be initialized in VirtualBox before conducting sample analysis in Cuckoo Sandbox, after which the Cuckoo Web service could be started. On average, processing each sample took approximately 3 min.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Virtual machine configuration for cuckoo sandbox</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="center">Steps</th>
<th align="center">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>i.</td>
<td>Configure Network Address Translation (NAT): Set up NAT for network connectivity.</td>
</tr>
<tr>
<td>ii.</td>
<td>Enable DHCP: Ensure DHCP is enabled for automatic IP assignment.</td>
</tr>
<tr>
<td>iii.</td>
<td>Disable Host-Only Adapter: Turn off the host-only network adapter to avoid conflicts.</td>
</tr>
<tr>
<td>iv.</td>
<td>Disable Windows 7 Firewall: Temporarily disable the firewall on the Windows 7 machine.</td>
</tr>
<tr>
<td>v.</td>
<td>Configure User Account Control (UAC): Set up UAC as required for security settings.</td>
</tr>
<tr>
<td>vi.</td>
<td>Enable IPv4 on the Guest Machine: Ensure IPv4 is enabled for proper network communication.</td>
</tr>
<tr>
<td>vii.</td>
<td>Install Python on Both Machines: Install the necessary Python version on both systems.</td>
</tr>
<tr>
<td>viii.</td>
<td>Install Required Python Libraries: Install additional libraries such as Pillow.</td>
</tr>
<tr>
<td>ix.</td>
<td>Copy Cuckoo Sandbox Agent: Transfer agent.py from Cuckoo Sandbox to the Windows 7 machine.</td>
</tr>
<tr>
<td>x.</td>
<td>Run OS Agent: Execute agent.py on the Windows 7 machine for proper integration.</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Cuckoo sandbox setting</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="center">Steps</th>
<th align="center">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>i.</td>
<td>Start and Enable the Database: Ensure the database is running and enabled in the DBreport.conf file.</td>
</tr>
<tr>
<td>ii.</td>
<td>Set Guest Machine Name: The guest machine should be named &#x201C;Win7&#x201D; in the storage.conf file.</td>
</tr>
<tr>
<td>iii.</td>
<td>Configure Static IP: Assign a static IP in both VirtualBox.conf and WIN/Snapshot for network stability.</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>By executing the program, we identify and record all API calls made by the sample in the Cuckoo Sandbox. The generated report, listing all API calls, can be accessed either by downloading it through the browser or by retrieving the file from &#x201C;/.cuckoo/STORAGE/ANALYSIS/2/REPORTS/report.json&#x201D;.</p>
<p>For this investigation, the latter method was chosen, as it generates a compressed .rar file containing multiple files, with all API calls recorded in a single .json file.</p>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Feature Extraction</title>
<p><italic>Extraction of Data</italic></p>
<p>It is necessary to retrieve only significant data from the Cuckoo Sandbox report, as the information provided was extensive and unrelated to our investigation. All pre-encryption APIs were monitored for their behavior before invoking any encryption functions. To ensure that the script extracted the required data accurately, we developed a script to differentiate each API and compared its output against the &#x201C;apistats&#x201D; section in the Cuckoo report. After verifying that the code produced identical results, the keyword &#x201C;crypt&#x201D; was designated as the extraction endpoint. The pseudocode for extracting the &#x201C;crypt&#x201D; call is presented below (Pseudocode II).</p>
<fig id="fig-10">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-10.tif"/>
</fig>
<p>The data processing outlined above resulted in a &#x2018;txt&#x2019; format, which was then converted into a &#x2018;CSV&#x2019; file format to enable the ML algorithms to use it. This &#x2018;CSV&#x2019; contained 235 entries, with the sample name in the first column, the second column indicating whether the sample was benign (zero) or ransomware (one), and the third column providing the source indication for the sample. After extracting APIs from all samples, 232 APIs were identified. Based on the retrieved data, we further analyzed and focused on extracting only read and write APIs due to their role in file data manipulation. Using feature ranking and functionality assessment, we selected 46 APIs from 232, comprising 20 read APIs and 26 write APIs. These APIs play a critical role in encryption by reading file content and writing encrypted data to memory. Given their significance, we prioritized these APIs and observed that detection based on them produced better results than other methods.</p>
</sec>
<sec id="s4_4">
<label>4.4</label>
<title>Implementation and Classifications</title>
<p>In this section, ML algorithms are employed to distinguish between known and unknown ransomware attacks. The process was divided into two steps: first, the data was discretized; then, the Random Forest, Support Vector Machine, Decision Tree, KNN, Naive Bayes, and Voting Ensemble algorithms were used to train prediction models. All three datasets were used to evaluate the model&#x2019;s performance at two different training-to-testing ratios. The data for both training and testing were divided using the initial ratio of 80:20. The second ratio, 70:30, allocated 70% for training and 30% for testing. Additionally, 10-fold validation tests were conducted. The overall ML algorithms evaluation strategy on datasets is shown in <xref ref-type="fig" rid="fig-5">Fig. 5</xref>.</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>Machine learning algorithm model analysis</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-5.tif"/>
</fig>
<p><italic>Signature Database</italic></p>
<p>When the machine learning model identifies a sample as ransomware, its hash signature, along with other essential details stored in a MySQL database server as part of the experimental setup. The hash is generated using the SHA-256 algorithm, producing a 64-character string that uniquely represents the malware file. This approach enables rapid content-based matching, allowing for immediate identification of ransomware without relying on Cuckoo Sandbox analysis. On average, Cuckoo Sandbox requires 2 to 4 min to analyze a single file.</p>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Model Implementation and Verification</title>
<sec id="s5_1">
<label>5.1</label>
<title>Model Implementation</title>
<p>Pre-encryption detection is designed for implementation on Windows platforms using Python. While Cuckoo Sandbox is traditionally a Linux-based tool, research revealed that Linux can be installed as a subsystem on Windows through the Windows Subsystem for Linux (WSL) feature. This innovative approach enables Cuckoo Sandbox to coexist with Windows, making it compatible with platforms such as Windows 10 Professional, as specified in <xref ref-type="table" rid="table-5">Table 5</xref>.</p>
<table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Implementation in operating system</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Components</th>
<th>Implementation</th>
</tr>
</thead>
<tbody>
<tr>
<td>Windows Platform</td>
<td>Windows 10 Professional</td>
</tr>
<tr>
<td>Sub Operating System</td>
<td>Ubuntu 20 (via WSL)</td>
</tr>
<tr>
<td>Sandbox</td>
<td>Cuckoo</td>
</tr>
<tr>
<td>Machine Learning</td>
<td>RF, SVM, KNN, DT, EC</td>
</tr>
<tr>
<td>Database</td>
<td>MySQL (Signature Matching)</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In this setup, Ubuntu 20 is installed as a subsystem within Windows, creating the necessary Linux environment for deploying Cuckoo Sandbox. The sandbox works in conjunction with MySQL, which serves as a signature repository. The integration involves ML algorithms to enhance the pre-encryption detection process. These algorithms analyze the data collected by Cuckoo Sandbox, identifying ransomware efficiently. When the ML model detects ransomware, a signature is generated for the malicious file and stored in the MySQL database, which is managed through an Apache server. This enables fast comparisons between incoming file hashes and stored ransomware signatures, ensuring precise detection in subsequent encounters.</p>
<p>Once ransomware is identified, the system alerts the user through a graphical user interface (GUI). It then isolates and removes the infected file. To further neutralize the threat, the ransomware&#x2019;s extension is removed, effectively deactivating it and preventing further execution. This method uses advanced ML techniques and practical deployment strategies, making it an effective way to fight ransomware on Windows.</p>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Pre-Encryption Model Verification</title>
<p>API pattern identification using the trained ML algorithm of the pre-encryption model is illustrated in <xref ref-type="fig" rid="fig-6">Fig. 6</xref>. When a test file is initially labeled as &#x2018;Unmatched&#x2019;, its pre-encryption API calls are extracted and analyzed to recognize patterns for classifying it as either &#x2018;Goodware&#x2019; or &#x2018;Ransomware&#x2019;. If the file is subsequently classified as Ransomware, the system checks the signature repository for an existing match. In the absence of a match, the repository is updated with the new signature.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>Pre-encryption verification model</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-6.tif"/>
</fig>
</sec>
</sec>
<sec id="s6">
<label>6</label>
<title>Experimental Results</title>
<p>In this section, we evaluate and compare the performance of the proposed and existing techniques using metrics such as accuracy, precision, recall, True Positive Rate (TP Rate), False Positive Rate (FP Rate), F-measure, and cross-validation. The TP Rate measures how effectively the model correctly predicts positive cases, while the FP Rate indicates how often it incorrectly classifies negative cases as positive. Accuracy assesses the overall effectiveness of the model in identifying ransomware, whereas precision evaluates the correctness of positive predictions, and recall measures how well the model detects all relevant positive instances.</p>
<p>The F-measure balances precision and recall, providing a comprehensive assessment of the model&#x2019;s performance. Additionally, the Receiver Operating Characteristic (ROC) curve represents the TP Rate vs. FP Rate, while the Precision-Recall Curve (PRC) plots precision against recall.</p>
<p>From <xref ref-type="fig" rid="fig-7">Fig. 7</xref>, it is notable that to achieve 100% accuracy, 232 API features were employed. However, from our experiments, we identified only 46 API calls that are sufficient for maintaining a detection accuracy of 99%. The feature importance based on the random forest classifier highlights the features that contribute the most to the detection mechanism. We further categorized the 46 APIs into reading and writing functions/APIs to identify their significant contributions. The identified read-and-write APIs in the proposed model include 20 read functions and 26 write functions, as detailed in <xref ref-type="table" rid="table-6">Tables 6</xref> and <xref ref-type="table" rid="table-7">7</xref>.</p>
<fig id="fig-7">
<label>Figure 7</label>
<caption>
<title>Feature importance based on the random forest classifier</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-7.tif"/>
</fig><table-wrap id="table-6">
<label>Table 6</label>
<caption>
<title>Proposed set of read API/functions</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>S. No.</th>
<th>Function</th>
<th>Purpose</th>
<th align="center">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>NtReadVirtualMemory</td>
<td>Read</td>
<td>Reads the memory of a process and analyzes its structure.</td>
</tr>
<tr>
<td>2</td>
<td>LookupPrivilegeValueW</td>
<td>Read</td>
<td>Retrieves the locally unique identifier (LUID) for a specified privilege name.</td>
</tr>
<tr>
<td>3</td>
<td>GetDiskFreeSpaceExW</td>
<td>Read</td>
<td>Retrieves the total space, free space, and user-available free space on a disk volume.</td>
</tr>
<tr>
<td>4</td>
<td>OpenServiceA</td>
<td>Read</td>
<td>Opens an existing service for further operations.</td>
</tr>
<tr>
<td>5</td>
<td>NtOpenKey</td>
<td>Read</td>
<td>Open a registry key and return a handle to it.</td>
</tr>
<tr>
<td>6</td>
<td>GetSystemTimeAsFileTime</td>
<td>Read</td>
<td>Retrieves the current system time in Coordinated Universal Time (UTC) format.</td>
</tr>
<tr>
<td>7</td>
<td>NtDelayExecution</td>
<td>Read</td>
<td>Suspends the execution of a thread for a specified time interval.</td>
</tr>
<tr>
<td>8</td>
<td>GetVolumePathNameW</td>
<td>Read</td>
<td>Retrieves the volume mount point of a specified path.</td>
</tr>
<tr>
<td>9</td>
<td>NtQueryValueKey</td>
<td>Read</td>
<td>Retrieves a value entry for a specified registry key.</td>
</tr>
<tr>
<td>10</td>
<td>FindResourceExA</td>
<td>Read</td>
<td>Locates a resource in a specified module using its type and name.</td>
</tr>
<tr>
<td>11</td>
<td>GetFileAttributesW</td>
<td>Read</td>
<td>Retrieves the file system attributes of a specified file or directory.</td>
</tr>
<tr>
<td>12</td>
<td>FindResourceExW</td>
<td>Read</td>
<td>Locates a resource in a specified module using its type, name, and language.</td>
</tr>
<tr>
<td>13</td>
<td>NtGetContextThread</td>
<td>Read</td>
<td>Retrieves the context of a specified thread.</td>
</tr>
<tr>
<td>14</td>
<td>GetCursorPos</td>
<td>Read</td>
<td>Retrieves the current position of the mouse cursor in screen coordinates.</td>
</tr>
<tr>
<td>15</td>
<td>NtOpenDirectoryObject</td>
<td>Read</td>
<td>Opens a directory object and returns a handle to it.</td>
</tr>
<tr>
<td>16</td>
<td>getaddrinfo</td>
<td>Read</td>
<td>Resolves a hostname or domain name to an IP address and other network information.</td>
</tr>
<tr>
<td>17</td>
<td>NtReadFile</td>
<td>Read</td>
<td>Reads data from an open file.</td>
</tr>
<tr>
<td>18</td>
<td>SearchPathW</td>
<td>Read</td>
<td>Searches for a specified file in a given path.</td>
</tr>
<tr>
<td>19</td>
<td>GetSystemMetrics</td>
<td>Read</td>
<td>Retrieves system metrics or configuration settings.</td>
</tr>
<tr>
<td>20</td>
<td>GetSystemDirectory</td>
<td>Read</td>
<td>Returns the path of the system directory, which contains system files such as drivers and DLLs.</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-7">
<label>Table 7</label>
<caption>
<title>Proposed set of write API/functions</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="center">S. No.</th>
<th align="center">Function</th>
<th>Purpose</th>
<th align="center">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>VirtualProtectEx</td>
<td>Write</td>
<td>Changes the memory protection of a specified range of committed pages in a process.</td>
</tr>
<tr>
<td>2</td>
<td>HttpSendRequestW</td>
<td>Write</td>
<td>Sends an HTTP request to a server, allowing additional headers to be included.</td>
</tr>
<tr>
<td>3</td>
<td>NtFreeVirtualMemory</td>
<td>Write</td>
<td>Releases, decommits, or both, a group of pages in a process&#x2019;s virtual address space.</td>
</tr>
<tr>
<td>4</td>
<td>CreateThread</td>
<td>Write</td>
<td>Creates a new thread in a process, specifying the starting address of execution.</td>
</tr>
<tr>
<td>5</td>
<td>LdrLoadDll</td>
<td>Write</td>
<td>Loads a dynamic-link library (DLL) into a process using a low-level function.</td>
</tr>
<tr>
<td>6</td>
<td>SetEndOfFile</td>
<td>Write</td>
<td>Adjusts the size of a file, either truncating or extending it. If extended, new regions remain undefined.</td>
</tr>
<tr>
<td>7</td>
<td>UuidCreate</td>
<td>Write</td>
<td>Generates a UUID that is not linked to the machine&#x2019;s Ethernet address or other generated UUIDs.</td>
</tr>
<tr>
<td>8</td>
<td>SetFilePointer</td>
<td>Write</td>
<td>Moves the file pointer position within a file. Use SetFilePointerEx for large file handling.</td>
</tr>
<tr>
<td>9</td>
<td>NtProtectVirtualMemory</td>
<td>Write</td>
<td>Modifies memory protection settings, removing EAF-generated guard pages.</td>
</tr>
<tr>
<td>10</td>
<td>CryptAcquireContextW</td>
<td>Write</td>
<td>Acquires a handle to a cryptographic key container within a specified cryptographic service provider (CSP).</td>
</tr>
<tr>
<td>11</td>
<td>MessageBoxTimeoutW</td>
<td>Write</td>
<td>Displays a message box with a timeout mechanism using a separate thread.</td>
</tr>
<tr>
<td>12</td>
<td>NtWriteVirtualMemory</td>
<td>Write</td>
<td>Writes data into the virtual memory of another process.</td>
</tr>
<tr>
<td>13</td>
<td>CreateDirectoryW</td>
<td>Write</td>
<td>Creates a new directory with an optional security descriptor.</td>
</tr>
<tr>
<td>14</td>
<td>NtCreateKey</td>
<td>Write</td>
<td>Opens or creates a new registry key.</td>
</tr>
<tr>
<td>15</td>
<td>WriteProcessMemory</td>
<td>Write</td>
<td>Writes data to the memory of another process. Fails if the memory is inaccessible.</td>
</tr>
<tr>
<td>16</td>
<td>LdrUnloadDll</td>
<td>Write</td>
<td>Unloads a previously loaded DLL from a process.</td>
</tr>
<tr>
<td>17</td>
<td>ReadProcessMemory</td>
<td>Write</td>
<td>Reads memory from another process and copies it into the current process&#x2019;s buffer. Requires appropriate access permissions.</td>
</tr>
<tr>
<td>18</td>
<td>NtSetInformationFile</td>
<td>Write</td>
<td>Modifies various attributes of a file. Unsupported attributes are ignored by the file system.</td>
</tr>
<tr>
<td>19</td>
<td>NtTerminateProcess</td>
<td>Write</td>
<td>Terminates a specified process along with all its threads.</td>
</tr>
<tr>
<td>20</td>
<td>NtWriteFile</td>
<td>Write</td>
<td>Writes data to an open file.</td>
</tr>
<tr>
<td>21</td>
<td>VirtualFreeEx</td>
<td>Write</td>
<td>Releases or decommits a region of memory in a specified process&#x2019;s virtual address space.</td>
</tr>
<tr>
<td>22</td>
<td>NtSetContextThread</td>
<td>Write</td>
<td>Sets the context (register values) of a specified thread.</td>
</tr>
<tr>
<td>23</td>
<td>CoInitializeSecurity</td>
<td>Write</td>
<td>Configures security settings for process-wide COM security.</td>
</tr>
<tr>
<td>24</td>
<td>NtResumeThread</td>
<td>Write</td>
<td>Decreases the thread&#x2019;s suspend count. The thread resumes execution when the count reaches zero.</td>
</tr>
<tr>
<td>25</td>
<td>InternetCloseHandle</td>
<td>Write</td>
<td>Closes an internet handle, discarding unfinished data and pending activities.</td>
</tr>
<tr>
<td>26</td>
<td>NtClose</td>
<td>Write</td>
<td>Closes an object handle.</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="table-8">Table 8</xref> shows the accuracy of machine learning models along with precision, recall, F1 score, and their cross-validation checks. We achieved 100% accuracy using the Random Forest model, 99.81% using Support Vector Machine, 99.63% using the Decision Tree, 98.09% using K-Nearest Neighbors, 97.29% using Naive Bayes, and 99.18% with the Ensemble Classifier for 46 features. Additionally, when analyzing the reading functions, we obtained the following accuracies: 96.20% using Random Forest, 96.38% using Support Vector Machine, 95.84% using Decision Tree, 96.38% using K-Nearest Neighbors, 92.23% using Naive Bayes, and 96.48% with the Ensemble Classifier.</p>
<table-wrap id="table-8">
<label>Table 8</label>
<caption>
<title>Accuracies of machine learning models</title>
</caption>
<table>
<colgroup>
<col/>
<col align="center"/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>S. no.</th>
<th align="center">Features (APIs)</th>
<th>Model</th>
<th>Accuracy</th>
<th>Precision</th>
<th>Recall</th>
<th>F1-Score</th>
<th>Cross validation</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Read &#x0026; Write Combine (46)</td>
<td>Random Forest</td>
<td>100%</td>
<td>100%</td>
<td>100%</td>
<td>100%</td>
<td>99.76%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Support Vector Machine</td>
<td>99.81%</td>
<td>99.82%</td>
<td>99.82%</td>
<td>99.82%</td>
<td>99.61%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Decision Tree</td>
<td>99.63%</td>
<td>99.64%</td>
<td>99.64%</td>
<td>99.64%</td>
<td>99.45%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>K-Nearest Neighbors</td>
<td>99.09%</td>
<td>99.10%</td>
<td>99.10%</td>
<td>99.10%</td>
<td>99.37%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Naive Bayes</td>
<td>97.29%</td>
<td>97.40%</td>
<td>97.29%</td>
<td>97.29%</td>
<td>97.75%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Ensemble Classifier</td>
<td>99.18%</td>
<td>99.19%</td>
<td>99.19%</td>
<td>99.19%</td>
<td>99.93%</td>
</tr>
<tr>
<td>2</td>
<td>Only Read (20)</td>
<td>Random Forest</td>
<td>96.20%</td>
<td>96.22</td>
<td>96.20</td>
<td>96.21</td>
<td>97.44%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Support Vector Machine</td>
<td>96.38%</td>
<td>96.40%</td>
<td>96.39%</td>
<td>96.39%</td>
<td>96.51%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Decision Tree</td>
<td>95.84%</td>
<td>95.86%</td>
<td>95.84%</td>
<td>95.85%</td>
<td>97.21%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>K-Nearest Neighbors</td>
<td>96.38%</td>
<td>96.47%</td>
<td>96.37%</td>
<td>96.39%</td>
<td>96.67%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Naive Bayes (NB)</td>
<td>92.23%</td>
<td>92.87%</td>
<td>92.31%</td>
<td>92.22%</td>
<td>91.71%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Ensemble Classifier</td>
<td>96.48%</td>
<td>96.48%</td>
<td>96.49%</td>
<td>96.48%</td>
<td>97.69%</td>
</tr>
<tr>
<td>3</td>
<td>Only Write (26)</td>
<td>Random Forest</td>
<td>99.45%</td>
<td>99.46%</td>
<td>99.46%</td>
<td>99.46%</td>
<td>99.76%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Support Vector Machine</td>
<td>99.27%</td>
<td>99.28%</td>
<td>99.29%</td>
<td>99.28%</td>
<td>99.53%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Decision Tree</td>
<td>99.45%</td>
<td>99.46%</td>
<td>99.46%</td>
<td>99.46%</td>
<td>99.53%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>K-Nearest Neighbors</td>
<td>99.27%</td>
<td>99.28%</td>
<td>99.29%</td>
<td>99.28%</td>
<td>99.38%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Naive Bayes</td>
<td>97.47%</td>
<td>97.57%</td>
<td>97.50%</td>
<td>97.47%</td>
<td>97.91%</td>
</tr>
<tr>
<td></td>
<td></td>
<td>Ensemble Classifier</td>
<td>99.72%</td>
<td>99.72%</td>
<td>99.74%</td>
<td>99.73%</td>
<td>99.45%</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>We focused on the write functions, as they play a crucial role in ransomware activity, especially in the initial stage when files are encrypted, making it more significant than read functions. We achieved 99.45% accuracy using Random Forest, 99.27% with Support Vector Machine, 99.45% with Decision Tree, 99.27% with K-Nearest Neighbors, 97.47% with Naive Bayes, and 99.72% with the Ensemble Classifier, which averages all classifiers. This means that we can achieve the same accuracy as presented previously in [<xref ref-type="bibr" rid="ref-21">21</xref>], using only 26 features of the write function APIs. Our collected dataset is also verified using other machine learning models, Support Vector Machine, Decision Tree, K-Nearest Neighbors, Naive Bayes, and Ensemble Classifier with Random Forest, which showed better results with fewer API functions.</p>
<p>Similarly, for evaluating other evaluation matrices, such as ROC curves, that are used to measure the probability of classification models at different levels. The curve has a true positive rate along the <italic>x</italic>-axis and a false positive rate along the <italic>y</italic>-axis. <xref ref-type="fig" rid="fig-8">Fig. 8</xref> represents ROC curves of different machine learning models.</p>
<fig id="fig-8">
<label>Figure 8</label>
<caption>
<title>ROC curves of ML models</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64260-fig-8.tif"/>
</fig>
<p>The performance of the proposed method is evaluated and compared with recent ransomware detection models, as shown in <xref ref-type="table" rid="table-9">Table 9</xref>. In [<xref ref-type="bibr" rid="ref-32">32</xref>], the authors employed system call data analyzed with various machine learning algorithms, achieving a detection accuracy of up to 91%. Similarly, Kok et al. [<xref ref-type="bibr" rid="ref-21">21</xref>] reported 100% detection accuracy on a custom sample dataset. However, their approach utilized a significantly larger feature set (232 features) compared to the 46 features employed in our method, and their dataset was proprietary. Zhang et al. [<xref ref-type="bibr" rid="ref-26">26</xref>] achieved a comparable 97% accuracy using a minimal feature set of 25 features. However, their dataset was synthetic, and they relied on advanced and complex machine learning models, such as convolutional neural networks (CNNs). Additionally, Akbar et al. [<xref ref-type="bibr" rid="ref-16">16</xref>] achieved 90% accuracy using only 5 features. However, their study focused on general Android malware, including ransomware, without specifying the exact number of ransomware samples analyzed.</p>
<table-wrap id="table-9">
<label>Table 9</label>
<caption>
<title>Performance comparisons with existing approaches</title>
</caption>
<table>
<colgroup>
<col/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>References</th>
<th align="center">Dataset</th>
<th align="center">Methodology</th>
<th align="center">Features</th>
<th align="center">Samples</th>
<th align="center">Accuracy</th>
</tr>
</thead>
<tbody>
<tr>
<td>Akbar et al. [<xref ref-type="bibr" rid="ref-16">16</xref>]</td>
<td>Custom dataset for Android APK</td>
<td>Various Machine Learning algorithms (SVM, decision trees)</td>
<td>5</td>
<td>10,000&#x002B;</td>
<td>90%</td>
</tr>
<tr>
<td>Kok et al. [<xref ref-type="bibr" rid="ref-21">21</xref>]</td>
<td>Custom dataset</td>
<td>Pre-encryption detection algorithm</td>
<td>232</td>
<td>2633&#x002B;</td>
<td>100%</td>
</tr>
<tr>
<td>Zhang and Liu [<xref ref-type="bibr" rid="ref-26">26</xref>]</td>
<td>Real-world and synthetic datasets</td>
<td>Hybrid ML (Random Forest, SVM, CNN)</td>
<td>25</td>
<td>10,000&#x002B;</td>
<td>97%</td>
</tr>
<tr>
<td>Chew et al. [<xref ref-type="bibr" rid="ref-32">32</xref>]</td>
<td>Synthetic system call dataset</td>
<td>System Call Analysis (SVM, Random Forest)</td>
<td>15</td>
<td>4000&#x002B;</td>
<td>91%</td>
</tr>
<tr>
<td>Anikolova et al. [<xref ref-type="bibr" rid="ref-33">33</xref>]</td>
<td>Behavioral data from dynamic analysis</td>
<td>Machine Learning (BASE framework)</td>
<td>File access patterns, system calls</td>
<td>Not specified</td>
<td>Not specified</td>
</tr>
<tr>
<td>Deng et al. [<xref ref-type="bibr" rid="ref-34">34</xref>]</td>
<td>PE header dataset</td>
<td>PE header dataset</td>
<td>PE header</td>
<td>&#x2013;</td>
<td>97.9%</td>
</tr>
<tr>
<td>Proposed</td>
<td>Proposed dataset</td>
<td>Random Forest, DT, SVM</td>
<td>46</td>
<td>1846</td>
<td>98%</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In contrast, the proposed method achieved 98% detection accuracy using only 46 features, evaluated on 1846 ransomware-specific samples. These results demonstrate that the proposed approach outperforms existing methods in terms of achieving high detection accuracy with a minimal number of features, offering a promising solution for effective ransomware detection.</p>
</sec>
<sec id="s7">
<label>7</label>
<title>Conclusion</title>
<p>This study has presented an early detection approach that effectively identified ransomware activity before encryption occurred. It integrated the two-tiered detection mechanism that combined signature-based hashing techniques with dynamic behavior analysis using Cuckoo Sandbox and machine learning. The first stage used hashing to compare file signatures against known ransomware, enabling rapid detection without execution. The second stage employed a trained machine learning model to analyze pre-encryption API calls, effectively identifying both known and unknown ransomware. Newly detected signatures were stored for future use, enhancing the model&#x2019;s effectiveness over time. Additionally, the inclusion of critical API call monitoring further strengthened system-level threat analysis, enabling the identification of malicious activity with high precision. Experimental results demonstrated that the proposed approach achieved a 98% detection accuracy using 46 key ransomware attributes, compared to over 250 attributes used in other methods. The results were validated through an 80:20 training-to-testing ratio and 10-fold cross-validation. When compared to existing solutions, the proposed method could optimize the feature selection while maintaining robust performance, ensuring efficiency and lightweight ransomware detection.</p>
</sec>
</body>
<back>
<ack>
<p>The authors would like to thank the National University of Sciences and Technology (NUST) and Andong National University.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>This research was funded by the National University of Sciences and Technology (NUST) and this research was supported by the Basic Science Research Program through the National Research Foundation of Korea (NRF), funded by the Ministry of Education (2021R1I1A3049788).</p>
</sec>
<sec>
<title>Author Contributions</title>
<p>Study conception and design: Mehdi Hussain, Ki-Hyun Jung; data collection: Asad Iqbal; analysis and interpretation of results: Asad Iqbal, Qaiser Riaz, Madiha Khalid, Ki-Hyun Jung; draft manuscript preparation: Mehdi Hussain, Asad Iqbal, Rafia Mumtaz. All authors reviewed the results and approved the final version of the manuscript.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>Data is freely available and can give access on request.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>Not applicable.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The authors declare no conflicts of interest to report regarding the present study.</p>
</sec>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="other"><article-title>Ransomware attack report [Internet]</article-title>; <comment>2017 [cited 2025 Feb 10]</comment>. Available from: <ext-link ext-link-type="uri" xlink:href="https://en.wikipedia.org/wiki/WannaCry">https://en.wikipedia.org/wiki/WannaCry</ext-link>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Humayun</surname> <given-names>M</given-names></string-name>, <string-name><surname>Niazi</surname> <given-names>M</given-names></string-name>, <string-name><surname>Jhanjhi</surname> <given-names>NZ</given-names></string-name>, <string-name><surname>Alshayeb</surname> <given-names>M</given-names></string-name>, <string-name><surname>Mahmood</surname> <given-names>S</given-names></string-name></person-group>. <article-title>Cyber security threats and vulnerabilities: a systematic mapping study</article-title>. <source>Arab J Sci Eng</source>. <year>2020</year>;<volume>45</volume>(<issue>4</issue>):<fpage>3171</fpage>&#x2013;<lpage>89</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s13369-019-04319-2</pub-id>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Hull</surname> <given-names>G</given-names></string-name>, <string-name><surname>John</surname> <given-names>H</given-names></string-name>, <string-name><surname>Arief</surname> <given-names>B</given-names></string-name></person-group>. <article-title>Ransomware deployment methods and analysis: views from a predictive model and human responses</article-title>. <source>Crime Sci</source>. <year>2019</year>;<volume>8</volume>(<issue>1</issue>):<fpage>2</fpage>. doi:<pub-id pub-id-type="doi">10.1186/s40163-019-0097-9</pub-id>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Kok</surname> <given-names>S</given-names></string-name>, <string-name><surname>Abdullah</surname> <given-names>A</given-names></string-name>, <string-name><surname>Jhanjhi</surname> <given-names>NZ</given-names></string-name>, <string-name><surname>Supramaniam</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Prevention of crypto-ransomware using a pre-encryption detection algorithm</article-title>. <source>Computers</source>. <year>2019</year>;<volume>8</volume>(<issue>4</issue>):<fpage>79</fpage>. doi:<pub-id pub-id-type="doi">10.3390/computers8040079</pub-id>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Cen</surname> <given-names>M</given-names></string-name>, <string-name><surname>Jiang</surname> <given-names>F</given-names></string-name>, <string-name><surname>Qin</surname> <given-names>X</given-names></string-name>, <string-name><surname>Jiang</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Doss</surname> <given-names>R</given-names></string-name></person-group>. <article-title>Ransomware early detection: a survey</article-title>. <source>Comput Netw</source>. <year>2024</year>;<volume>239</volume>(<issue>2</issue>):<fpage>110138</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.comnet.2023.110138</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Singh</surname> <given-names>J</given-names></string-name>, <string-name><surname>Singh</surname> <given-names>J</given-names></string-name></person-group>. <article-title>A survey on machine learning-based malware detection in executable files</article-title>. <source>J Syst Archit</source>. <year>2021</year>;<volume>112</volume>(<issue>1</issue>):<fpage>101861</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.sysarc.2020.101861</pub-id>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Lee</surname> <given-names>S</given-names></string-name>, <string-name><surname>Kim</surname> <given-names>HK</given-names></string-name>, <string-name><surname>Kim</surname> <given-names>K</given-names></string-name></person-group>. <article-title>Ransomware protection using the moving target defense perspective</article-title>. <source>Comput Electr Eng</source>. <year>2019</year>;<volume>78</volume>(<issue>66</issue>):<fpage>288</fpage>&#x2013;<lpage>99</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.compeleceng.2019.07.014</pub-id>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ali Saleh Al-rimy</surname> <given-names>B</given-names></string-name>, <string-name><surname>Maarof</surname> <given-names>MA</given-names></string-name>, <string-name><surname>Shaid</surname> <given-names>SZM</given-names></string-name></person-group>. <article-title>Crypto-ransomware early detection model using novel incremental bagging with enhanced semi-random subspace selection</article-title>. <source>Future Gener Comput Syst</source>. <year>2019</year>;<volume>101</volume>(<issue>1</issue>):<fpage>476</fpage>&#x2013;<lpage>91</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.future.2019.06.005</pub-id>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yu</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Gao</surname> <given-names>CZ</given-names></string-name>, <string-name><surname>Jing</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Gupta</surname> <given-names>BB</given-names></string-name>, <string-name><surname>Cai</surname> <given-names>Q</given-names></string-name></person-group>. <article-title>A practical public key encryption scheme based on learning parity with noise</article-title>. <source>IEEE Access</source>. <year>2018</year>;<volume>6</volume>:<fpage>31918</fpage>&#x2013;<lpage>23</lpage>. doi:<pub-id pub-id-type="doi">10.1109/access.2018.2840119</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>&#x00C7;elikta&#x015F;</surname> <given-names>B</given-names></string-name></person-group>. <article-title>The ransomware detection and prevention tool design by using signature and anomaly based detection methods [master&#x2019;s thesis]. Istanbul, T&#x00FC;rkiye: Istanbul Technical University</article-title>; <year>2018</year>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ren</surname> <given-names>A</given-names></string-name>, <string-name><surname>Liang</surname> <given-names>C</given-names></string-name>, <string-name><surname>Hyug</surname> <given-names>I</given-names></string-name>, <string-name><surname>Broh</surname> <given-names>S</given-names></string-name>, <string-name><surname>Jhanjhi</surname> <given-names>NZ</given-names></string-name></person-group>. <article-title>A three-level ransomware detection and prevention mechanism</article-title>. <source>EAI Endorsed Trans Energy Web</source>. <year>2018</year>;<fpage>162691</fpage>. doi:<pub-id pub-id-type="doi">10.4108/eai.13-7-2018.162691</pub-id>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Alhawi</surname> <given-names>OMK</given-names></string-name>, <string-name><surname>Baldwin</surname> <given-names>J</given-names></string-name>, <string-name><surname>Dehghantanha</surname> <given-names>A</given-names></string-name></person-group>. <chapter-title>Leveraging machine learning techniques for windows ransomware network traffic detection</chapter-title>. In: <source>Cyber threat intelligence</source>. <publisher-loc>Berlin/Heidelberg, Germany</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2018</year>. p. <fpage>93</fpage>&#x2013;<lpage>106</lpage>. doi: <pub-id pub-id-type="doi">10.1007/978-3-319-73951-9_5</pub-id>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Aljabri</surname> <given-names>M</given-names></string-name>, <string-name><surname>Alhaidari</surname> <given-names>F</given-names></string-name>, <string-name><surname>Albuainain</surname> <given-names>A</given-names></string-name>, <string-name><surname>Alrashidi</surname> <given-names>S</given-names></string-name>, <string-name><surname>Alansari</surname> <given-names>J</given-names></string-name>, <string-name><surname>Alqahtani</surname> <given-names>W</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Ransomware detection based on machine learning using memory features</article-title>. <source>Egypt Inform J</source>. <year>2024</year>;<volume>25</volume>(<issue>12</issue>):<fpage>100445</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.eij.2024.100445</pub-id>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Javan</surname> <given-names>NT</given-names></string-name>, <string-name><surname>Mohammadpour</surname> <given-names>M</given-names></string-name>, <string-name><surname>Mostafavi</surname> <given-names>S</given-names></string-name></person-group>. <article-title>Enhancing malicious code detection with boosted N-gram analysis and efficient feature selection</article-title>. <source>IEEE Access</source>. <year>2024</year>;<volume>12</volume>:<fpage>147400</fpage>&#x2013;<lpage>21</lpage>. doi:<pub-id pub-id-type="doi">10.1109/access.2024.3476164</pub-id>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Cimitile</surname> <given-names>A</given-names></string-name>, <string-name><surname>Mercaldo</surname> <given-names>F</given-names></string-name>, <string-name><surname>Nardone</surname> <given-names>V</given-names></string-name>, <string-name><surname>Santone</surname> <given-names>A</given-names></string-name>, <string-name><surname>Visaggio</surname> <given-names>CA</given-names></string-name></person-group>. <article-title>Talos: no more ransomware victims with formal methods</article-title>. <source>Int J Inf Secur</source>. <year>2018</year>;<volume>17</volume>(<issue>6</issue>):<fpage>719</fpage>&#x2013;<lpage>38</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s10207-017-0398-5</pub-id>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Akbar</surname> <given-names>F</given-names></string-name>, <string-name><surname>Hussain</surname> <given-names>M</given-names></string-name>, <string-name><surname>Mumtaz</surname> <given-names>R</given-names></string-name>, <string-name><surname>Riaz</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Wahab</surname> <given-names>AWA</given-names></string-name>, <string-name><surname>Jung</surname> <given-names>KH</given-names></string-name></person-group>. <article-title>Permissions-based detection of Android malware using machine learning</article-title>. <source>Symmetry</source>. <year>2022</year>;<volume>14</volume>(<issue>4</issue>):<fpage>718</fpage>. doi:<pub-id pub-id-type="doi">10.3390/sym14040718</pub-id>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Qadir</surname> <given-names>S</given-names></string-name>, <string-name><surname>Naeem</surname> <given-names>A</given-names></string-name>, <string-name><surname>Hussain</surname> <given-names>M</given-names></string-name>, <string-name><surname>Ghafoor</surname> <given-names>H</given-names></string-name>, <string-name><surname>Hassan Abdalla Hashim</surname> <given-names>A</given-names></string-name></person-group>. <article-title>Performance-oriented and sustainability-oriented design of an effective Android malware detector</article-title>. <source>IEEE Access</source>. <year>2024</year>;<volume>12</volume>(<issue>1</issue>):<fpage>159036</fpage>&#x2013;<lpage>55</lpage>. doi:<pub-id pub-id-type="doi">10.1109/access.2024.3486094</pub-id>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Kardile</surname> <given-names>AB</given-names></string-name></person-group>. <source>Crypto ransomware analysis and detection using process monitor [master&#x2019;s thesis]</source>. <publisher-loc>Arlington, TX, USA</publisher-loc>: <publisher-name>The University of Texas at Arlington</publisher-name>; <year>2017</year>.</mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gupta</surname> <given-names>R</given-names></string-name>, <string-name><surname>Sharma</surname> <given-names>K</given-names></string-name>, <string-name><surname>Garg</surname> <given-names>RK</given-names></string-name></person-group>. <article-title>Covalent bond based Android malware detection using permission and system call pairs</article-title>. <source>Comput Mater Contin</source>. <year>2024</year>;<volume>78</volume>(<issue>3</issue>):<fpage>4283</fpage>&#x2013;<lpage>301</lpage>. doi:<pub-id pub-id-type="doi">10.32604/cmc.2024.046890</pub-id>.</mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zakaria</surname> <given-names>WZA</given-names></string-name>, <string-name><surname>Abdollah</surname> <given-names>MF</given-names></string-name>, <string-name><surname>Mohd</surname> <given-names>O</given-names></string-name>, <string-name><surname>Yassin</surname> <given-names>SMWMSMM</given-names></string-name>, <string-name><surname>Ariffin</surname> <given-names>A</given-names></string-name></person-group>. <article-title>RENTAKA: a novel machine learning framework for crypto-ransomware pre-encryption detection</article-title>. <source>Int J Adv Comput Sci Appl</source>. <year>2022</year>;<volume>13</volume>(<issue>5</issue>):<fpage>130545</fpage>. doi:<pub-id pub-id-type="doi">10.14569/ijacsa.2022.0130545</pub-id>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Kok</surname> <given-names>SH</given-names></string-name>, <string-name><surname>Abdullah</surname> <given-names>A</given-names></string-name>, <string-name><surname>Jhanjhi</surname> <given-names>NZ</given-names></string-name></person-group>. <article-title>Early detection of crypto-ransomware using pre-encryption detection algorithm</article-title>. <source>J King Saud Univ Comput Inf Sci</source>. <year>2022</year>;<volume>34</volume>(<issue>5</issue>):<fpage>1984</fpage>&#x2013;<lpage>99</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.jksuci.2020.06.012</pub-id>.</mixed-citation></ref>
<ref id="ref-22"><label>[22]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Mohan Anand</surname> <given-names>P</given-names></string-name>, <string-name><surname>Sai Charan</surname> <given-names>PV</given-names></string-name>, <string-name><surname>Shukla</surname> <given-names>SK</given-names></string-name></person-group>. <article-title>A comprehensive API call analysis for detecting windows-based ransomware</article-title>. In: <conf-name>Proceedings of the 2022 IEEE International Conference on Cyber Security and Resilience (CSR); 2022 Jul 27&#x2013;29</conf-name>; <publisher-loc>Rhodes, Greece</publisher-loc>. doi:<pub-id pub-id-type="doi">10.1109/CSR54599.2022.9850320</pub-id>.</mixed-citation></ref>
<ref id="ref-23"><label>[23]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Sgandurra</surname> <given-names>D</given-names></string-name>, <string-name><surname>Mu&#x00F1;oz-Gonz&#x00E1;lez</surname> <given-names>L</given-names></string-name>, <string-name><surname>Mohsen</surname> <given-names>R</given-names></string-name>, <string-name><surname>Lupu</surname> <given-names>EC</given-names></string-name></person-group>. <article-title>Automated dynamic analysis of ransomware: benefits, limitations and use for detection</article-title>. <comment>arXiv:1609.03020. 2016</comment>. doi:<pub-id pub-id-type="doi">10.48550/arXiv.1609.03020</pub-id>.</mixed-citation></ref>
<ref id="ref-24"><label>[24]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Almousa</surname> <given-names>M</given-names></string-name>, <string-name><surname>Basavaraju</surname> <given-names>S</given-names></string-name>, <string-name><surname>Anwar</surname> <given-names>M</given-names></string-name></person-group>. <article-title>API-based ransomware detection using machine learning-based threat detection models</article-title>. In: <conf-name>Proceedings of the 2021 18th International Conference on Privacy, Security and Trust (PST); 2021 Dec 13&#x2013;15</conf-name>; <publisher-loc>Auckland, New Zealand</publisher-loc>. doi:<pub-id pub-id-type="doi">10.1109/pst52912.2021.9647816</pub-id>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Smith</surname> <given-names>D</given-names></string-name>, <string-name><surname>Khorsandroo</surname> <given-names>S</given-names></string-name>, <string-name><surname>Roy</surname> <given-names>K</given-names></string-name></person-group>. <article-title>Machine learning algorithms and frameworks in ransomware detection</article-title>. <source>IEEE Access</source>. <year>2022</year>;<volume>10</volume>:<fpage>117597</fpage>&#x2013;<lpage>610</lpage>. doi:<pub-id pub-id-type="doi">10.1109/access.2022.3218779</pub-id>.</mixed-citation></ref>
<ref id="ref-26"><label>[26]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhang</surname> <given-names>R</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Ransomware detection with a 2-tier machine learning approach using a novel clustering algorithm</article-title>. <source>Res Sq Forthcoming</source>. <year>2024</year>. doi:<pub-id pub-id-type="doi">10.21203/rs.3.rs-4567706/v1</pub-id>.</mixed-citation></ref>
<ref id="ref-27"><label>[27]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Berrueta</surname> <given-names>E</given-names></string-name>, <string-name><surname>Morato</surname> <given-names>D</given-names></string-name>, <string-name><surname>Maga&#x00F1;a</surname> <given-names>E</given-names></string-name>, <string-name><surname>Izal</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Crypto-ransomware detection using machine learning models in file-sharing network scenarios with encrypted traffic</article-title>. <source>Expert Syst Appl</source>. <year>2022</year>;<volume>209</volume>(<issue>6</issue>):<fpage>118299</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.eswa.2022.118299</pub-id>.</mixed-citation></ref>
<ref id="ref-28"><label>[28]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Homayoun</surname> <given-names>S</given-names></string-name>, <string-name><surname>Dehghantanha</surname> <given-names>A</given-names></string-name>, <string-name><surname>Ahmadzadeh</surname> <given-names>M</given-names></string-name>, <string-name><surname>Hashemi</surname> <given-names>S</given-names></string-name>, <string-name><surname>Khayami</surname> <given-names>R</given-names></string-name></person-group>. <article-title>Know abnormal, find evil: frequent pattern mining for ransomware threat hunting and intelligence</article-title>. <source>IEEE Trans Emerg Topics Comput</source>. <year>2020</year>;<volume>8</volume>(<issue>2</issue>):<fpage>341</fpage>&#x2013;<lpage>51</lpage>. doi:<pub-id pub-id-type="doi">10.1109/tetc.2017.2756908</pub-id>.</mixed-citation></ref>
<ref id="ref-29"><label>[29]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Herrera-Silva</surname> <given-names>JA</given-names></string-name>, <string-name><surname>Hern&#x00E1;ndez-&#x00C1;lvarez</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Dynamic feature dataset for ransomware detection using machine learning algorithms</article-title>. <source>Sensors</source>. <year>2023</year>;<volume>23</volume>(<issue>3</issue>):<fpage>1053</fpage>. doi:<pub-id pub-id-type="doi">10.3390/s23031053</pub-id>; <pub-id pub-id-type="pmid">36772092</pub-id></mixed-citation></ref>
<ref id="ref-30"><label>[30]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ahmad Azami</surname> <given-names>NI</given-names></string-name>, <string-name><surname>Yusoff</surname> <given-names>N</given-names></string-name>, <string-name><surname>Ku-Mahamud</surname> <given-names>KR</given-names></string-name></person-group>. <article-title>Fuzzy discretization technique for Bayesian flood disaster model</article-title>. <source>J Inf Commun Technol</source>. <year>2018</year>;<volume>17</volume>(<issue>2</issue>):<fpage>167</fpage>&#x2013;<lpage>89</lpage>. doi:<pub-id pub-id-type="doi">10.32890/jict2018.17.2.8249</pub-id>.</mixed-citation></ref>
<ref id="ref-31"><label>[31]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gowthaman</surname> <given-names>A</given-names></string-name>, <string-name><surname>Sumathi</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Performance study of enhanced SHA-256 algorithm</article-title>. <source>Int J Appl Eng Res</source>. <year>2015</year>;<volume>10</volume>(<issue>4</issue>):<fpage>10921</fpage>&#x2013;<lpage>32</lpage>.</mixed-citation></ref>
<ref id="ref-32"><label>[32]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Chew</surname> <given-names>CJW</given-names></string-name>, <string-name><surname>Kumar</surname> <given-names>V</given-names></string-name>, <string-name><surname>Patros</surname> <given-names>P</given-names></string-name>, <string-name><surname>Malik</surname> <given-names>R</given-names></string-name></person-group>. <article-title>Real-time system call-based ransomware detection</article-title>. <source>Int J Inf Secur</source>. <year>2024</year>;<volume>23</volume>(<issue>3</issue>):<fpage>1839</fpage>&#x2013;<lpage>58</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s10207-024-00819-x</pub-id>.</mixed-citation></ref>
<ref id="ref-33"><label>[33]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Anikolova</surname> <given-names>E</given-names></string-name>, <string-name><surname>Martins</surname> <given-names>S</given-names></string-name>, <string-name><surname>Rozental</surname> <given-names>D</given-names></string-name>, <string-name><surname>Fontana</surname> <given-names>J</given-names></string-name>, <string-name><surname>Maier</surname> <given-names>P</given-names></string-name></person-group>. <article-title>Ransomware detection through behavioral attack signatures evaluation: a novel machine learning framework for improved accuracy and robustness</article-title>; <year>2024</year>. doi:<pub-id pub-id-type="doi">10.36227/techrxiv.173092022.26611647</pub-id>.</mixed-citation></ref>
<ref id="ref-34"><label>[34]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Deng</surname> <given-names>X</given-names></string-name>, <string-name><surname>Cen</surname> <given-names>M</given-names></string-name>, <string-name><surname>Jiang</surname> <given-names>M</given-names></string-name>, <string-name><surname>Lu</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Ransomware early detection using deep reinforcement learning on portable executable header</article-title>. <source>Clust Comput</source>. <year>2024</year>;<volume>27</volume>(<issue>2</issue>):<fpage>1867</fpage>&#x2013;<lpage>81</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s10586-023-04043-5</pub-id>.</mixed-citation></ref>
</ref-list>
</back></article>