ontwikkeling in secure software

Secure software development
NGI 27 mei 2014 @DIF Zoetermeer
Leo van Koppen
Gebruik van Socrative voor interactiviteit
Internet is beschikbaar
SSID: DIF
Password: Dalhem079
Download Socrative student app
https://play.google.com/store/apps/details?id=com.socrative.student&hl=nl
Of ga naar: m.socrative.com
Join Room number: 420777
Geef uw mening en of antwoord op de
voorgelegde vragen
ISM Information Security Management
ISM Information Security Management
Actualiteit “keek op de week”
ISM Information Security Management
Richard A. Clarke
Richard Alan Clarke (Boston, oktober 1951) was een
Amerikaans overheidsfunctionaris. Hij verschafte nationaal
veiligheidsadvies aan de Amerikaanse presidenten Ronald
Reagan, George H.W. Bush, Bill Clinton en George W. Bush op
het gebied van inlichtingendiensten en terrorisme
van 1973 tot 2003. Clarkes specialiteiten waren cyber
security, antiterrorisme en homeland security. Hij was de
antiterrorisme-adviseur in de VS National Security Council ten
tijde van de aanslagen op 11 september 2001. Hij trad in
januari 2003 terug.
ISM Information Security Management
Waarom een lezing over software security?
Omdat …
.. we hackers (in welke hoedanigheid dan ook) te veel
kansen geven criminele activiteiten uit te kunnen voeren
… we de georganiseerd misdaad de kansen bieden om
onze business te ondermijnen
.. we criminele regiems de mogelijkheden geven om
onze veiligheid in gevaar te brengen
Omdat de bestrijding van cyber criminaliteit
adequater moet worden aangepakt!
“… en o ja zeker!…mensen maken (de) fouten!
ISM Information Security Management
Waarom de focus op secure software development?
Omdat….
De software laag een zwakke schakel is
IT-infrastructuur en bedrijfsorganisatie zijn minder kwetsbaar
voor aanvallen
Security requirements bij aanvang (meestal) geen rol spelen
Tijd en functionaliteit lijken de enige criteria te zijn
Kwaliteit niet alleen in de testfase kan worden aangetoond
De complexiteit van de hedendaagse software eist een
gedegen en gestructureerde aanpak.
Het was al genoemd…
Mensen zijn de zwakke schakel
…. ook bij het maken van software
ISM Information Security Management
Software development
Kenmerk (traditioneel): een
gestructureerde aanpak
modellen en methoden
SDM, RAD, UML, Unified Process
Gestructureerd testen, TMAP
Testen meenemen in design (RUP)
Hulpmiddelen
Web-richtlijnen NCSC
SSD
CIP-overheid
Normenkader
iComply
…en OWASP
Al jarenlang een belangrijke referentie
ISM Information Security Management
OWASP testing
framework work
flow
ISM Information Security Management
Secure development: drie pijlers (Gary McGraw)
Risk management • 7 Touchpoints
Continuous process
Identify technical risk
for the business
Define a mitigation
strategy
ISM
Information Security Management
•
•
•
•
•
•
•
Code review
Risk analysis
Penetration testing
Risk based testing
Abuse cases
Security requirements
Security operations
• Knowledge
• Security
awareness
• Competences
10
ISM Information Security Management
Noodzaak is er..
Waarom lijken we de strijd te verliezen?
We weten het wel, maar doen het niet
Alleen aandacht voor functionaliteit, tijd (en geld)
Security valt vaak in de categorie “should or would haves”
Waar te beginnen?
Bewustmaken !
Motiveren !
Faciliteren !
Confronteren !
Afdwingen !
ISM Information Security Management
Wie en hoe?
verschillende stakeholders
Inzicht geven!
risicoanalyse
Hulpmiddelen/ Methoden
Responsible disclosure
Regelgeving, wetgeving
OWASP
Randvoorwaarden voor een secure aanpak?
Ambitie van leverancier
Men ziet de noodzaak in!
Kwaliteit (betrouwbaarheid)
leveren
Ambitie van de klant
Onderdeel van de requirements, aanpak en/of oplevering
Standaarden hanteren
ISO, IEEE, PCI-DSS, PAS standaards
Methodieken hanteren, zoals
OWASP (knowledge, good practices & tools)
Microsoft SDLC (secure development lifecycle )
Afdwingen Compliancy?
Wetgeving en naleving
Regulering (garantie van kwaliteit van software)
ISM Information Security Management
Programma
Methodiek:
Martin Knobloch OWASP
Risk management
Frans van Gessel
Responsible disclosure
David van Es
ISM-student i.o.v. SURF
Secure development
Marcel Koerts
Secure development
(http://www.cip-overheid.nl/)
Pauze
Normenkader voor secure software development
Hans de Vries/ Fred Hendriks
Interactieve discussie
Stellingen en vragen
ISM Information Security Management
Gebruik van Socrative voor interactiviteit
Internet is beschikbaar
SSID: DIF
Password: Dalhem079
Download Socrative student app
https://play.google.com/store/apps/details?id=com.socrative.student&hl=nl
Of ga naar: m.socrative.com
Join Room number: 420777
Geef uw mening en of antwoord op de
voorgelegde vragen
ISM Information Security Management
Martin Knobloch
OWASP
ISM Information Security Management
Frans van Gessel
Risico’s
ISM Information Security Management
David van Es
responsible
ISM Information Security Management
Marcel Koerts
Secure Software
Development
ISM Information Security Management
Pauze
ISM Information Security Management
Hans de Vries
Normenkader
ISM Information Security Management
Interactieve sessie: Stellingen
Stelling 1:
.
Stelling 2:
“Security moet je inbouwen en niet aanbouwen!” Dat geldt met
name bij software ontwikkeling
Stelling 3:
Security inbouwen is een kwestie van methodiek. Software
development is van oudsher sterk gedomineerd door een
methodische aanpak, dus secure software ontwikkeling kan vrij
eenvoudig secure worden gemaakt!
Stelling 4:
Voorafgaande aan een software ontwikkeltraject moet te allen tijden
de betrouwbaarheidseisen (BIV) worden vastgesteld
Stelling 5:
Secure development moet worden afgedwongen met
normenkaders waartegen geaudit kan worden!
ISM Information Security Management
Interactieve sessie: Stellingen
Stelling 6:
Secure development moet worden afgedwongen vanuit wetgeving
Stelling 7:
Uses cases kunnen niet zonder abuse cases”
Stelling 8:
Kwaliteit (betrouwbaarheid) van software is een aparte feature bij
aankoop
Stelling 9:
Software onderdeel vormt van de kritische infrastructuur dient aan
wettelijke security eisen te voldoen
Stelling 10:
Responsible disclosure maakt het mogelijk dat software effectief
getest kan worden (crowd testing)
Stelling 11:
Geleden schade veroorzaakt door in de software kan worden
verhaald op de ontwikkelaar
ISM Information Security Management
JA/NEE/geen mening- vragen
Aandacht voor security start al bij “hello world”
Betrouwbaarheid van software is extra requirement en daar
betaal je voor.
Software heeft een keurmerk nodig
Software heeft een garantie certificaat nodig
Software voor overheidsinstellingen dient te voldoen aan
wettelijke eisen
Virtualisatie software, embedded software en OS’en dienen met
een garantiecertificaat te worden opgeleverd.
Een normenkader is een goede stap naar kwaliteitssoftware
Biedt het werken met een methodiek voldoende garantie?
Is wetgeving een voorwaarde om kwaliteit van software af te
dwingen?
Is het opleggen van een methodiek een juiste start voor secure
development?
ISM Information Security Management
Meerkeuze vragen
Welke van de security activiteiten spreekt u meest aan?
Risicomanagement/ abuse cases/ code reviews/
pentesting/allemaal
Wanneer wordt een kwaliteitsgarantie voor software
noodzakelijk?
Altijd/ als het een requirement is/ bij privacy/ bij kritische
infrastructuur
Vier ogen principe bij de software ontwikkeling is vereist:
Altijd/ als het een requirement is/ bij privacy / bij kritische
infrastructuur
ISM Information Security Management
Veilige software? Dat is moeilijk, dat moet je aan de
softwarebouwer overlaten.
Afspraken over veilige software regel je in een contract.
Veilige software dat is een kwestie van goed testen.
Eisen stellen aan veiligheid kost geld
ISM Information Security Management
Terminologie
Application security is about protecting software and the
system that software
runs in a post-facto way, after development is complete
Information Security can be defined as:
“The concepts, techniques, technical measures, and
administrative measures used to protect information assets from
deliberate or inadvertent unauthorized acquisition, damage,
disclosure, manipulation, modification, loss, or use”
ISM Information Security Management
software engineering proces (used by ESA)
ISM Information Security Management
ISM Information Security Management
ISM Information Security Management