Navigation and service

Open-source software and pre-release versions of operating systems

Questions and answers about software security

What is open-source software (OSS)?

Open-source software differs from manufacturer-specific (proprietary) software because the source code - the equivalent of the construction plan if you were building a house - is freely available. This generally means that the user can modify the program at will, pass it on to others and publish any identified vulnerabilities or errors completely independently of its authors.

As the source code is freely available to anyone, this type of software is referred to as open-source software. Alternatively, the term free software may be used; this is a reference to the user's freedom to use, modify and pass on the program. By comparison, users cannot check or modify proprietary programs in any way; in fact, they cannot even read them or learn how they work.

When is software considered to be open-source software?

There are a number of criteria that a piece of software has to meet before it can be considered open-source software.

  • The program must be available to use without restrictions.
  • Users must be allowed to study how the program works and to modify it to suit their own needs. To facilitate this, the source code of the software must be available in a format that is legible and comprehensible for other people.
  • Copies of the program may be passed on to others for their own use.
  • Users may improve the program and share these improvements with others.

Why does open-source software exist?

The philosophy behind open-source software goes back to the principle of freedom to exchange knowledge and thoughts. Just like ideas, software can be made freely available to everyone without losses. If software is passed on to others, it develops in a kind of evolutionary process.

An example:
Imagine you need a piece of software that is not available on the market. You decide to develop and test the software you need yourself, and you do all the work connected with this undertaking. But you wouldn't actually mind if other people used the program too. In fact, you would even benefit from the experience and involvement of other users. This is all the motivation you need to get started on your software project and publish it as an open-source project as soon as possible. You make your program available for use by others and in return you benefit from the additional capacity and expertise that the other developers and users bring to the table. It doesn't matter whether just a small number of users or all of the users contribute to the further development of the program.

Is open-source software as safe as proprietary offerings?

Yes. Many programmers all over the world - the "developer community" - can all see the source code of the software. They can quickly identify potential problems and rectify them immediately. Many heads are better than one! The developers usually know one another by name. None of them want the rest of the community to think that they programmed damaging software.

With open-source software, developers also have the option of publishing warnings online if vulnerabilities are identified. This creates a kind of early warning system that enables users to take steps to keep their systems secure.

Another security consideration is that open-source software has, up to now, rarely been affected by viruses. Of course, this is partly because it is not as widely used as proprietary software, but also because the open-source software community has traditionally placed a high value on secure programming and security functions.

Security tip:

When using open-source software, follow the same rules as for proprietary software: don't download files from the internet onto your hard drive. Providers generally offer ways for you to verify that the program is genuine. Details can be found in the installation instructions. Only after this check has been completed successfully should the software be installed. It is easier - and safer, if you're not an experienced user - to download the software from the relevant distribution repository where possible (e.g. Ubuntu GNU/Linux). These distribution systems use and automatically verify checksums and signatures. In Ubuntu, you can access the repository directly via the "Software Centre" integrated into the operating system interface.

Who is responsible for dealing with any problems with open-source software?

You might now be thinking "well, that all sounds great - but who do I go to if I have a problem with a piece of free software?". Does anyone feel a sense of responsibility if the entire community is involved in development? Don't worry: Studies have shown that the support provided for open-source software is often better than that offered for manufacturer-specific programs. Users can access official support when they purchase a software package from an open-source distributor (e.g. Ubuntu, SuSE/Novell, Mandrake etc.) via a retailer. Experts can resolve even complex problems quickly with the help of the community. With proprietary software, the user first has to contact the manufacturer's development team.

Examples of open-source software

These days, open-source software is a recognised alternative to proprietary offerings. The European Union and many other public bodies are making significant efforts to promote the use of open-source software. Large companies like Google, IBM, Hewlett Packard and Intel also promote open-source software and development. Even prominent manufacturers of proprietary software - like Adobe, Apple, Microsoft, Oracle and SAP - have various products that involve the open-source movement or offer their products for GNU/Linux operating systems.

Because of these developments, many programs are now offered as open-source software. In addition to tools for program development and the professional management of servers and networks, users can access a whole host of applications for everyday use in businesses or other applications.

Some examples:

  • GNU/Linux is a very powerful operating system for various platforms, and is a prime example of a successful open-source project. The core of the system was created by 21-year-old Linus Torvalds back in 1991. Since then, it has been developed further by many other developers from all over the world. The German Parliament is just one of the prominent organisations using GNU/Linux. It uses GNU/Linux and other open-source software to manage its servers.
  • LibreOffice.org is a free office program that runs on GNU/Linux and Microsoft operating systems, as well as on MacOS X and other operating systems. The program includes all of the essential functions such as word processing, spreadsheets and presentation programs. The interface is similar to other office programs and it can be used to edit a wide range of file formats, including the proprietary Microsoft Word format.
  • The internet browsers Firefox and Chrome are also available for various operating systems. The source code for Firefox originally came from Netscape. Chrome has the OSS component WebKit - which is also used in the proprietary browser Safari - as a central element.
  • The web server Apache is also up there with GNU/Linux as one of the most successful open-source projects in existence. Over half of all web servers use this software.

And finally: Is open-source software always free?

Almost always - but this is an area where there is a lot of misunderstanding when it comes to open-source software. In principle, free software can also be sold - for example, there are some distributions of GNU/Linux that can be bought on DVD. However, free software that is sold must meet the same conditions for free software as listed above, which means that the sale of free software is more of an exception than the rule, and that the price is often close to cost price. However, additional costs are incurred if the user wishes to benefit from services such as manuals or support alongside the software itself. These services can be obtained in the form of an established GNU/Linux distribution (a collection of software packages) which can be purchased from a variety of outlets, including book retailers.

Example of other free sale formats include:

  • Freeware is software that can be used for free. There are no other criteria for freeware.
  • Shareware can initially be installed and used for free. At a later stage, the author may charge licence fees for using the program or for specific types of use. The author cannot check or take steps to verify that licence fees have been paid. Sometimes, users only have access to a reduced range of functions until their licence fee has been paid (i.e. until they have registered).

Pre-release versions of new operating systems

When major providers announce new versions of their operating systems, user interest in the advertised new functions rises. These days, it is standard practice for Apple, Google and Microsoft to provide pre-release versions of their operating systems before their official market launch. These versions are referred to as golden masters, technical previews or public betas.

If you want to try out a pre-release version of a new operating system, follow our tips to keep your computer and your data secure.

  • Remember that these pre-release versions may contain software errors. Do not use them to process or store personal or business data.
  • Test versions do not come with any guarantees from the manufacturer. The availability, confidentiality and integrity of your data is generally not fully guaranteed.
  • In some cases, the manufacturer's pre-release terms and conditions even allow it to access your personal data and all your usage information - right down to individual keystrokes - via the internet, or to use telemetrics data.
  • For this reason, we do not recommend replacing the operating system on the Mac, Windows or Chrome OS computer that you normally use with a pre-release version. Ideally you should use a separate computer to test the new operating system.
  • You should also refrain from using the internet connection on the test system to access cloud and web services such as e-mail, online banking or shopping portals. On test systems, only use test passwords that bear no resemblance to your actual passwords; this applies both locally on the device and online.
  • Setting up a parallel installation so that you can also run your normal working environment on the same system is not recommended. Pre-release versions of operating systems can affect or overwrite boot information.

So, with this many disadvantages to consider - why do test versions exist at all?

In reality, the developers of new operating systems are adopting a completely logical and sensible approach: Their aim is to rectify as many potential errors as possible before the official market launch. This is why they need to collect usage data and transmit it to the manufacturer, where it is analysed centrally. If you try out a pre-release version of an operating system, you become part of the manufacturer's global test laboratory.

Virtual environments are an elegant way to try out new or modified versions of operating systems. However, it is important to check beforehand that this is technically feasible and that the manufacturer's licensing rules permit such use.

Summary

Pre-release versions of new operating systems are targeted at tech-savvy users who are aware of the general conditions surrounding this kind of testing. Following the recommendations listed above will help to keep your system secure. If you have access to a test computer, it's a good idea to look at the details of the next version of your operating system or at alternative products.

This will enable you to familiarise yourself with the new functions - which often include security enhancements - in advance. Only entrust your data to a new product when the manufacturer has guaranteed its functionality with the release of a stable version.