Download as xlsx, pdf, or txt
Download as xlsx, pdf, or txt
You are on page 1of 51

CyBOK Introduction

Foundational Concepts
Objectives of Cyber Security
Mitigate Against Failures and Incidents
Risk Management

Definition of Cyber Security


Protection of Information Systems
Protection of Data
Protection of Service
Unauthorised Access, Harm or Misuse

Failures and Incidents


Security Failures
Damage of Information
Security Operations & Incident
Failure of Device
Failure of Service
Failure of Network

Risk Management
The Presence of Vulnerabilities
Nature of Threat
Effectiveness of Security Processes

Principles
Saltzer and Schroeder Principles
Fail-safe Defaults
Complete Mediation
Open Design
Separation of Privilege
Least Privilege
Least Common Mechanism
Work Factor
Compromise Recording
Economy of Mechanism

NIST Principles
Clear Abstraction
Modularity and Layering
Partially Ordered
Secure Evolvability

Latent Design Conditions


Safety- Critical Systems Domain
Past Decisions about a System
Swiss Cheese Model

The Precautionary Principle


Harmful Effect of Design Choices
Large-Scale Connected Systems
Function Creep

Crosscutting Themes
Security Economics
Attacker Economics
Microeconomic Theory
Economics of Deviant Security

Security Architecture and Lifecycle


Systems Lifecycle
Secure Software Lifecycle
Security throughout the Lifecycle

Veri􏰀cation and Formal Methods


Computational and Symbolic
Theorem Proving Approach
Computational Modelling Approaches
Attacks & Defences
Adversarial Behaviours
Characterisation of Adversaries
Cyber-enabled crime vs Cyber-dependent crime
Interpersonal crimes
Cyberbullying
Doxing
Cyberstalking
Sextortion
Child predation
Cyber-enabled organized crime
Advance fee fraud
Drug dealing
Cyber-dependent organized crime
Email spam
Email Regulation
Directive on Privacy and Electronic Communications
Privacy and Electronic Communications Regulations
CAN-SPAM
Mitigations
Phishing
Financial Malware
Botnet as a Service
Underground forums
Dumpz
Fullz
Card skimming
Insider threats
Click fraud
Click fraud botnets
Unauthorized cryptocurrency mining
Montization rates
Cryptojacking
Ransomware
Denial of Service
Low Orbit Ion Cannon
Hacktivists
Data leaks
Web defacements
State actors
Differences from financially motivated attacks
Sabotage
Espionage
Disinformation
Elements of a malicious operations
Affiliate programmes
Infection vectors
Malicious attachments
Black hat search engine optimisation
Drive-by download attacks
Compromising Interent-connected devices
Infrastructure
Bulletproof hosting
Command and Control infrastructure
Takedown resilient architectures
Multi-tier botnets
Fast flux
Domain flux
Specialised services
Exploit kits
Pay-per-install services
Human services
CAPTCHA solving services
Fake accounts
Content generation
Money mules
Reshipping mules
Payment methods
Credit card processors
Paypal
Western Union and untraceable payments
Cryptocurrencies
Models
Attack trees
Attack graphs
Kill chains
Reconnaissance
Weaponisation
Delivery
Exploitation
Installation
Command and Control
Actions on objectives
Other models
Environmental criminology
Routine activity theory
Rational choice theory
Pattern theory of crime
Sitiuational crime prevention
Hot spots
Hot products
Repeat victims
Mitigations
Adaptation
Displacement
Crime scripting
Flow of capital
Attribution

Forensics
definitions and conceptual models
forensic science
cyber domain
digital (forensic) trace
legal concerns and the Daubert Standard
computer misuse act
cyber crime
standards for the presentation of scientific evidence in legal proceedings
ACPO good practice guide for digital evidence
BS EN ISO/IEC 17020:2012
BS EN ISO/IEC 17025:2005
definitions
digital forensics
DFRWS
NIST
Working
relevence
conceptual models
state-centric
history-centric
cognitive task model
differential analysis
external data sources
schema
sense-making loop
bottom-up processes
search and filter
read and extract
schematize
build case
tell story
top-down processes
re-evaluate
search for suport
search for evidence
search for relations
search for information
the foraging loop
explore
enrich
exploit
the sense making loop
operating system analysis
storage forensics
data abstraction layers
physical media
block device
file system
application artifacts
benefits of independent forensic reconstruction
data acquisition
physical data acquisition
mobile,phone data acquisition
chip-off techniques
RAID data recovery
logical data acquisition
approaches to API based recovery
block-level acquisition
cryptographic hashes
encryption concerns
technical challenges
legal challenges
filesystem analysis
blocks
files
file systems
block device analysis
partitions
logical volumes
data recovery & file content carving
carving techniques
fragmentation
slack space
main memory forensics
process information
file information
network connections
artifacts and fragments
challenges of live forensics
application forensics
web browsers
URL history
form data
temporary files
downloaded files
HTML5 local storage
cookies
cloud forensics
services
SaaS
PaaS
IaaS
forensic challenges
SaaS forensics
partial replication
revision acquisition
cloud-native artifacts
artifact analysis
cryptographic hashing
block-level analysis
approximate analysis
bytewise matching
syntactic matching
semantic matching
bytewise approximate matching
cload-native artifacts

Malware & Attack Technologies


malware taxonomy
dimensions
standalone or host-program
persistent or transient
layers of system stack
auto-spreading
dynamically updatable
coordinated
kinds
viruses
malicious browser extensions
botnet malware
memory-resident malware
advanced persistent threats
potentially unwanted programs
malicious activities by malware
attacks on
confidentiality
integrity
availability
cyber kill chain
reconnaissance
weaponisation
delivery
exploitation
installation
command and control
actions on objectives
underground eco-system
malware analysis
analysis techniques
static analysis
dynamic analysis
fuzzing
symbolic execution
concolic execution
offline concolic execution
online concolic execution
hybrid execution
path exploration
analysis environments
environments
machine emulator
type 2 hypervisor
type 1 hypervisor
bare-metal machine
safety and live-environment requirements
virtualised network environments
anti-analysis and evasion techniques
obfuscation
packing
code emulation
basic blocks
tracing
fingerprinting
multi-path analysis
indentifying the analysis environment
red pill techniques
mitigations
malware detection
identifying the presence of malware
malware distribution methods
malware infection sites
runtime detection
evasion and countermeasures
heuristics
polymorphism
update routines
attack detection
network monitoring
host-based
network-based
spam detection
DDoS detection
ransomware detection
botnet detection
machine learning-based security analytics
limitations
machine learning countermeasures
malware response
disrupting malware operations
DNS fast-flux
domain-name generation algorithms
command and control takedown
P2P takedown
attribution
historical signatures
WHOIS

Security Operations & Incident Management


fundamental concepts
workflows and vocabulary
intrusion detection
security information and event management (SIEM)
security orchestration analytics and reporting (SOAR)
MAPE-K
architectural principles
demilitarised zone (DMZ)
intrusion prevention systems
CISOs and analysts
cyber-threat intelligence (CTI)
information sharing and analysis center (ISAC)
monitor: data sources
network traffic
pcap
volume
packet size
segmentation and fragmentation
timestamps
MAC layer interpretation
application layer interpretation
encryption
new protocols
IoT
LoRa
Profinet IRT
network aggregates: netflow
netflow / IPFix
network infrastructure information
naming
DNS
DNSSEC
DNS as DDoS amplifier
detecting botnets by DNS
routing
BGP hijacks
application logs: web server logs and files
web server logs
common log format
extended common log format
files and documents
system and kernel logs
audit trails
orange book
STIDE
eXpert-BSM
Syslog
format
protocol
analyse: analysis methods
misuse detection
CVE
antivirus engines
haystack and NIDES
snort
YARA
anomaly detection
models
unsupervised techniques
support vector machines
C4.5
graph-based models
anomaly models
specification vs learning
adherence to use cases
blended misuse and anomaly detection
machine learning
datasets
machine learning for malware detection
testing and validating intrusion detection system
the base-rate falacy
contribution of SIEM to analysis and detection
plan: security information and event management
data collection
alert message layers
schema
encoding
transport protocol
schemas
Syslog
CEF
LEEF
CIM
XDAS[CADF
CEE
IDMEF
alert correlation
correlation between alerts
correlation between alerts and the environment
correlation between alerts and external services
incident and information exchange
security operations and benchmarking
execute: mitigation and countermeasures
intrusion prevention systems
specialised examples
session border controllers
web application firewalls
denial of service
software defined networking (SDN)
SIEM platforms and countermeasures
SOAR: impact and risk assessment
cyber insurance models
site reliability engineering
knowledge: intelligence and analytics
cyber security knowledge management
CVE
CVSS
CWE
CAPEC
honeypots and honeynets
cyber-threat intelligence
indicators of compromise
signatures
information sharing and analysis centres
situational awareness
human factors: incident management
prepare: incident management planning
TF-CSIRT
FIRST
ENISA
handle: actual incident response
mitigation
gathering evidence
follow up: post incident activities
performance metrics
communication
attack attribution

Human, Organisational & Regulatory Aspects


Human Factors
usable security
assessment criteria
effectiveness
efficiency
satsifaction
fitting the task to the human
human capabilities and limitations
alarm fatigue
short term memory
one-time passwords
improving memory
long term memory
passwords
human biases
needs of specific groups
children
CAPTCHAs
older citizens
cultural needs
disability
goals and tasks
production and enabling tasks
workarounds to security mechanisms
workload
workload measurement
compliance budget
security fatigue
compliance fatigue
interaction context
contextual inquiry
physical characteristics
light
noise
temperature
pollution
social context
device capabilities and limitations
human error
latent usability failures in systems-of-systems
thinking, fast and slow
mixed-mode thinking
shadow security
security hygiene
awareness and education
terms
awareness
only the first step
education
training
new approaches
security awareness games
mental models of cyber risks and defences
positive security
fear uncertainty and doubt
people are not the weakest link
stakeholder engagement
employees
projective techniques
creative security engagements
physical models
software developers
developers and password security
app development and vulnerabilities
StackOverflow
API usabaility
disconnects between developers and users
Law & Regulation
introductory principles of legal research
nature of law and legal analysis
legal terminology
applying law to cyberspace and information technologies
criminal law
civil law
liability and courts
evidence and proof
holistic approaches to legal risk analysis
jurisdiction
prescriptive jurisdiction
prescriptive jurisdiction over online content
prescriptive jurisdiction over computer crime
prescriptive jurisdiction and data protection
GDPR
enforcement jurisdiction
asset seizure and forfeiture
seizure and forfeiture of servers domain names and registries
territorial location of the right to demand repayment of bank deposits
foreing recognition and enforcement of civil judgments
arrest of natural persons in state territory
extradition of natural persons
technological content filtering
orders to in-state persons directing production of data under their control whethe
international legal assistance
data sovereignty
privacy laws in general and electronic interception
international norms
metadata
human rights
interception by a state
interception by persons other than states
enforcement of privacy laws
data protection
subject matter and regulatory focus
data subject, personal data (and PII)
definitions
de-anonymisation
processing
controller and processor
core regulatory principles
investigation and prevention of crime
transfers pursuant to international mutual legal assistance treaty
derogations allowing transfers
personal data breach notification
enforcement and penalties
computer crime
crimes against information systems
improper access to a system
improper interference with data
improper interference with systems
improper interception of communication
de minimis exceptions to crimes against information systems
the enforcement of and penalties for crimes against information systems
warranted state activity
research and development activities conducted by non-state persons
self-help disfavoured: software locks and hack-back
undisclosed software locks
hack-back
contract
online contracts
time of contract and receipt of contractual communication
encouraging security standards via contract
supply chain
closed trading and payment systems
freedom of contract and its limitations
wanarties and their exclusion
limitations of liability and exclusions of liability
breach of contract and remedies
effects of contract on non-contracting parties
conflict of law -- contracts
intellectual property
understanding intellectual property
catalogue of intellectual property rights
copyright
patents
trademarks
trade secrets
enforcement -- remedies
criminal liability
civil liability
reverse engineering
circumventing copyright technological protection measures
testing a proprietary cryptographic algorithm
international treatment and conflict of law
internet intermediaries
shields from liability
take-down procedures
dematerialisation of documents and electronic trust services
admission into evidence of electronic documents
requirements of form and the threat of unenforceability
electronic signatures and indentity trust services
conflict of law -- electronic signatures and trust services
other regulatory matters
industry-specific regulations
NIS directive
restrictions on exporting security technologies
matters classified as secret by a state
public international law
attributing action to a state under international law
state cyber operations in general
cyber espionage in peacetime
cross-border criminal investigation
the law of armed conflict
ethics
obligations owed to a client
codes of conduct
vulnerability testing
vulnerability disclosure
facilitating and acting on vulnerability disclosure

Privacy & Online Rights


confidentiality
data confidentiality
cryptography-based access control
protecting data in transit
E2EE
OTR
protecting data during processing
outsourcing
private information retrieval
oblivious transfer
homomorphic encryption
efficiency concerns
collaborative computation
verification in the encrypted domain
private computation - input verification
zero-knowledge proofs
ZK-SNARK
private authentication
attribute based credentials
private payments
blind signatures
obfuscation-based inference control
anonymisation
k-anonymity
l-diversity
generalisation
suppression
dummy addition
perturbation
differential privacy
metadata confidentiality
traffic metadata
anonymous communications networks
Tor
mix networks
VPNs
device metadata
attacks
dificulty of defence
cookie-based techniques
location metadata
clustering techniques
control
privacy settings configuration
machine learning based techniques
privacy policy negotiation
P3P
purpose-based access control
sticky policies
privacy policy interpretability
transparency
feedback-based transparency
privacy mirrors
privacy nudges
audit-based transparency
auditing specifications
formal methods-based approaches
distributed ledgers
privacy technologies and democratic values
privacy technologies as support fo democratic political systems
electronic voting
property of electronic voting systems
ballot secrecy
universal verifiability
eligibility verifiability
voting mix networks
verifiable shuffles
blind-signature-based schemes
homomorphic encryption-based schemes
anonymous petitions
censorship resistance and freedom of speech
data publishing censorship resistance
Eternity Service
Freenet
Tangler
data access censorship resistance
mimicking
tunneling
bridging
refraction networking
privacy engineering
goals
minimize trust
minimize risk
strategies
minimise collection
minimise disclosure
minimise replication
minimise centralization
minimise linkability
privacy evaluation

Risk Management & Governance


risk definition
risk assessment
risk management
levels of perceived risk
risk governance
governance models
technocratic
decisionistic
transparent
risk perception factors
human factors and risk communication
education
training and inducement of behaviour change
creation of confidence
involvement
security culture
just culture
awareness
awareness metrics
enacting security policy
presentation of risk assessment information
risk communication principles
risk assessment and management principles
component vs systems prespectives
elements of risk
vulnerability
threat
likelihood
impact
risk assessment and management methods
NIST guidelines
prepare
conduct
communicate
maintain
ISO/IEC 27005
FAIR
Octave Allegro
STRIDE
attack trees
STAMP
TOGAF
dependency modelling
SABSA
risk assessment and management in cyber-physical systems
OT
ICS and CNI
SCADA
NIS
security metrics
characteristics of good metrics
regulatory compliance
actor-oriented approaches
quantitative vs qualitative approaches
business continuity: incident response and recovery planning
ISO/IEC 27035
plan and prepare
detection and reporting
assessment and decision
response
learning
NCSC guidance
establish incident response capability
training
roles
recovery
test
report
gather evidence
develop
report

Infrastructure Security
Cyber-physical Systems Security
cyber-physical systems
characteristics
embedded systems
real-time systems
network protocols
wireless
sensor networks
control
discrete-time control
networked-controlled systems
hybrid systems
protections against natural events and accidents
safety
protection
protection of generators
under frequency load shedding (UFLS)
overcurrent protection
ove/under voltage
reliability
fault tolerance
robust control
safety vs security
security and privacy concerns
attacks agains CPSs
architectural threats
high-profile real-world attacks
crosscutting security
preventing attacks
securing legacy systems
bumb-in-the-wire
wireless shield
lightweight security
secure microkernels
preventing transduction attacks
detecting attacks
remote attestation
network intrusion detection
physics-based attack detection
historical anomalies
physical-law anomalies
out-of-band detection
active detection
mitigating attacks
resilient control systems
conservative control
resilient estimation
sensor fusion
virtual sensors
constraining actuation
inertial resets
reactive control compensation
safe control actions
CPS domains
industrial control systems
PLCs
RTUs
corporate networks
SCADA
regulatory control
OT networks
intrusion detection
electric power grids
bulk power system
smart grids
efficiency
reliability
consumer choice
load-altering attacks
transportation systems and autonomous vehicles
traffic flow control
demand management
incident management
vulnerabilities
ground, air, and see vehicles
privacy concerns of drones
transduction attacks on sensors
robotics and advanced manufacturing
attacks on quality
safety problems
medical devices
implantable medical devices
attacks
touch-to-access principle
IoT
DDoS attacks
botnets
privacy invasions
attacks on digital assistants
security hubs
policy and political aspects
incentives and regulation
regulation
incentives
cyber-conflict
cybercriminals
disgruntled employees
terrorists and activists
nation states
Tallinn manual
Koh speech
acts of war
industry practices and standards
ISA 99/IEC 62443
NIST SP 800-53
NIST-IR 762
NERC standards
IEC 104
PROFINET
IEC 62351
ETSI TS 103 645

Hardware Security
hardware design cycle
hardware design process
behavioural domain
current, voltage
logic
register transfers
algorithms
systems
structural domain
transistors
gates, flip-flops, etc
ALUs, RAM, etc
processor
physical domain
transistor layout
cell layout
module layout
floorplans
physical partitions
root of trust
TPMs
SIMs
threat model
measuring hardware security
FIPS 140-2
approved cryptographic algorithms
tamper evidence
tamper resistance
common criteria and EMVCo
SESIP
secure platforms
hardware security module (HSM)
secure element and smartcard
trusted platform module (TPM)
root of trust for measurement
root of trust for storage
root of trust for reporting
hardware support for software security
objectives
protection
isolation
attestation
sealed storage
memory protection
control flow integrity
information flow analysis
virtual machines
trusted execution environment
IBM 4758 secure coprocessor
ARM Trustzone
protected module architectures
small TCB implementations
zero TCB implementations
Intel Software Guard Extension (SGX)
light-weight solutions
SMART
hardware shadow stacks
pointer authentication
Qarma
hardware design for cryptographic algorithms
design process
register transfer level (RTL)
application specific integrated circuit (ASIC)
field programmable gata array (FPGA)
power consumption
electronic design automation (EDA)
cryptographic algorithms at RTL level
secret key algorithms
secret key light-weight algorithms
hash algorithms
cryptocurrency mining
public key algorithms
quantum resistant algorithms
homomorphic encryption schemes
side-channel attacks and fault attacks
attacks
passive side channel attacks
simple power analysis
differential power analysis
electro-magnetic radiation attacks
timing attacks
constant time execution
template attacks
micro-architectural side-channels
spectre
meltdown
foreshadow
active fault attacks
RowHammer
optical-fault attacks
sensors
countermeasures
randomisation
masking
hiding
micro-code updates
redundancy
entropy generating building blocks
random number generation
pseudo random number generation (PRNG)
true random number generation (TRNG)
physically unclonable functions (PUFs)
weak PUFs
strong PUFs
machine learning attacks
hardware design process
design and fabrication of silicon integrated circuits
trojan circuits
cicuit level techniques
board level security
time

Network Security
internet architecture
application-layer security
application-layer protocols
public key infrastructure
certificate authorities
DNSSEC
HTTPS
NTP
DNS security extensions
DNS attacks
DNS hijacking
DNS spoofing
transport-layer security
handshaking
key-derivation
data-transfer
TLS attacks
SYN flooding
SSL stripping
BEAST
lucky thirteen
QUIC
network layer security
IPsec
encapsulation security payload
authentication headers
security association
internet key exchange protocol
IP masquerading
routing protocol security
border gateway protocol
BGP route hijacking
BGP denial-of-service
BGPSec
link layer security
attacks on ethernet switches
MAC spoofing
ARP spoofing
VLAN hopping
switch poisoning attack
IEEE 802.1X
extensible authentication protocol
network defence tools
packet filters
intrusion detection systems
signature-based IDS
anomaly-based IDS
host intrusion detection system
intrusion prevention system
network architecture design
network perimeter protection
application gateway
circuit-level gateway
wireless LAN security
WPA
WPA2
WEP
WPA3
RSN
advanced network security topics
software defined networking
DDOS defences
timing side-channels
network function virtualisation
internet of things security
Mirai malware
limited capacity security protocols
network protocols and vulnerability
Dolev-Yao adversarial model
common network attacks
packet sniffing
man-in-the-middle
denial of service
IP spoofing

Physical Layer & Telecomms Security


schemes for confidentiality, integrity and access control
key establishment based on channel reciprocity
establishment processes
quantisation
information reconciliation
key verification
MIMO-supported approaches
orthogonal blinding
zero-forcing
secrecy capacity
friendly jamming
protecting data integrity
integrity codes
LPI and covert communication
frequency hopping
direct sequency spread spectrum
chirping
jamming and jamming-resilient communication
classifications of jammers
constant
reactive
countermeasures
coordinated spread spectrum techniques
uncoordinated spread spectrum techniques
signal anihilation and overshadowing
identification
device under identification
identification signals
features
in-specificaiton
modulation errors
time-related parameters
out-specification
clock skew
turn-on transient duration
inferred characteristics
device fingerprints
properties
universality
uniqueness
collectability
permenance
robustness
data-dependency
attacks on physical layer identification
signal re(p)lay
feature replay
distance bounding and secure positioning
distance bounding protocols
attacks
distance fraud
mafia fraud
terrorist fraud
distance hijacking
distance measurement techniques
physical layer attacks on secure distance measurement
RSSI-based distance estimation attacks
time of flight based ranging attacks
secure positioning
spoofing attacks
verifiable multilateration
secure positioning based on hidden stations
physical layer security of selected communication technologies
NFC
wormhole attacks
shielding
multi-factor authentication
protocol augmentation
timing restrictions
distance bounding
air traffic communication networks
ADS-B
multilateration
cellular networks
GSM
3G
GPRS
4G (LTE)
authentication protocols
5G
GNSS security and spoofing attacks
galileo
signal spoofing attacks
non-coherent and modified message contents
non-coherent but unmodified message contents
coherent but modified message contents
coherent and unmodified message contents
seeamless takeover attack
countermeasures

Systems Security
Authentication, Authorisation & Accountability
authorisation
access control
core concepts
principal
subject
object
identity based access control
attribute based access control
access rights
security policies
access control matrix
access control list
discretionary access controls (DAC)
mandatory access controls (MAC)
lattices
SELinux
multi-level security policies
role-based access control (RBAC)
flat RBAC
hierarchical RBAC
constrained RBAC
symmetric RBAC
attribute-based access control (ABAC)
code-based access cotrol
Java security model
.NET architecture
mobile security
permissions
digital rights management (DRM)
tamper resistance
attestation
superdistribution
FIDO UAF
usage control
XACML 3.0
enforcing access control
points
policy administration points
policy decision points
policy information points
policy enforcement points
delegation and revocation
online certificate status protocol (OCSP)
reference monitor
trusted computing base (TCB)
authorisation
decision algorithms
rule combining algorithms
execution monitors
in-line reference monitors
theory
Bell-LaPadula (BLP)
*-property
polyinstantiation
Biba
Clark-Wilson
Harrison, Ruzo and Ullman model
enforceable policies
access control logics
access control in distributed systems
core concepts
certificate
credential
token
origin-based policies
sender policy framework (SPF)
cross-site scripting
cross-site resource sharing
federated access control
cryptography and access control
attribute-based encryption
key-policy attribute-based encryption
ciphertext-policy attribute-based encryption
key-centric access control
SPKI/SDSI
constrained delegation
authentication
identity management
privacy by design
user authentication
risk-based authentication
passwords
recommendations
biometrics
liveness detection
verification
failure to capture
false rejects
false accepts
spoofing
border control gates
authentication tokens
behavioural authentication
two-factor authentication (2FA)
authentication in distributed systems
Needhame-Schroeder Protocol
Kerberos
ticket granting server
SAML
OAuth 2
facets of authentication
patterns for entity authentication
correspondence properties
aliveness
weak agreement
non-injective agreement
agreement
authentication vs verified association
authentication for credit or responsibility
accountability
technical aspects
audit policies
preserving the evidence
tamper resistance
write-once, read-many
hash-chain
audit policies
analysing the evidence
assessing the evidence
privacy and accountability
certificate transparency
private subdomains
distributed logs
consensus
blockchains

Cryptography
schemes
AES
RSA
DES
PKCS
DSA
Kerberos
TLS
symmetric cryptography
symmetric primitives
block ciphers
Feistel networks
stream ciphers
hash functions
Merkel-DamgaÌŠrd construction
sponge constructions
symmetric encryption and authentication
modes of operation
ECB
CBC
OFB
CFB
CTR
AEAD
message authentication codes
extendable output function
key derivation functions
public key cryptography
public key encryption
key encapsulation mechanisms
constructions based on RSA
RSA-OAEP
RSA-KEM
data encryption mechanisms
constructions based on elliptic curves
ECIES
lattice-based constructions
public key signatures
full domain hash
probabilistic signature schemes
Schnorr signatures
cryptographic security models
basic security definitions
security games
random oracle model
one-way
passive attack
indistinguishability
chosen plaintext attacks
chosen ciphertext attack
universal forgery
chosen message attack
hard problems
pseudo-random functions
pseudo-random permutations
discrete logarithm problem
Diffie-Hellman problem
shortest vector problem
post-quantum cryptography
closest vector problem
setup assumptions
PKI
common reference strings
good random number generation
simulation of cryptographic operations
universal composability
information-theoretically secure constructions
one-time pad
secret sharing
standard protocols
authentication protocols
encryption-based protocols
message authentication-based protocols
zero-knowledge-based protocols
key agreement protocols
key confirmation
forward secrecy
unknown key share security
key transport
Diffie-Hellman key agreement
station-to-station protocol
advanced protocols
oblivious transfer
zero-knowledge
Σ-protocols
secure multi-party computation
public-key schemes with special properties
group signatures
ring signatures
blind signatures
identity-based encryption
linearly homomorphic encryption
fully homomorphic encryption

Distributed Systems Security


classes of distributed systems
decentralised point-to-point interactions across distributed entities without a centralised coo
P2P
Kademlia
Napster
Gnutella
wireless sensor networks
online gaming systems
coordinated clustering across distributed resources and services
coordination of resources vs coordination of resources
client-server models
n-tier multi tenancy models
clouds
public
private
hybrid
multi-cloud
big data services
high performance computing
databases
ledgers
storage systems
classes of vulnerabilities & threats
access/admission control & ID management
data transportation
resource management and coordination services
data security
confidentiality integrity and availability
side channel attacks
data consistency
decentralised P2P models
principles
symmetry of interfaces
resilience to perturbations
survivability through replication
peer resources at the network's edge
address variance
unstructured P2P protocols
message passing
structured P2P protocols
distributed hash table
hybrid P2P protocols
hierarchical P2P protocols
attacking P2P systems
functional elements
P2P operations
mitigations
P2P data structures
attack types
denial of service (DoS)
collusion attacks
pollution attacks
white washing
routing attacks
routing table poisoning
buffer map cheating attacks
sybil attacks
eclipse attacks
localised eclipse attacks
topology aware localised eclipse attacks
outgoing eclipse attacks
coordinated resources clustering
systems coordination styles
synchronous
asynchronous
partially synchronous
reliable and secure group communication
coordination principles
consensus
agreement
validity
termination
group membership and consistency
strong consistency models
strict consistency
linearisability
weak consistency models
sequential consistency
causal consistency
eventual consistency
replication management and coordination schema
CAP
consistency
availability
partition
replication and coordination
Paxos
Byzantine Fault Tolerance
commit protocols
coordination classes and attackability
classes of disruptions
timing based
value based
resource coordination class
characteristics
cloud model
IaaS
PaaS
operational attributes
client-server model
attackability implications
compromise of resources
compromise of access/admission control
compromise of VM
compromise of scheduler
compromise of broker
compromise of communication
compromise on monitoring and accounting
services coordination class
characteristic examples
web services
key distribution
storage
transactional services, databases
blockchains/cryptocurrencies
properties
proof of work
attackability implications
short transactions
large transactions
mixed transactions
e-commerce supporting transactions
informational systems

Operating Systems & Virtualisation Security


attacker model
threats to security for modern OSs
malicious extensions
bootkit
memory errors (software)
memory corruption (hardware)
uninitialised data leakage
concurrency bugs and double fetch
side channels (hardware)
side channels (speculative)
side channels (software)
resource depletion (DoS)
deadlocks (DoS)
attack surface
role of operating systems
isolation
mediation
design choices
single domain
monolithic OS
microkernel based multi-server
unikernel
virtual machines
hypervisors
QubesOS
drawbacks
containers
IoT
security domains
OS security principles
Saltzer and Schroeder's principles
principle of economy of mechanism
principle of fail-safe defaults
principle of complete mediation
principle of open design
principle of separation of privilege
principle of least authority
principle of least commmon mechanism
principle of psychological acceptability
security models
Bell-LaPadula model
Biba model
newer principles
principle of minimizing the trusted computing base
principle of intentional use
primitives for isolation and mediation
Multics
rings
virtual memory
segment-based protection
segmentation
hierarchical filesystems
mandatory access controls
discretionary access controls
trusted computer system evaluation criteria
authentication and identification
access control lists
SELinux
capabilities
physical access and secure deletion
memory protection and address spaces
paging
modern hardware extensions for memory protection
Intel MPX
Intel MPK
memory tagging extensions
memory protection unit
Intel SGX
ARM TrustZone
DMA
protection rings
ring 0
ring -1
ring -2
ring -3 / Intel ME
low-end devices and IoT
operating system hardening
formal verification
information hiding
ASLR
KASLR
fine-grained randomisation
control-flow restrictions
control-flow integrity
shadow stacks
indirect branch tracking
pointer authentication
data-flow integrity
partitioning
write xor execute
SMEP and SMAP
speculative execution
meltdown
spectre
RIDL
partitioning micro-architectural states
page colouring
code and data integrity checks
driver signing
boot checks
UEFI
TPMs
PCRs
hypervisor supported introspection
anomaly detection
related areas
databases
querying encrypted databases
homomorphic encryption
outsourced databases
Merkle hash trees
embracing security
GRSecurity
PaX Team

Software Platform Security


Software Security
categories of vulnerabilities
CVEs and CWEs
memory management vulnerabilities
attacks
code corruption attacks
control-flow hijack attacks
information leak attack
data-only-attacks
safe languages
spatial vulnerabilities
temporal vulnerabilities
structured output generation vulnerabilities
SQL injection
command injection vulnerabilitiies
script injection vulnerabilities (XSS)
stored injection vulnerabiliites
higher-order injection vulnerabilities
race condition vulnerabilities
concurrency bugs
time-of-check to time-of-use
API vulnerabilities
correct use
correct implementation
side-channel vulnerabilities
software-based side-channels
covert channels
micro-architectual effects
fault-injection attacks
physical fault-injection
software fault-injection
Rowhammer
prevention of vulnerabilities
API design
defensive programming
sandboxing
principle of least privilege
assertions
contracts
coding practices
coding guidelines
MISRA
dangerous functions
programming idioms
resource acquisition is initialisation
move semantics
smart pointers
checking compliance
erroneous execution
trapped errors
untrapped errors
language design and type systems
memory management mitigations
immutable state
dynamic checks
static checks
structured output generations mitigations
type systems
query generation
race condition mitigations
ownership
aliasing
information flow
mitigating exploitation
runtime detection of attacks
stack canaries
non-executable memory
control flow integrity
automated software diversity
ASLR
limiting privileges
sandboxing
monitors
jails
compartmentalisation
object-capability systems
detection of vulnerabilities
static detection
heurisitic static detection
taint analysis
information flow analysis
sound static verification
program verification
abstract interpretation
model checking
soundiness
dynamic detection
generating relevant executions
black-box fuzzing
white-box fuzzing
dynamic symbolic execution
monitoring
pre/post-conditions
design by contract
soundness
completeness

Secure Software Lifecycle


motivations for secure software lifecycle
breaches are costly
vulnerablities can be exploited without being noticed
patching can introduce vulnerabilities
customers don't apply patches
trusted computing
prescriptive processes
SAFECode
application security control definition
secure design principles
secure coding practices
legal and industry requirements
internal policies and standards
incidents and feedback
threats and risk
design
secure coding practices
manage security findings
common criteria
CVSS
vulnerability response and disclosure
planning the implementation and deploment of secure development
manage the security risk of using third-party components
perfrom static analysis security testing
perform dynamic analysis security testing
perform penetration testing
Microsoft SDL
provide training
define security requirements
SQUARE
KAOS
define metrics and compliance reporting
KPIs
PCI DSS
GDPR
establish design requirements
Saltzer Schroeder principles
IEEE Center for Secure Design principles
perform threat modelling
STRIDE
games for threat modelling
archtectural risk analysis
attack resistance analysis
ambiguity analysis
weakness analysis
design and use cryptography standards
use approved tools
establish a standard incident response process
Touchpoints
code review (tools)
penetration testing
abuse cases
human error
risk-based security testing
OWASP ASVS
security requirements
security operations
adaptations of secure software lifecycle
agile and DevOps
use software composition analysis and governance
use tools and automation
keep credentials safe
use continuous learning and monitoring
mobile
OWASP Mobile Application Security Verification Standard
Mobile Security Testing Guide
mobile app security checklist
moblie threat model
mobile application architecture
mobile data
threat agent identification
methods of attack
controls
cloud computing
multitenancy
tokenisation of sensitive data
trusted compute pools
TPM
data encryption and key management
authentication and identity manangement
SSO
shared-domain issues
IoT
use of RFID tags
default passwords and credentials
use the manufacturer usage description
develop a secure upgrade process
road vehicles
US National Highway Traffic Safety Administration
IS21434
US SPY car act
Intelligent and Connected Vehicles initiative
ecommerce
PCI DSS
assess the secure software lifecycle
SAMM
BSIMM
Common Criteria
structural testing
methodical testing
methodical design
semi-formal design
semi-formal verified design
formally verified design

Web & Mobile Security


fundamental concepts and approaches
appification
webification
Uniform Resource Locators (URLs)
Hypertext Transfer Protocol (HTTP)
protocol format
cookies
Hypertext Markup Language (HTML)
Cascading Style Sheets (CSS)
JavaScript
script processing
WebAssembly (Wasm)
WebViews
application stores
side-loading
vetting procedure
signing
impact of user ratings and reviews on application security
sandboxing
application isolation
content isolation
same origin policy (SOP)
content security policy (CSP)
permission dialog based access control
security principles
reference monitor
security policy
system applications
third-party applications
different permission approaches
web PKI and HTTPS
warning messages
adoption
rogues certificate authorities and certificate transparency
authentication
HTTP authentication
form-based authentication
mobile device authentication
biometrics
graphical passwords
unlock patterns
cookies
passwords and alternatives
password policies
password strength meters
password managers
multi-factor authentication
european payment services directive 2
WebAuthn
OAuth
frequent software updates
automatic updates in browsers
automatic updates in apps
outdated third party libraries
client side vulnerabilities and mitigations
phishing
address bar manipulation attacks
internationalised domain name homographs attacks
anti-phishing training
drive-by-download attacks
clickjacking
confused deputy attacks
client side storage
cookies
HTML5-based storage
storage in mobile applications
information leakis in Android applications
physical attacks
smudge attacks
shoulder surfing
server side vulnerabilities and mitigations
injection vulnerabilities
input sanitisation
SQL-injection
blind attacks
second order attacks
prepared statements
command injection
restrictive development frameworks
user uploaded files
metadada filtering
same-origin policies
local file inclusion
path sanitisation
cross-site scripting (XSS)
stored XSS attacks
reflected XSS attacks
cross-site request forgery (CSRF)
server side misconfigurations & vulnerable components
HeartBleed
firewalls
load balancers
HTTPS misconfigurations
databases
password leaks
nic Communications
cations Regulations
legal proceedings
mes and registries
of bank deposits

under their control whether held on domestic or foreign IT systems


es without a centralised coordination service
e development
Formal Methods for Security
Modelling and Abstraction
Security Models
Access Control
Information Flow
Security Protocols
Program Correctness
Security Properties
Authentication
Confidentiality
Integrity
Anonymity
Attacker Models

Analysis and Verification


Semantics-based
Game-based
Simulation-based
Equivalence-based
Refinement-based
Tools
Theorem-prIsabelle/HOL
Coq
Cryptoverif
Easycrypt
Other theorem-proving tools
Model-checking tools
ProVerif
PRISM
Tamarin
Other model-checking tools

Real-world examples
seL4
FREAK SSL/TLS vulnerability
Other real-world examples

You might also like