Programming
languages
1st gen: machine code
2nd gen: assembly
3rd gen: high level
4th gen: v.high level
5th gen: natural
programming
compiler
c
takes entire program
faster
less secure
interpreter
basic
takes each instruction
slower
more secure
object orientated programming
instantiated attributes
method
datahiding
abstraction
polymorphism
data modelling
cohesion and coupling
data structure
polyinstantiation
distributed computing
DCOM
UUID/GUID
CORBA
orb
Java platform EE
SOA
Webservices
SOAP
HTTP
WSDL
UDDI
XML
SaaS
mobile code
Java Applets
Sandbox
bytecode
Active X
vulnerable: shares privilege of user
vulnerable: container allows reuse
authenticode
digital signature
expert systems and ANN
rulebased policy mgt.
inference engine
pattern matches
knowledge based
operation mode
backward chaining
Development
system development life cycle
Initiation
acquisition/development
security analysis and plan
implementation
certification
accreditation
operation/maintenance
disposal
software development life cycle
requirements gathering
privacy impact rating
P1
High
PII
P2
P3
design
requirement types
info model
functional model
behavioural model
analysis
threat modelling
attack surface analysis
development
CASE Tool
static analysis
guidelines
OWASP, MITRE, DHS
testing/validation
unit testing
integration testing
acceptance testing
maintenance hook/trapdoor removal
regression testing
fuzzing
dynamic analysis
release/maintenance
verification v validation
best practices
WASC
OWASP
BSI
ISO27034
development models
Build and Fix
waterfall
prototype
sprial
RAD
AGILE
maturity models
CMM
Initial
ad hoc or even chaotic dev process
Repeatable
formal structure and change control
Defined
formal procedures and quantifable measures
Managed
qualifiable measures
Optimised
continuous improvement
change control
SCM tool
software escrow
Tools
CASE
Databases
DB software
dbms
retrofitting
open front end
clark wilson
programming interface
DB models
hierarchical
network
relational
DDL
DML
QL
report generation
data dictionary
primary v foreign key
object orientated
object relational (ORD)
integrity
referential
semantic
rollback
commit
savepoints
datawarehousing
datamining/knowledge discovery database
metadata
issues and measures
aggregation and inference
cell suppression
partitioning
noise and perturbation
views
dac/mac
confidentiality/integrity
polyinstantiation
availability
OLTP in clustering
ACID
Webapp security
threats
information gathering
administrative interface
authentication and access control
input validation
parameter validation
session management
principles
Malware
virus
macro
bootsector
compression
stealth
polymorphic
multipart
self-garbling
meme
script
tunnelling
worms
rootkits
spyware/adware
botnets
botherder
irc
C&C servers
ddos
uses
spamming
brute force
ddos
click fraud
fastflux
spreading illegal material
logic bombs
trojan horses
rats
protection
anti-virus
signature/fingerprint detetction
heuristic detection
behaviour block
EICAR
spam detection
bayesian block
anti-malware practices