Ontwikkeling van veilige software: verschil tussen versies
Naar navigatie springen
Naar zoeken springen
Geen bewerkingssamenvatting |
17-1-2006 |
||
Regel 37: | Regel 37: | ||
*Bytecode verificatie van mobiele code en verificatie van handtekeningen op mobiele code zijn twee mechanismen die de JVM gebruikt om te beschermen tegen "kwaadaardie" code. Bespreek in hoeverre het nuttig is om beide mechanismen te combineren. Of met andere woorden: is het al dan niet nog zinvol om bytecode verificatie te doen van een klasse waarvan de handtekening al correct geverifieerd is? | *Bytecode verificatie van mobiele code en verificatie van handtekeningen op mobiele code zijn twee mechanismen die de JVM gebruikt om te beschermen tegen "kwaadaardie" code. Bespreek in hoeverre het nuttig is om beide mechanismen te combineren. Of met andere woorden: is het al dan niet nog zinvol om bytecode verificatie te doen van een klasse waarvan de handtekening al correct geverifieerd is? | ||
*Bespreek het systeemmodel voor een multi-user besturingssysteem | *Bespreek het systeemmodel voor een multi-user besturingssysteem | ||
*Bespreek verificatie van een certificaat in een PKI |
Versie van 17 jan 2006 19:49
- Bespreking project (5pt)
- Geef een definitie van volgende begrippen: (1pt per begrip)
- collision-resistant
- opaque en transparent keys
- type sound
- single sign-on
- buffer overflow attack
- chosen-plaintext attack
- DAC
- Operation Modes (bij Block Ciphers)
- Key Authentication / Key Confirmation
- Geef een overzicht van de belangrijkste cryptografische primitieven, en zeg welke bescherming ze bieden. (5pt)
- Ontwikkel een veilig systeem om een garagedeuropener te laten werken met een poort zodat een vijand die alle radiosignalen opvangt niet de poort kan openen. Analyseer de veiligheid van het door u ontwikkelde systeem (zwakheden e.d.) de poort kan niet terugsturen naar de zender (dus 1 richtingsverkeer)
- digi cash volledig uitleggen
- wat betekent het als een taal safe is, wat is type soundness in deze context, en wat is de invloed van deze twee begrippen op de veiligheid van software?
- in het kerberos protocol houden de clients de tickets bij als een soort "capabilities". de servers houden geen informatie bij over hun clients. men zou het protocol zo kunnen aanpassen dat de servers een soort tokens bij houden, waarbij deze tokens de informatie bevatten over de identiteit van de client en de sessiesleutel die gebruikt wordt voor deze client. beschrijf welke aanpassingen er nodig zijn aan het protocol om op deze alternatieve manier te werken, welke voordelen en nadelen je aan het nieuwe systeem ziet.
- Ontwerp een beveiliging voor een garagepoort met afstandsbediening. Het moet onmogelijk zijn om de radiogolven op te nemen en later opnieuw af te spelen. De afstandsbediening stuurt 1 digitale boodschap. Hoe ziet die er uit? Geef beveiligingsaspecten bij je ontwerp. Hoe gaat het algoritme in de garagepoort te werk?
- Leg Mandatory Acces Control uit en laat zien hoe het omgaat met Trojans.
- Bespreek Kerberos (5punten) zowel single sign-on als authenticatie als ..(nog iets)
- bijvraag: wat als je in stap 3 de authenticator {A,T}Ka weglaat?
- antwoord: meer aanvallen mogelijk op KDC
- bijvraag: wat als je in stap 3 de authenticator {A,T}Ka weglaat?
- Bespreek Access Control in Win2000 (5p)
- bijvraag: kan je tot meerdere groepen tegelijk horen (antwoord = JA)
- Wat is sandboxing? En waarvoor dient het? (5p)
- leg buffer overflow uit
- bijvraag: hoe kunt ge als ge een gecompileerd C programma koopt en ge wilt niet testen op bufferoverflow toch zorgen dat ge niet met een bufferoverflow wordt aangevallen ?
- antwoord:zorgen dat uw OS onderscheid maakt tussen code en data in het geheugen data kan nooit worden uitgevoerd (ook niet als ge daar code overschrijft)
- leg stack walking uit voor mobiele code
- wat is MAC, + Trojaanse paard en verband tussen beide (5punten)
- geef commentaar op "SSL is waardeloos zonder deftige PKI" (5 punten)
- wat is het belang van enable_permission(0 en disable_permission() bij stackwalking
- Wat is een "man-in-the-middle" aanval? Geef een concreet voorbeeld.
- Geef een overzicht van hoe de Java Cryptografie Architectuur en Extensies werken.
- Geef een overzicht van mogelijke oorzaken van software beveiligings-zwakheden (vulnerabilities).
- Wat is een "Cryptographic Service Provider (CSP)"? Hoe werken CSP's en wat zijn de voordelen ervan?
- Bytecode verificatie van mobiele code en verificatie van handtekeningen op mobiele code zijn twee mechanismen die de JVM gebruikt om te beschermen tegen "kwaadaardie" code. Bespreek in hoeverre het nuttig is om beide mechanismen te combineren. Of met andere woorden: is het al dan niet nog zinvol om bytecode verificatie te doen van een klasse waarvan de handtekening al correct geverifieerd is?
- Bespreek het systeemmodel voor een multi-user besturingssysteem
- Bespreek verificatie van een certificaat in een PKI