39
as inefficient performance on resource-limited devices, non-modularity,
inability to integrate static and dynamic factors, and poor real-time
performance. It guides the construction of a new structure that optimizes
detection speed, accuracy, and feasibility of use cases with precision by
integrating traditional ML methods with contemporary DL methods.
Static analysis, dynamic analysis, and hybrid analysis are the three
broad categories to which methods of malware detection belong. Each
technique is strong as well as weak. Static analysis examines the source
code or the compiled binary of an application without running the
application. It checks manifest attributes, opcode sequences, intent filters,
authorization declarations, and API call patterns. This approach is best
suited for pre-installation testing because it is resource-light
computationally and real-time scan friendly. But when compared against
obfuscation, polymorphism, encryption, or repackaging of code, all
techniques usually used by advanced malware in an attempt to avoid
detection, its performance decreases. Also, because static approaches do
not have contextual knowledge, they are prone to delivering high false
positives[63].
Dynamic analysis monitors the program's behavior as it runs,
generally in a sandbox or an emulation environment, in a bid to
circumvent static analysis limitations. System calls, file I/O, network
traffic, Inter-Process Communication (IPC), CPU and memory
consumption, and sensor input are some of the runtime parameters
monitored by it. This method is especially good at identifying behavior-
concealing malware, conditionally launched malware, or delayed
malware. More accurate information regarding malicious activity, such