Abstract
Increased usage of websites serves information gathering over the Internet, which exponentially increases the rate of download. Almost anything of interest, anyone can undoubtedly search and download from the web, which also leads to download the malicious code unknowingly, i.e., malwares. Everything that corrupts the PC or system is referred to as a virus without knowing what it accomplishes but comes under the bigger umbrella of malware. This chapter systematically introduces malware, its types, needs, and prerequisites for malware analysis. Malware is a fast-growing threat to the modern computing world, and there does not exist an ideal solution to tackle it. Its growth is the exponential increase of Internet uses with various services such as social networks and cloud storage. Malware rapidly multiplies itself over the Internet, and sometimes it leads to a major attack, for instance, a botnet attack and others. Antiviruses are the protection software from malware and act as a line of defense. However, this line of defense is not that effective as many of them are still using a signature-based approach, and malware developers have knowledge about this. They modify their malware accordingly, and hence, malware gets a sneaky entrance into the computers. Therefore, there is a constant need for a behavior-based or heuristic-based approach to address different malware families. Machine learning and reverse engineering are the best techniques to fight malware, and many researchers are persistently working on many problems of malware attacks. Therefore, this chapter highlights all the available existing approaches for malware detection and its analysis like static and dynamic analysis to get to know the functioning of malware to remove it from attacked personal computers (PCs) or systems.