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)

Safe Exam Browser © 2010-2017 ETH Zurich, Educational Development and Technology (LET), based on the original idea of Safe Exam Browser by Stefan Schneider, University of Giessen
Project concept: Dr. Thomas Piendl, Daniel R. Schneider, Dr. Dirk Bauer, Kai Reuter, Tobias Halbherr, Karsten Burger, Marco Lehre, Brigitte Schmucki, Oliver Rahs.

Safe Exam Browser is released as freeware. The source code is subject to the Mozilla Public License Version 1.1 (the "License"); you may only use these files in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ .

SafeExamBrowser (SEB) doesn't send any personal information to any centralized server and is not connected to any web analytics, user tracking or clickstream analytics service. Some data which can be considered to be personal (computer host name, computer account user name, some URLs of opened web pages etc.) can be contained in the log files SEB saves on the system it is running on (when used with default settings). Log files are not transmitted to any server by SEB, you can manually collect those log files for debugging purposes. Logging can be switched off in SEB's settings (Win/Mac). SEB is not collecting other user data, SEB is basically only displaying web pages as any other web browser and therefore doesn't "know" details about exam users. As SEB can be used with various web-based examination systems, you have to make sure that those systems protect the examinees' data.

There is no registration whatsoever required when downloading, installing or using SafeExamBrowser. SEB is not connecting to any cloud service or server, besides the web server which you enter as "Start URL" in your settings. When started with default configuration, SEB displays this page, which is hosted as a public GitHub repository (GitHub Pages). You can find details about web analytics used by GitHub in their privacy statement.

As SEB is open source, anybody can review the code to verify that SEB really doesn't connect to any centralized servers and is not sending any collected user data.

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.