För ett antal månader sedan skrev jag om vikten av samarbete snarare än att försöka lösa alla problem själv. Och det är fortfarande givetvis sant. Dock verkar inte alla företag och organisationer fatta detta, så man vill istället slå ett slag för ”rockstjärnan”. Titeln ”Rockstar developer” syftar på en utvecklare som med sin attityd och sitt kunnande är en enmans (eller kvinnas!) armé. En person som är en legend som är superkreativ på samma sätt som en riktig rockstjärna. Dock förväntas denna person på något märkligt sätt att följa regler och fungera bra i team samt inte knarka på arbetsplatsen.
Jag känner till många ”rockstjärnor” som jag sett under mina dagar i branschen. De behöver givetvis inte vara just utvecklare, men de är alltid samma typ av person: kan allt, gör allt och vill dessutom bygga allt själva. De lämnar efter sig egenbyggda lösningar som fungerar olika bra. Ingen har insikt i dem och de är inte dokumenterade. På ett av mina jobb såg jag ett verktyg byggt av en talangfull anställd som gjort allting och sedan lämnat bygget. Jag såg rätt snabbt att denna applikation var redigt problematisk. Den var om jag minns rätt öppen för SQL-injektioner, Local File Inclusions och XSS. Jag läckte snabbt ut lösenordet ur databasen och meddelade sedan IT-ansvarige och förklarade att detta måste fixas omedelbart. ”Rockstjärnan” som skapade detta verktyg hade visserligen byggt något som var mycket användbart, men hade trots allt ingen koll på säkerheten.
En ”Rockstjärna” jobbar på sitt eget rykte och är känd för att leverera och lösa alla problem utan att för den delen lyssna på vad någon annan har att säga. Lösningarna är enligt vederbörande ett tecken på genialitet och kreativa idéer. Men kreativa lösningar är dåliga lösningar som inte följer någon form av standarder. Personen vägrar, som sagt, låta andra göra någon del av jobbet, eftersom det då solkar ner Rockstjärnans rykte som perfekt och ofelbar. Siten Daily WTF är full av exempel på program och kod efterlämnade av dessa hjältar som ingen vågat kritisera eller granska.
Rätt uppenbart är dessa personer, särskilt om de är utvecklare, en källa för stora problem för folk inom säkerhetsbranschen.
Så vad vill man ha? Precis vad jag sagt tidigare: en grupp med olika kompetenser som samarbetar och levererar en uttestad och säker produkt utan att det blir en utpekad persons ”pet project”. Gruppen kan komma att förändras, men arbetet fortsätter och dokumenteras. Produkten hålls säker genom att använda standardiserade ramverk, följa säker utveckling enligt t.ex. OWASP och ha ett ”livscykel”-tänkande.
Detta tangerar min tidigare diskussion om ”De som lovar för mycket”. Dock pratar vi här lika mycket om utvecklare som andra roller inom IT-världen, eftersom dessa påverkar organisationens säkerhet. Så IT-säkerhetsbranschen själv är lika sannolik att ha dessa personer som på något sätt anser sig stå över kritik och att behöva följa en metodik som fungerar.