What’s hiding in your code?
Discover bad coding practices, bugs, weaknesses, and vulnerabilities by scanning your own software or software that you’d like to use in the SWAMP. There are two ways to use the SWAMP: the ready-to-use cloud computing platform at mir-swamp.org or by downloading the SWAMP-in-a-Box (SiB) open-source distribution. SWAMP also has a Java command line interface, a GitHub webhook, and plugins for Java, Eclipse, and Git/SVN.
Use the SWAMP in 3 simple steps:
1) Upload a package.
2) Run assessments.
3) View results.
SWAMP-in-a-Box version 1.34 is now available! The latest files can be found on GitHub or obtained from the SWAMP-in-a-Box download server.
Noteworthy changes include:
- SWAMP-in-a-Box now supports the upload and assessment of .NET packages that can be built using msbuild on Linux. SWAMP automatically reviews Solution and .NET project files and determines which can be built using a framework that does not require Windows. Users can then select which of those .NET projects to assess. Python 3.4 is now installed as an OS dependency for SWAMP-in-a-Box; this is required for the analysis of uploaded .NET packages to determine which .NET projects can be assessed on a Linux platform.
- We added three tools for the assessment of .NET packages on a Linux platform: Code Cracker v1.1.0, devskim 0.1.10, and Security Code Scan 2.7.1. These tools are automatically deployed on SWAMP-in-a-Box.
- GitHub Webhooks can now be configured to update SWAMP packages. When the GitHub Webhook is triggered, a new package version will be added to an existing SWAMP package. Package parameters are copied from the previous package version and used with a new archive of package code cloned from GitHub. Users can edit package information to get the Payload URL and set the Secret Token needed to configure a GitHub Webhook to the SWAMP.
- A new schedule is now available for use in all projects. This schedule, “On Push,” runs assessments whenever a new push to a GitHub repository triggers a GitHub Webhook to generate a new Package Version in the SWAMP. This schedule works with an assessment for the “latest” version of a package that is configured to update based on a GitHub Webhook trigger.
- Assessments of Android Java Source and Android .APK packages can be enabled in SWAMP-in-a-Box. To do so, download and install as an add-on the Android Ubuntu platform image. (It is quite large.) When that platform is added, the Android Java Source and Android .APK package types are enabled. Android specific tools are installed with SWAMP-in-a-Box 1.34, but they cannot be used for assessments until the Android Ubuntu platform is added.
- SWAMP packages can now be generated via an External URL that points to a downloadable archive.
- For users who are in multiple projects, the associated project is now displayed for records on the Package, Assessments, Assessment Results, and Scheduled Assessment Runs pages. Additionally, users can specifically set the project when adding new assessments.
- HTCondor is now configured to preempt an assessment or metric run to create a slot for a Code Dx viewer run when all slots are in use.
- An updated version of the Ubuntu Linux version 16.04 platform is now available and will be automatically installed with SWAMP-in-a-Box 1.34.
- The platform image files for all SWAMP platforms have been updated to provide a workaround for a bug in guestfish version 1.38 (https://bugzilla.redhat.com/show_bug.cgi?id=1661038). SWAMP 1.34 is required to run VMs with the new platforms, which have a date in the filename of 2019 or later. SWAMP 1.34 is compatible with pre-2019 versions of platforms; however, pre-2019 platforms will not currently work with guestfish 1.38 (which is distributed with the latest CentOS 7). If you are running a SWAMP-in-a-Box in CentOS 7, you should upgrade to SWAMP-in-a-Box 1.34 and upgrade any additional platforms you have installed as add-ons.
- There is now a script available to restore a database backup (made as part of the SWAMP-in-a-Box upgrade process). Refer to the SWAMP-in-a-Box Administrator Guide for details.
- You can now configure SWAMP-in-a-Box to display a custom welcome message on the home page (not signed-in). Refer to the SWAMP-in-a-Box Administrator Guide for details.
- We updated the SWAMP configuration for all available versions of the Flake8 assessment tool. This allows Flake8 to be configured in a SWAMP-in-a-Box environment. Specifically, parameters can be set in the services.conf file for the SWAMP to enable checks, disable checks, and set the max-line-length for line length checks.
- We changed the way the web front-end for SWAMP-in-a-Box identifies the corresponding web server. Specifically, the web server configured in /var/www/html/config/config.json is now a relative path instead of an absolute URL. This change affects the way the Java CLI and related SWAMP plugins connect to a SWAMP-in-a-Box API. SWAMP plugins have been updated to accommodate this change. SWAMP-in-a-Box 1.34 will only work with the following versions: Java CLI version 1.5.2 or higher; SWAMP Eclipse Plugin version 1.1.2 or higher; SWAMP Jenkins Plugin version 1.2.1 or higher.
- The SWAMP discontinued support for the Ubuntu 10.04 assessment platform. If this platform was installed as an add-on, it will be removed when upgrading to SWAMP-in-a-Box 1.34.
- General enhancements and bug fixes.
Let us know if you have any questions at firstname.lastname@example.org.