Skip to content

SecurityConcepts

Razvan Deaconescu edited this page Jun 2, 2019 · 2 revisions

Security Concepts

Security is beyond a hot topic, it's a common objectives of IT organizations nowadays. Programs and systems have to be secure to protect company and user data, to provide quality services.

In this chapter we discuss the most important security concepts. We look into the attacker mindset and what we need to do on the defender side to protect the system. We are going to focus on programs (software), not on complete systems. As much as possible we will use Java.

Contents

computing systems, computer programs: input, output, finite state machine inner-workings

attacker goals: cripple, steal, control

cripple: denial-of-service, resource exhaustion, abnormal termination

steal: information disclosure, integrity violation

control: arbitrary code execution, privilege escalation

input, input validation, infiltrate & exfiltrate

control flow graph, finite state machine, complexity

security vs complexity, security vs overhead

trusted computing base (TCB), privilege separation, privilege escalation

secure systems, secure programs

bugs and vulnerabilities, exploits

attacks, attack vector, adversarial/threat model

points in defense: prevent existance, prevent exploitation

secure coding, static analysis, hardening, security checks

safe programming languages

Tasks

Directory List

Enter the 01-security-concepts/dir-list/ subfolder in the repository. Check the source code, find the issue with it, exploit the issue and then fix it to prevent it from happening again.

Based on: IDS07

Environment

Enter the 01-security-concepts/env/ subfolder in the repository. Check the source code, find the issue with it, exploit the issue and then fix it to prevent it from happening again.

Based on: ENV02.

Numbers

Enter the 01-security-concepts/number/ subfolder in the repository. Check the source code, find the issue with it, exploit the issue and then fix it to prevent it from happening again.

Clone this wiki locally