onsdag 13 maj 2009

Sammanfattningar från fler av dagens föreläsningar på AppSec09

Som John skrev är vi några svenskar på plats här nere på AppSec09 i Krakow. John har föredömligt skrivit om två av dagens föreläsningar. Men det var ju fler än så, och därför kommer jag (Carl-Johan Bostorp) att fylla på med lite korta sammanfattningar om några av de övriga.

Leveraging agile to gain better security
Erland Oftedal från Norge berättade om sina erfarenheter om hur säkerhet kan integreras i agile-utveckling. Han grundade med en introduktion till agile och varför man använder agile. "We reflect after each iteration" summerade upp agile - man gör många iterationer för att till slut komma i fatt ett rörligt mål. Mellan varje iteration reflekterar man över om saker går som de ska. Agile bygger till stor del på snabb feedback.

Erland ville lyfta fram hur man kunde arbeta med säkerhet i agile-projekt genom att göra det till en kontinuerlig del. Genom det kommer man dessutom ifrån de vanliga problemen med att säkerhet bara brukar betraktas i korta perioder då man spenderar all sin ansträngning på en gång. Exempel på hur säkerhet integreras:

  • Skriva säkerhetstestcase som körs vid varje incheckning
  • Programmera i par - få en första kodgranskning omgående och sprid kunskap samtidigt
  • Micro-workshops då en sårbarhet hittas

Mycket tyckte jag lät vettigt. En "brist" som funnits med olika metoder för säker utveckling (Microsoft SDL, Cigital Touchpoints) är att det ofta saknats en konkret anknytning till det praktiska arbetet. Det har blivit ett smörgåsbord med aktiviteter där någon måste välja vad som ska göras, när och hur. Av den anledningen tyckte jag det var intressant att höra hur Erland i praktiken jobbade med säkerhet i utvecklingen utifrån ett agile-perspektiv.


Tracking the progress of an SDL program
Cassio Goldschmidt från Symantec/Los Angeles höll i den här föreläsningen. Den kan sammanfattas kort; använd CWE och CVSS för att jämföra äpplen och äpplen i de olika faserna (design, utveckling, test, deployed). Håll koll på hur många buggar som upptäcks i de olika faserna. En kort introduktion av CWE och CVSS gavs. Med CWE kan man lätt generalisera och rapportera uppåt, med CVSS får man mer objektiva värden på hur allvarliga sårbarheterna man hittar är.


Maturing beyond application security
Bakom den rubriken dolde sig så småningom till största delen en introduktion av BSIMM. David Harper från Fortify berättade om hur BSIMM bygger på att man observerat vad som gjorts hos de där SDL är infört på ett lyckat sätt. Några erfarenheter från Fortify nämndes dock också:

  • Integrera i vad som finns, vänta inte på "den stora SDL-rollouten" (vilket jag instämmer med)
  • Utbildning sker bäst utifrån den egna kodbasen (förutsättningarna finns dock inte alltid från början, men det kan vara en bra idé att ordna dem tidigt)

När man känner sig nöjd med SDL i sin egen organisation finns dock fortfarande kod kvar från flera olika håll: outsourcing, open source och kommersiella applikationer. David såg dessa områden som nästa utmaning där man naturligtvis också bör gå in och försöka påverka för att hantera risker.

Web Application Firewalls: What the vendors do not want you to know.
Fingerprinting och bypassing WAF:s. Håll utkik efter dessa två tools som kommer komma framöver: wafw00f, waffun.

Fingerprinting sker genom exempelvis:

  • Omskrivna headers (Server, Connection)
  • Statuskoder
  • Olika svar på icke-existerande sidor (404) beroende på om sidan finns eller om man skickade en request med attack-mönster

Bypassing sker genom exempelvis:

  • Se till att man inte matchar svartlistor:
  • Utnyttja dåliga motorer för reguljära uttryck för vitlistning: infoga ett %0a i parametern för att skilja av vad som matchas

The Software Assurance Maturity Model
Denna föreläsning har John redan skrivit om. Jag tänkte se till att fylla på lite. Pravir (som står bakom SAMM) började nämligen med att säga något som jag hade tänkt skriva här på bloggen: Man är inte ens i närheten av att ha kommit till någon vidare mognad kring hur man ska arbeta med säker utveckling. Börjar man ställa frågor kring Microsoft SDL, OWASP CLASP och Cigital Touchpoints så går det snart upp att det är så. Dock så tycker jag SAMM ser riktigt spännande ut och Pravir har en pragmatisk grundinställning. Det jag saknat i tidigare SDL är råd om prioriteringar, hur man inför dem och rent konkret, hur det är bra att gå till väga och vilka metriker man kan använda för att mäta effektivitet. SAMM har utformats för att hjälpa till även i dessa områden. Starkt rekommenderad läsning för den som vill styra upp säkerheten alltså!

Inga kommentarer: