Skip to content

Latest commit

 

History

History
76 lines (47 loc) · 3.96 KB

File metadata and controls

76 lines (47 loc) · 3.96 KB

Project Documentation: Static Malware Analysis

This document provides a detailed overview of the Static Malware Analysis project, summarizing its objectives, scope, and technical background as outlined in the original academic report.


1. Introduction & System Objective

The primary objective of this project was to develop a Python-based tool to automate the static analysis of suspicious files, such as executables (.exe), PDFs, and documents. The system is designed to perform a detailed analysis of a file's structure and contents without executing it, generating a comprehensive report to help determine if the file is malicious.

The Problem Definition

Malware infections pose a significant threat to both individuals and organizations. A successful infection can lead to data theft, file deletion, system compromise, and severe financial or reputational damage. Therefore, it is crucial to have methods for identifying these threats before they can cause harm. This project addresses that need by providing a safe, initial step in the analysis process.


2. Scope of the System

The analysis script was designed with a clear scope to identify key indicators of malicious behavior. Its capabilities include:

  • File Type Verification: Checking and verifying the true file type.
  • String & Keyword Analysis: Extracting all strings and using regular expressions to search for known malicious signatures, IP addresses, URLs, or other keywords.
  • System Interaction Analysis: Identifying strings that suggest the file may attempt to access or modify the Windows Registry or make suspicious system calls.
  • Cryptography Detection: Checking for the presence of common cryptography algorithms, which could indicate data encryption or obfuscation techniques.
  • Network Activity Detection: Searching for strings that indicate the file might try to establish unknown network connections.

3. System Design & Diagrams

The following diagrams illustrate the design and architecture of the system from different perspectives.

Activity Diagram

Activity Diagram

Sequence Diagram

Sequence Diagram

Component Diagram

Component Diagram


4. Sample Usage & Output

Below are screenshots demonstrating the tool in action, showing the input process and sample output from the analysis.

Input Screens

Input Screen 1 Input Screen 2 Input Screen 3


5. Test Cases

The system was validated against a set of core test cases to ensure its functionality:

Test Case ID Description Expected Result Status
MH01 Analyze a known malicious file. A report identifying malicious indicators is generated. Pass
MH02 Analyze a known non-malicious (benign) file. A report showing no malicious indicators is generated. Pass
MH03 Provide a path to a non-existent file. An error message: "File doesn’t exist." Pass
MH04 Run the script with no input file. The program's help manual is displayed. Pass

6. Future Enhancements

While the project successfully met its objectives, there is significant potential for future enhancements:

  • Machine Learning Integration: Implement a supervised machine learning model. By training the system on a dataset of malicious and benign files, it could learn to identify new malware signatures automatically.
  • Malware Classification: Enhance the system to classify malware into families (e.g., ransomware, trojan, spyware) and provide a more detailed report on the specific harm it could cause.

← Back to Main Project Page