Security Features
Start course

This is the fourth course in Domain 3 of the CSSLP certification and covers the essential ideas, concepts, and principles that you need to take into account when building secure software.

Learning Objectives

  • Understand the process and controls available to secure your software
  • Learn about the main security technologies available

Intended Audience

This course is intended for anyone looking to develop secure software as well as those studying for the CSSLP certification.


Any experience relating to information security would be advantageous, but not essential. All topics discussed are thoroughly explained and presented in a way allowing the information to be absorbed by everyone, regardless of experience within the security field.


A concept that was introduced back in the late 70s to early 80s, was this of trusted computing. We call this the trusted computing base. Now the trusted computing base is the sum total of all the hardware, software, firmware, and controls existing within it, meaning that this TCB represents the most carefully controlled managed and indeed, most sensitive and protection worthy information. Interfaces, software, firmware, and other elements, are considered by default untrustworthy until proven otherwise.

So across the perimeter, will be one set of controls to safeguard what enters or leaves, so that the TCB's integrity and security can be maintained, at its assigned level. It doesn't prevent its interacting with anything outside of the TCB, but it makes sure to safeguard the connection so that in separating TCB from non TCB objects, it keeps the security policy enforced. We have of course our much-feared and much-hated malware.

Now, software designed to operate in target systems with negative effects makeup the vast majority of what malware would be. And this can be anything from malfunction, interoperability to data losses, and worse. Now the typical types are rather well-known. We have our viruses, which require host programs to transport them, worms, which are self-transporting, we have ransomware, of course, the distributed denial of service, and the direct denial of service. We have our botnets, which can be used for a wide variety of things, including the distributed denial of service, and we have our advanced persistent threats, software that creates a presence, which keeps a very low profile until its driver so to speak, returns to check on the latest and take advantage of its presence, to give them access and usage of the system to acquire whatever information objectives they may be seeking.

Database security poses some interesting and unique characteristics that require a great deal of security. These are organized systems, of course, that store and manipulate information and they serve as the bank or the safe where the gold of the data exists. They are therefore the targets of most hacking and other attacks due to their very existence.

Now, encryption outside of a database can cause a problem. The implementation of encryption must be successfully done to deny access, of course, to prevent the exfiltration of data by hackers and the encryption in doing its job can render that data unusable, unreadable, or indecipherable to an unauthorized person.

Now, proper operation security or OPSEC procedures and configuration management must be in place in order to ensure that the secure operations maintain the assigned level of security. Another way that a database can be used to implement security is through the use of views. These will both enable and control access to information by pre configuring a way that an authorized user may be able to see the information in accordance with their privileges and yet block them from getting access to other elements for which they are not authorized.

About the Author
Learning Paths

Mr. Leo has been in Information System for 38 years, and an Information Security professional for over 36 years.  He has worked internationally as a Systems Analyst/Engineer, and as a Security and Privacy Consultant.  His past employers include IBM, St. Luke’s Episcopal Hospital, Computer Sciences Corporation, and Rockwell International.  A NASA contractor for 22 years, from 1998 to 2002 he was Director of Security Engineering and Chief Security Architect for Mission Control at the Johnson Space Center.  From 2002 to 2006 Mr. Leo was the Director of Information Systems, and Chief Information Security Officer for the Managed Care Division of the University of Texas Medical Branch in Galveston, Texas.


Upon attaining his CISSP license in 1997, Mr. Leo joined ISC2 (a professional role) as Chairman of the Curriculum Development Committee, and served in this role until 2004.   During this time, he formulated and directed the effort that produced what became and remains the standard curriculum used to train CISSP candidates worldwide.  He has maintained his professional standards as a professional educator and has since trained and certified nearly 8500 CISSP candidates since 1998, and nearly 2500 in HIPAA compliance certification since 2004.  Mr. leo is an ISC2 Certified Instructor.

Covered Topics