Warning: Missing argument 2 for wpdb::prepare(), called in /home/stromber/public_html/kryptoblog/wp-content/plugins/wp-super-edit/wp-super-edit.core.class.php on line 109 and defined in /home/stromber/public_html/kryptoblog/wp-includes/wp-db.php on line 1222
July » 2008 » Kryptoblog

Archive for July, 2008

Steganografi och VoIP

July 14th, 2008

Jakob tipsade för ett tag sedan om en artikel som beskriver olika metoder för att införa steganografi i en VoIP-ström.

Artikeln Steganography of VoIP streams sammanfattning lyder:


In this paper, we circumscribe available steganographic techniques that can be used for creating covert channels for VoIP (Voice over Internet Protocol) streams.

Apart from characterizing existing steganographic methods we provide new insights by presenting two new techniques. First one is network steganography solution and exploits free/unused fields of the RTCP (Real-Time Control Protocol) and RTP (Real-Time Transport Protocol) protocols.

The second method provides hybrid storage-timing covert channel by utilizing delayed audio packets. The results of the experiment, that was performed, regardless of steganalysis, to estimate a total amount of data that can be covertly transferred in VoIP RTP stream during the typical call, are also included in this article.

Artikeln innehåller alltså en generell beskrivning av möjliga sätt att kommunicera med steganografi i en VoIP-kommunikation, en skattning av den bandbredd som går att dölja i en VoIP-ström samt två nya metoder för steganografi.

Av de två metoderna tycker jag den andra är mest intressant. Detta inte minst eftersom jag tidigare bloggat om en attack mot anonymiserad VoIP-kommunikation genom att märka VoIP-strömmen med distinkt varians mellan paketen. Här används väsentligen samma metod för att införa en steganografisk sidokanal.

Vi har precis sett att det går att utföra signalanalys på krypterad VoIP-trafik, och där lärdomen ser ut att vara att undvika CODEC:ar med variabel utbandbredd samt sända data i fixa blockstorlekar (om minst 128 bitar).

Här kommer alltså alternativa (eller komplementära) metoder där det intressanta inte går som röstkommunikation, utan det relevanta skickas i en sidokanal i RCTP och RTP alternativt som kontrollerad varians mellan paketen.

Tricket är kanske att sätta talsyntesen på att läsa upp några slumpmässigt valda Wikipedia-sidor. I denna babbelkommunikation skickas sedan (krypterad och integritetsskyddad) information gömd med steganografi.

IT-säkerhets- och kryptokapprustningen går vidare, en artikel i taget.

Säkerhetskonfiguration för Mac OS X Leopard

July 14th, 2008

(Japp, detta är en gammal nyhet. Men den är bra och värd att ta upp i alla fall.)

I slutet av maj släppte Apple ett dokument som beskriver säkerhetsmekanismerna i Mac OS X Leopard och hur mekanismerna går att konfigurera.

Leopard Security Configuration

Dokumentet Mac OS X Security Configuration (PDF på 3.4 MByte) som enligt Apple provides instructions and recommendations for securing Mac OS X version 10.5 or later, and for maintaining a secure computer. är på 240+ fullmatade sidor.

Är du Leopard-användare och/eller ansvarar för att administrera maskiner med Leopard är detta ett dokument väl värd att läsa igenom.

Avlyssning av krypterade röstsamtal

July 7th, 2008

(Kompletterat med fler funderingar och tankar.)

För några veckor sedan hade Bruce Schneier en postning om en metod för att genomföra avlyssning av krypterad VoIP-trafik.

Bruce postning pekar på en artikel hos New Scientist som innehåller mer information. I artikeln berättas att forskare vid John Hopkins-universitetet på konferensen 2008 IEEE Symposium on Security and Privacy presenterat en artikel om hur de kan detektera ord och meningar även om kommunikationen är krypterad.

En av forskarna bakom artikeln är Charles V Wright.
Charles Wright

På Charles webbplats finns två olika artiklar som beskriver olika aspekter av attacker mot krypterad VoIP-trafik. Artikeln Spot Me if You Can: Uncovering Spoken Phrases in Encrypted VoIP Conversations är den som New Scientist skriver om.

Båda artiklarna tar avstamp i att det i många digitala system för röstkommunikation används talkodare (speech encoder) som ger variabel bitlängd (VBR) på kodordet beroende på vad det är för ord som kodas. När sedan det kodade talet krypteras med ett strömkrypto som bevarar längden på kodordet upptår en varians i bitströmmen som är starkt korrelerad till orden i samtalet. Denna varians läcker alltså information om den krypterade kommunikationen, information som går att utnyttja.

Forskarna har fokuserat på CELP-baserade (Code-Exited Linear Prediction) talkodare, vilka ger upphov till variabel kod. CELB-baserade talkodare är mycket vanliga och återfinns bland annat i GSM, LTE (AMR-kodaren), flera “G.”-CODEC:ar (exempelvis G.728) och Speex. I sitt arbete har forskarna har använt Speex.

Forskarna har använt flera olika databaser med röster, databaser som används för att utveckla talkodare, för att upptäcka att det finns en korrelation mellan ord och kodat tal som är krypterat. En av de databaser som använts är TIMIT.

Ord och fraser har kodats med Speex och sedan analyserats utifrån varians. Forskarna har byggt upp en prediktor för varje fras de letar efter, Prediktorerna är Markov-modeller (HMM – Hidden Markov Model).

En Markov-modell

Prediktorerna har sedan fått titta på den krypterade bitströmmen och utvärdera om den överensstämmer med den varians som skall finnas för de fraser respektive prediktor är tränad på.

Eftersom CELP-kodare arbetar på korta fonem och frikativ blir mer komplicerade ord lättare att detektera. Ord som artificial och intelligence visade sig vara lätta att detektera. (Gissningsvis skulle Laplacetransformerade differentialekvationer sticka ut ordentligt..).

Resultatet är riktigt imponerande/skrämmande/överraskande:


Our results show that an eavesdropper who has access to neither recordings of the speaker’s voice nor even a single utterance of the target phrase, can identify instances of the phrase with average accuracy of 50%.

In some cases, accuracy can exceed 90%. Clearly, any system that is susceptible to such
attacks provides only a false sense of security to its users.

Frasen Young children should avoid exposure to contagious diseases predikterades perfekt i de tester som utförts. Forskarna fick dock en del falska träffar (false positives), men ju längre den sökta frasen var desto mindre falska fel erhölls.

I artikeln beskrivs även om försök att skydda kommunikationen genom att fylla ut den variabla bitströmmen till block om 128, 256 eller 512 bitar. Paddning visade sig fungera mycket bra. Nackelen med paddning är att det kostar i bandbredd. 512 bit stora block med Speex ger en extra bandbredd på drygt 30%. Paddning till 128 bit verkar vara minimum att använda, vilket ger en extra bandbredd på 16.5%.

Den andra, något äldre artikeln, Language Identification of Encrypted VoIP Traffic: Alejandra y Roberto or Alice and Bob? visar hur det går att identifiera vilket språk som talas i en krypterad VoIP-kommunikation. Detta utan orden i samtalet identifieras.

Författarna använder här variansen i samtalet i kombination med information om fördelning av ord, och speciellt bigram och trigram av ord för olika språk. Dessa fördelningar används för att skapa mönster eller prediktorer. Och det fungerar mycket bra. Forskarna skriver:


For instance, our 21-way classifier achieves 66% accuracy, almost a 14-fold improvement over random guessing. For 14 of the 21 languages, the accuracy is greater than 90%. We achieve an overall binary classification (e.g., “Is this a Spanish or English conversation?”) rate of 86.6%.

Även i den här artikeln har författarna undersökt hur väl det fungerar att försöka eliminera variansen genom att padda det kodade samtalet upp till fixa storlekar:


Padding to 128-bit blocks is largely ineffective because there is still sufficient granularity in the packet sizes that we can map them to basically to th esamet hree bins used by our improved classifier inSection4.2.

Even with192- or 256-bit blocks, where dimensionality reduction does not offer substantial improvement, the correct language can be identified on the first guess over 27% of the time — more than 5 times better than random guessing.

Sammantaget innebär resultaten i båda artiklarna alltså att även om det inte går avlyssna/tolka vad som sägs i ett samtal, går det att identifiera vilket språk som samtalet förs på!

Notera att det inte spelar någon som helst roll vilket krypto som används (så länge som variansen är bevarad). Kryptot kan vara hur bra som helst. Detta är ett exempel på en sidoattack och sättet att skydda sig mot detta är att inte tillåta någon varians, utan att kasta bandbredd på problemet och köra med en kodare som har en fix bandbredd ut. En sådan kodare är GSM Enhanced Full Rate, men även Speex innehåller en kodare med fix bandbredd.

En annan observation är att attackerna som presenteras i de två artiklarna är förhållandevis (förvånande) enkla. När väl prediktorerna har tagits fram krävs det lite beräkningskapacitet för att utföra attacken på strömmande data. Har man bara en kraftfull dator borde det inte vara något problem att titta på trafik realtid, iaf för ett begränsat antal samtal och begränsat antal fraser.

Jag hade dock valt att bygga en implementation av artiklarna med FPGA:er.

En FPGA
En trevlig FPGA från Altera.

Markovkodarna borde gå kanonfint att implementera som finita tillståndsmaskiner (FSM) med träningsmönster och tillstånd i block-RAM. En FSM-baserad HMM borde hinna med att hantera flera fraser (tidsmultiplex), och i en FPGA borde det gå att få in hundratals HMM:er.

Med hjälp av tekniken i den gamla artikeln detekterar man vilket språk som gäller. Utifrån den kunskapen laddar man in de träningsmönster som gäller i block-RAM. Sedan kan FPGA:erna leta efter intressanta mönster. Vid träff går man vidare och gör en mer detaljerad analys.

Så hade jag gjort.

På Charles Wrights webbplats finns en hel del andra intressanta artiklar vad gäller trafikanalys på krypterad trafik. Bland annat hur man kan identifiera och visualisera vilken typ av data (videoström, filöverföring, epost, webbsidor) som skickas i en krypterad ström. Mycket spännande om man är intresserad av att veta hur modern trafikanalys kan gå till, och vad man kan göra för att skydda sig.

Guido van Rossum om säkerheten i Google App Engine

July 2nd, 2008

Sprang på en intervju med Guido van Rossum, skaparen av Python och BDFH (Benevolent Dictator For Life) om säkerheten i Google App Engine.

Guido van Rossum.
Guido van Rossum en glad och vänlig diktator.

Tyvärr är intervjun kanske den mest intressanta då Guido mest försöker undvika prata om specifika saker som gjorts för att säkra upp Google App Engine. Det blir mycket svar av den här typen:


cloudsecurity.org: Please provide some examples of how those principles played out in terms of the current implementation?

GvR: Sorry, we don’t divulge such information.
...
cloudsecurity.org: How do you contain an attacker that exploits bugs in App Engine from exploiting the underlying OS and potentially interfering with other users processes or attacking backend systems?

GvR: You are correct that there are strong measures in place, but I’m not at liberty to discuss details.

Det finns dock en del annat i intervjun som gör att den är läsvärd i alla fall.

En person som varit delaktig i säkerhetsarbetet med Google App Engine är App Engine. Det finns en sida med videopresentation och referat där han berättar mer.

Nya anti-terror-uppfinningar

July 1st, 2008

Hot och terror verkar vara en bra grogrund för uppfinningsrikedom, speciellt om man tror sig kunna tjäna pengar. Neatorama har en postning om de 10 konstigaste anti-terror-uppfinningarna.

Bland uppfinningarna finns den briljanta fall-luckan för flygplan:
Fall-lucka i flygplan.

Förvånande nog är inte tanken att terroristen skall falla rätt ur flyget, utan ner i en liten grop. En grop utan ormar eller krokodiler.

Just flygsäkerhet har jag bloggat om tidigare, bland annat ett EU-projekt där man med bildigenkänning skall identifiera terrorister på flyget (undrar om dom går att lura med en bild, precis som cigarettautomaterna i Japan?).

En liknande tanke är U.S. Patent 6970105, Passenger control system during a plane flying inne på. Men här är det ett armband som om du verkar för nervös ger dig något lugnande:

Sprutarmbandet.

Botar kanske som en bieffekt flygrädsla. Och om alla passagerare är utslagna behöver man inte släpa med vagnar i kabinen och dela ut ostmackor.

Min favorit är det flygande paraplyt som skall hindra att gamla hippies spränger sig i luften (vilket som alla vet är precis vad hippies brukar göra):
Stopp å väx mot hippies.

På en annan sida finns även en beskrivning om en BH som skyddar mot gasattacker:
BH1
En helt vanlig BH, men när terroristen släpper ut sin gas är det bara att bygga om BH:n till en gasmask för dig. Som bonus kan även någon få den andra halvan (att lukta på).

BH2

Jösses. Visst, vem som helst kan skicka in ett patent. Frågan är om vilka som kommer till praktisk användning. Jag är tyvärr inte säker på att sprutarmbandet inte kan komma att seriöst övervägas…

Bildigenkänning lurad med bild

July 1st, 2008

I Japan har man tydligen infört nya cigarettautomater. I ett försök att kontrollera åldern på de som försöker köpa cigaretter är automaterna utrustade med ett system för bildigenkänning.

En ciggautomat från Japan.
En av de biometriskt utrustade cigarettautomaterna.

För att få köpa cigaretter behöver man antingen hålla upp sitt RFID-utrustade ID-kort (vilket de tydligen infört i Japan – kallas Tespo) framför kameran i automaten. Alternativt ställer man sig framför maskinen som avgör om man ser ut att vara gammal nog att få röka.

Tillverkaren Fujitaka berättar hur automaten fungerar:


The face-recognition machines rely on cameras that scan the purchaser’s face for wrinkles, sagging skin and other signs of age. Facial characteristics are compared with a database of more than 100,000 people, and if the purchaser is thought to be well over 20 years old (the legal age), the sale is approved.

If the purchaser looks too young, they are asked to prove their age by inserting a driver’s license. According to Fujitaka, the machines are 90% accurate.

Men som några upptäckt är automaten precis lika duktig på att bedöma åldern på personer på bild… som hålls upp framför automaten. Ett 15 cm foto från en tidning på en medelålders man accepterades som ett verkligt ansikte av automaten.

Biometri är besvärligt, speciellt att bedöma vems biometriska egenskaper man egentligen försöker mäta upp.