Malcolm is a powerful network traffic analysis tool suite designed with the following goals in mind:
- Easy to use – Malcolm accepts network traffic data in the form of full packet capture (PCAP) files and Zeek (formerly Bro) logs. These artifacts can be uploaded via a simple browser-based interface or captured live and forwarded to Malcolm using lightweight forwarders. In either case, the data is automatically normalized, enriched, and correlated for analysis.
- Powerful traffic analysis – Visibility into network communications is provided through two intuitive interfaces: Kibana, a flexible data visualization plugin with dozens of prebuilt dashboards providing an at-a-glance overview of network protocols; and Moloch, a powerful tool for finding and identifying the network sessions comprising suspected security incidents.
- Streamlined deployment – Malcolm operates as a cluster of Docker containers, isolated sandboxes which each serve a dedicated function of the system. This Docker-based deployment model, combined with a few simple scripts for setup and run-time management, makes Malcolm suitable to be deployed quickly across a variety of platforms and use cases, whether it be for long-term deployment on a Linux server in a security operations center (SOC) or for incident response on a Macbook for an individual engagement.
- Secure communications – All communications with Malcolm, both from the user interface and from remote log forwarders, are secured with industry-standard encryption protocols.
- Permissive license – Malcolm is comprised of several widely used open-source tools, making it an attractive alternative to security solutions requiring paid licenses.
- Expanding control systems visibility – While Malcolm is great for general-purpose network traffic analysis, its creators see a particular need in the community for tools providing insight into protocols used in industrial control systems (ICS) environments. Ongoing Malcolm development will aim to provide additional parsers for common ICS protocols.
Although all of the open-source tools which make up Malcolm are already available and in general use, it provides a framework of interconnectivity which makes it greater than the sum of its parts. And while there are many other network traffic analysis solutions out there, ranging from complete Linux distributions like Security Onion to licensed products like Splunk Enterprise Security, the creators of Malcolm feel its easy deployment and robust combination of tools fill a void in the network security space that will make network traffic analysis accessible to many in both the public and private sectors as well as individual enthusiasts.
In short, Malcolm provides an easily deployable network analysis tool suite for full packet capture artifacts (PCAP files) and Zeek logs. While Internet access is required to build it, it is not required at runtime.
- New features
- “Best Guess” Fingerprinting for ICS Protocols – In an effort to help identify more ICS traffic, Malcolm can use “buest guess” method based on transport protocol (e.g., TCP or UDP) and port(s) to categorize potential traffic communicating over some ICS protocols without full parser support. This feature involves a mapping table and a Zeek script to look up the transport protocol and destination and/or source port to make a best guess at whether a connection belongs to one of those protocols. These potential ICS communications are categorized by vendor where possible. The list of ICS protocols’ ports was adapted from various public sources, including, but not limited to, Grassmarlin‘s fingerprints and ITI/ICS-Security-Tools‘ list of Control Systems Ports.
- Improvements and bug fixes
- Allow configuring the number of concurrent requests for ClamAV scanning, Yara and Capa via environment variables (
- Zeek plugins to detect CVE-2021-31166 and pingback vulnerabilities
- Move creation of custom fields and views to Arkime’s config.ini
- LDAP bind credentials world readable in docker (#47 and cisagov#171)
- Deny access to uploaded files (cisagov#170)
- Version bumps
- Yara to 4.1.1
- Zeek to 4.0.3
- Spicy to 1.1.0
- Alpine to 3.14
- NGINX to 1.20.1
- Linux kernel to 5.10 (for ISO installs)
- urllib3 to 1.26.5 (cisagov#169)
Copyright 2019 Battelle Energy Alliance, LLC