Safe Exam Browser is a webbrowser-environment to carry out online exams safely. The software changes any computer into a secure workstation. It regulates access to resources like system functions, other websites and applications and prevents unauthorised resources being used during an exam.

SEB runs on a local computer and it is connected via the internet to a learning management system (LMS). Generally SEB works with any web based LMS and other kind of web based exam systems. Currently the two wide spread learning management systems Moodle and ILIAS offer a quiz mode specifically compatible with SEB.

SEB consists of a kiosk application and a browser part, which are running on a examination computer. The kiosk application locks down the examination computer, the browser part comunicates via the internet (or a LAN) with the quiz module of a LMS running on a server.

Illustration of SEB architecture

Schematic illustration of a online exam with Safe Exam Browser and a LMS, for example ILIAS or Moodle. In addition a third party application can be allowed to run at the same time, for example Excel or R

The illustration above shows the two internal components which SEB consists of, the kiosk application and the browser part. The third part of a SEB exam environment is build into the supported LMS. Optionally one or several third party application(s) can be allowed to run during an exam and are started by the SEB kiosk application.

  1. The kiosk application locks down the computer and starts the SEB browser plus optional third party applications. Since this application has to control miscellaneous OS functions, it is designed very system specific.
  2. The SEB browser connects with the preset URL of the LMS exam page and doesn't show any navigation elements like address bar, search engine field etc. The Windows version of SEB uses the Mozilla Gecko browser engine, either in the form of Portable Firefox or XULRunner. SEB for Mac OS X uses the WebKit browser engine.
  3. The learning management systems contain so-called quiz modules, which are used for onlline exams. SEB relies on extensions/skins to the quiz modules in Moodle and ILIAS for safe exams. With these extensions the user interface of the LMS is reduced to just contain navigation for the exam (no links to other pages outside the quiz) and no other undesirable features like messaging. An exam can also be configured to run only with SEB, not another browser. These SEB LMS extensions, which originally had to be installed separately to achive this connectivity with SEB, have been integrated into the LMS in recent versions of ILIAS and Moodle.

Safe Exam Browser for Windows consists of the SEB kiosk application, which opens an own Windows desktop and catches system commands like keyboard shortcuts (for example ALT+F4) and right mouse-button clicks. The second part is XULRunner, a runtime package from the Mozilla Foundation (Firefox version 3 and above is also based on XULRunner). The SEB browser part running on XULRunner connects to the LMS and it doesn't contain navigation and status bars.

In contrast to the Windows version, Safe Exam Browser for Mac OS X is a monolithic application using a web browser framework instead of a browser runtime. It's using the WebKit engine, on which Safari and some new open source browsers like Google Chrome are based. SEB for macOS connects to the Learning Management Systems in the same way as the Windows version.

Safe Exam Browser enables secure exams on unmanaged computers like students' own laptops as well as in managed environments on both platforms Windows and macOS. Starting version 2.0, SEB offers an individual configuration per exam, which is protected by a strong encryption against manipulation. Thanks to an elaborate authentication feature, the exam system can verify that a particular, unaltered SEB version and the correct exam settings are used for an examination. This facilitates secure exams especially on unmanaged computers like students' own laptops.

Safe Exam Browser 2.0 and later is a unified version which brings almost the same features, exam system interface, compatible configuration files and a very similar user interface onto both platforms, while still taking in account operating system differences and unique platform specific features. Besides the desktop Windows and macOS versions, we are working on an iOS (running on iPad/iPhone/iPod Touch) version with basically the same set of features, which will also maintain compatibility with the unified SEB configuration file format.

  • Fullscreen mode or multiple browser windows which can be resized (without any navigation elements)
  • VM detector: SEB detects whether it is running on a virtual machine and can refuse to start up
  • Build in connection to Moodle and ILIAS, can be used with basically any web-based examination system.
  • Disabled actions (default):
    • Shortcuts/Keys as Win, CTRL+ALT+DEL (Windows XP), ALT+F4, F1, CTRL+P etc.
    • Right-click
    • Switch to other applications (unless permitted)
    • Process monitoring and killing of not allowed processes starting up while SEB is running
    • Menu options on Windows Security Screen on Windows 7 removed while SEB is running
    • VMware shade when using VMware Horizon View Client for VDI
    • Display and system idle sleep
    • Print Screen
  • Separate configuration tool with graphical user interface.
  • Third party applications can be allowed to run together with SEB, it can be switched between them with an App Chooser window
  • Preferences window for easy set up, can be protected with an administrator password.
  • Disabled actions:
    • Quit SEB (can be disabled or protected by a quit password)
    • macOS Dock and Menu bar
    • Switch to other applications with process switcher (cmd+Tab/cmd+Shift+Tab)
    • Force Quit window (cmd+opt+Esc)
    • Normal reboot (ctrl+cmd+eject) and shutdown (ctrl+opt+cmd+eject)
    • Hiding the application or minimizing the window, printing and Exposé
    • Right-click (context menu)
    • Optionally hyperlinks requesting to be opened in a new window and links embedded in JavaScript or plug-ins directing to another server than the one of the current host
    • Display and system idle sleep
    • Context menu options in Flash fullscreen video players
    • macOS screen capture
  • Third party applications can be allowed to run together with SEB (in an accordingly configured macOS user account)
  • Operating System:
    • Microsoft Windows 7
    • Windows 8/8.1
    • Window 10
  • License: Mozilla Public License (MPL)
  • Browser Engine: XULRunner (Mozilla Gecko, which is used in Firefox)
  • Programming Languages and Frameworks:
    • C# (.NET)
    • JavaScript
    • Mozilla XULRunner
  • Operating System:
    • macOS 10.12 Sierra
    • OS X 10.11 El Capitan
    • OS X 10.10 Yosemite
    • OS X 10.9 Mavericks
    • OS X 10.8 Mountain Lion (TLS/SSL/CA certificate embedding into SEB configuration files and certificate pinning not supported)
    • OS X 10.7 Lion (only supported as client, preferences window not available. TLS/SSL/CA certificate embedding into SEB configuration files and certificate pinning not supported)
    • Mac OS X 10.6 Snow Leopard (only supported up to SEB 1.5.2)
  • License: Mozilla Public License (MPL)
  • Browser Engine: WebKit (as Safari). SEB uses the WebKit version installed on the system (version depends on macOS updates).
  • Programming Language: Objective-C (Cocoa)

Important parts of this project have been carried out as part of the program "AAA/SWITCH –
e-Infrastructure for e-Science
" lead by
SWITCH, the Swiss National Research and Education Network and the cooperative project "Learning Infrastructure" (part of the CRUS program "Information scientifique: accès, traitement et sauvegarde") coordinated by SWITCH, and was
supported by funds from the ETH Board.