This article will serve to explain the major changes to Möbius with the 2.5 release. For a detailed list of changes, please review the Release Notes.
The Möbius tool now uses an online wiki to provide the official documentation. This website allows us and members of the Möbius community to easily update documentation based on feedback from users. We hope this site will also serve as another means to connect users in our community to share the work they have done or are doing with Möbius.
To add or edit pages on the Möbius wiki, you must first log in using the link in the upper right. You should use the same authentication details you use on the main Möbius website.
ADVISE Atomic Formalism
Probably the largest addition to Möbius in this release is the new atomic modeling formalism, ADversary VIew Security Evaluation (ADVISE). The ADVISE formalism seeks to model the behavior of an adversary attacking a system and the effect of the adversaries action. ADVISE has been in development for over four years and has had several papers published describing its theory and implementation. For a detailed understanding of ADVISE, please read LeMay's dissertation.
The Möbius Shell is a new command-line interface to the Möbius tool. In addition to allowing people to run Möbius in a non-graphical environment, the Möbius Shell enables the scripting of various Möbius operations such as defining models and running solvers.
To start the Möbius Shell, execute the mobius-shell.sh script in the install root of Möbius. For example, on Mac OSX:
Running mobius-shell.sh with the -c argument, the shell will launch in an interactive mode. This mode can be used with a unix pipe to execute a series of commands in a text file. Alternatively, if you run mobius-shell.sh with the -s argument and a path to a text file, the file will be read and executed as a Möbius script.
Command syntax can be seen using the built-in help system by simply executing the help command. Or, you can see the syntax on the Möbius Shell page.
Möbius 2.5 added a new license management feature to easily deal with fetching and storing licenses. No longer do you need to manually download licenses and place them in the Möbius package or install path. There is now a nice interface to import license files as needed and even fetch them directly from our website.
This feature will likely be the first new thing that users notice because the first time you start Möbius, it will inform you that you have no valid licenses installed. You should enter your Möbius website username and password to have the tool fetch your licenses directly from your account. Alternatively, you can install licenses from a local file if you are unable to connect to the Möbius website. We are aware that this is especially an issue for people running machines on a network proxy. You can find your licenses in you My Account page on the Möbius website.
Once you have added a valid license, you shouldn't need to deal with the license manager until you need to add a new license in the future.
Project Manager Redesign
A major change for past Möbius users is the redesigned Project interface. Instead of individual windows for each open project, all projects are now displayed in the Projects view on the Project Manager window. To the left of the Console view, you will find a unified tree containing open projects, closed projects, and archives. Double clicking a closed project will open it. Double clicking an archive will unarchive and open the project. By right clicking on the archives, projects, and components, a variety of operations that should feel familiar are available. One other nice thing is that Möbius now saves your current working state. What this means is that any projects you left open in your previous session will reopen the next time you launch Möbius.
Möbius Preferences and Project Preferences
We have continued to build on the Möbius application level preferences, accessible from Project -> Preferences on Windows and Linux or Möbius -> Preferences on Mac OS X. The license manager has been added.
Also, there are now properties defined for individual projects. By right clicking an open project in the Projects view and selecting the Properties item, you can see various project properties. Included in this is a list of user-defined headers, user-defined libraries, and global variables. Note: We will eventually be transitioning all Atomic, Composed, and Reward models to use the global variables defined in the project properties. However, for the 2.5 release, only ADVISE Atomic Models use these global variables.