Typically after a malware developer has created his malicious payload (for example using the steps mentioned in the post about generating a RAT with MSFVenom) they test whether that malicious program can be detected by antivirus software.
Enter Virustotal. This is a website that can be used for both positive and negative means (as is the case with all forms of education). With Virustotal, bad actors can use it to test their payloads to see if it can be detected by antivirus software that is the most popular on the market. Regular actors/uses can use it to check if a tool or software they want to run on their computer is malicious or not.
How to do this is also illustrated in the video below. In most cases malware analysts use it for static analysis of potentially malicious programs.
So typically there are a number of ways that antivirus software works but the one method that bad actors try to combat in this scenario is signature based analysis. By this, a hash is generated for each and every program that is scanned by antivirus software and then blacklists are generated from this. The blacklist is comprised of programs that are seen to be malicious. This hash is the signature of the malicious program.
So whenever we upload a program to Virustotal, the signature is generated and compared to the database of blacklisted malicious programs from a multitude of antivirus software.
Packing/Executable Compression/ Obfuscation is one way of avoiding this. In the most lay of layman terms, its basically sticking the malware in a shell and then passing that shell to the antivirus. The antivirus generates a hash of the shell and this is nothing like the signature of the malware contained within the shell and in most cases, a false-negative is the result. There are open-source packers like UPX and then there are others that are proprietary.
This demo shows how to pack and unpack a program using UPX.
This video tutorial is for educational purposes only.
Comments
Post a Comment