The increase in cyber-attacks has also started to threaten the use of internet and information technologies. This situation emphasizes the importance of detecting malicious software that is responsible for cyber-attacks. Nowadays, there are studies on the development of machine learning methods for malicious software detection. Malicious software detectors are the primary tools in defense against malicious software. The quality of such a detector is determined by the techniques it uses. Malware analysis methods such as machine learning, deep learning, and static and dynamic analysis are among these techniques. This study presents malware analysis and classification techniques. For malware detection, well-known algorithms for machine learning including such K-Nearest Neighbors, Naive Bayes, Decision Trees, and Random Forest were used. The research shows that the use of Random Forest classification technique produces the best accuracy with 97.75% classification, while Naive Bayes produces the lowest accuracy of 53%.