OWASP Web Malware Scanner Project

=Main=



{| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |-
 * valign="top" style="border-right: 1px dotted gray;padding-right:25px;" |

OWASP Web Malware Scanner Tool Project
The OWASP Web Malware Scanner is a malware scanner for web applications. The goal is to be able to scan a web application folder for any malware using a community driven signature database. The Web Malware Scanner is run locally to the web application folder much like an anti-virus. This project was created because the ClamAV project and other similar open source tools were unable to detect some infected files on some of our production servers and we needed a solution to scan our web applications with better results.

The deliverable is a python application.

Description
Web Malware Scanner is a simple malware scanner for web applications. It can be used to identify compromised Wordpress, Joomla and other popular web application installations.

The Web Malware Scanner must be run locally to the web application installation folder. It will scan each files and compare them to the Web Malware Scanner's signature database. Each file is scanned for any known malware MD5 checksum and also for any malware patterns using regular expressions. Finally, the scan will look for insecure permissions for every files and folders.

The Web Malware Scanner Project uses regular expressions to search files for malware signatures as opposed to the custom ClamAV signature database wildcard syntax, which is somewhat more limited.

The ClamAV custom wildcard syntax only includes the following wildcards: ?? Matches any byte. * Matches any number of bytes (including 0 byte). {n} Matches n bytes. {-n} Matches n bytes or less. {n-} Matches at least n bytes. {m-n} Matches between m and n bytes. (0a|1b) Matches 0a or 1b.

The Web Malware Scanner project uses standard regular expressions for a much wider range of matching patterns.

The default signature database is taken in parts from ClamAV's signature database, SaneSecurity's signature database and other sources.

The goal of the OWASP Web Malware Scanner Project is to have a community driven signature database. You are more than welcome to contribute to this project by sending us new malware signatures.

Licensing
The Web Malware Scanner Project is released under the BSD 4-clause "Original" or "Old" License.


 * valign="top" style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |

Project Resources
https://github.com/maxlabelle/WebMalwareScanner

Source Code

Documentation

Issue Tracker

Project Leader
Maxime Labelle ( maxime.labelle@owasp.org )

Classifications

 * valign="top" style="padding-left:25px;width:200px;" |

News and Events

 * [04 Mar 2016] The Web Malware Scanner is now an official OWASP Project


 * }

=FAQs=

How can I participate in your project?
All you have to do is make the Project Leader's aware of your available time to contribute to the project. It is also important to let the Leader's know how you would like to contribute and pitch in to help the project meet it's goals and milestones. There are many different ways you can contribute to an OWASP Project, but communication with the leads is key.

= Acknowledgements =

Contributors
The first contributors to the project were:


 * Maxime Labelle who created the OWASP Web Malware Scanner Project
 * SaneSecurity who provided malware signatures

= Road Map and Getting Involved =

Roadmap
The base application is already completed. The next step is to populate the signature database and optimize the current codebase.

As of March, 2016, the highest priorities for the next 6 months are:
 * Populate the signature database
 * Optimize the codebase
 * Incorporate new ideas and security assessments
 * Add scan for compressed files

Getting Involved
Involvement in the development and promotion of Web Malware Scanner Project is actively encouraged! You do not have to be a security expert or a programmer to contribute. Some of the ways you can help are as follows:

Coding
We could implement some of the later items on the roadmap sooner if someone wanted to help out with unit or automated regression tests

Testing
Do you have a flair for finding bugs in software? We want to product a high quality product, so any help with Quality Assurance would be greatly appreciated. Let us know if you can offer your help.

Feedback
Please send us feedback about:  What do like? What don't you like? What features would you like to see prioritized on the roadmap? Do you think we forgot something important? Let us know!  

=Minimum Viable Product=

We feel that the signature database is the most important aspect of this project. If the database is updated often with new signatures, this project will remain useful.