POODLE ( Padding Oracle On Downgraded Legacy Encryption ) är en typ av attack inom datorsäkerhet som " man i mitten ", när en angripare, genom att blockera TLS 1.0 och öka antalet anslutningsförsök, får internetklienter och användare att använda SSL version 3.0 säkerhetsprogramvara med tvång [1] . Efter att systemet har rullats tillbaka till SSL 3.0 använder angriparen Padding Oracle attack .
Denna typ av sårbarhet upptäcktes av medlemmarna i Googles säkerhetsteam Bodo Möller, Tai Duong och Krzysztof Kotowicz [1] . De tillkännagav offentligt upptäckten av sårbarheten den 14 oktober 2014 [2] , trots att motsvarande artikel är daterad något tidigare - september 2014. Den 8 december samma år tillkännagavs en version av sårbarheten av typen POODLE, som även påverkar TLS- trafiken [3] . Den ursprungliga POODLE-sårbarheten lades till i databasen Commonly Known Information Security Vulnerabilities ( CVE ) med identifieraren CVE -2014-3566 [4] . F5 Networks har också ansökt om att en version av POODLE-attacken mot TLS ska läggas till databasen , som har tilldelats identifieraren CVE -2014-8730 [5] .
På grund av det faktum att denna attack utnyttjar sårbarheterna i SSL 3.0-protokollet och det inte finns någon rimlig lösning på problemet med dessa sårbarheter, för att säkerställa en säker anslutning, blev det nödvändigt att helt överge användningen av detta protokoll [1 ] . I oktober 2014 tillkännagav Google sin avsikt att helt sluta stödja SSL 3.0-protokollet i sina produkter under de närmaste månaderna [6] . Möjligheten att gå tillbaka till SSL 3.0 inaktiverades i Chrome 39, som släpptes i november 2014 [7] . Stöd för SSL 3.0- protokollet fasades ut som standard i Chrome 40, som släpptes i januari 2015 [8] . Den 29 oktober 2014 släppte Microsoft en snabbkorrigering som inaktiverade SSL 3.0-stöd i Internet Explorer och Windows Vista / Server 2003 och senare. Samma dag meddelade Microsoft att de planerar att inaktivera SSL 3.0-stöd som standard i sina produkter och tjänster inom några månader [9] . Den 10 februari 2015 inaktiverade Microsoft möjligheten att fallback till SSL 3.0 i Internet Explorer 11 -webbläsare för webbplatser i säkert läge [10] . För andra sajter gjordes detta den 14 april 2015 [11] .
POODLE är ett exempel på en sårbarhet som framgångsrikt kan utnyttjas av en mekanism utformad för att avsiktligt sänka säkerheten för en länk för kompatibilitet. För att arbeta med äldre servrar använder många TLS-klienter den så kallade "nedgraderingsdansen", som är följande: vid det första försöket att upprätta kommunikation över TLS-protokollets handskakning , uppmanar klienten servern att använda den senaste versionen av TLS som stöds av klienten . Om detta försök misslyckas försöker klienten upprätta en anslutning med en äldre version av TLS- protokollet tills anslutningen upprättas. Denna avsiktliga försämring av säkerheten av klienten kan orsakas av nätverksavbrott såväl som skadliga attacker. Således, om en angripare som kontrollerar nätverkssektionen mellan servern och klienten stör TLS-handskakningsprocessen och kasserar alla klientmeddelanden med ett erbjudande om att upprätta en säker anslutning med TLS-protokollet version 1.0 och högre, klienter som stöder "nedgraderingen" dance" kommer att vara redo att begränsa sig till ett mindre säkert SSL 3.0- . Som ett resultat används osäkra SSL -chiffersviter för att dölja data, med antingen RC4 -strömchifferet eller CBC -chifferläget, mottagliga för Padding Oracle- attacken . I händelse av ett framgångsrikt utnyttjande av denna sårbarhet skulle en angripare bara behöva utföra i genomsnitt 256 SSL 3.0 -förfrågningar för att framgångsrikt dekryptera 1 byte av krypterade meddelanden [1] [12] [13] .
Större försiktighet krävs när man designar system som ligger i mycket fragmenterade domäner, eftersom dessa domäner kan ha en utbredd mekanism för att nedgradera länkens säkerhet av angripare . Ett sätt som gör att en angripare kan minska skyddet av kanalen är att emulera kommunikationsavbrott när man använder TLS-protokollet [14] .
Ett sätt att förhindra POODLE-attacker är att helt inaktivera stödet för SSL 3.0 - protokollet på både klientsidan och serversidan . Vissa äldre klienter och servrar kanske inte stöder TLS version 1.0 eller högre. I sådana fall rekommenderar författarna till artikeln om POODLE-attacker att webbläsaren och servern stödjer mekanismen TLS_FALLBACK_SCSV [15] , som förhindrar angripare från att utnyttja sårbarheten [1] .
Ett annat tillvägagångssätt för att skydda mot sårbarheten är implementeringen av mekanismen "Anti-POODLE record splitting" - uppdelningen av data i flera delar, som var och en garanteras inte attackeras med denna sårbarhet . Problemet med datadelningsmetoden är dock att trots den exakta implementeringen av mekanismen i enlighet med specifikationen, undviker detta tillvägagångssätt inte kompatibilitetsproblem på grund av brister i mekanismens serversida [16] .
Till exempel, i Opera 25 -webbläsaren, implementeras denna mekanism utöver mekanismen "TLS_FALLBACK_SCSV" [17] . Olika versioner av Google Chrome- webbläsare och relaterade servrar gav också stöd för "TLS_FALLBACK_SCSV"-mekanismen. Mozilla inaktiverade SSL 3.0- stöd i deras webbläsare Firefox 34 och ESR 31.3 som släpptes i december 2014 och stödde "TLS_FALLBACK_SCSV"-mekanismen i Firefox 35 [18] .
Microsoft har publicerat en säkerhetsrådgivning som förklarar hur man inaktiverar SSL 3.0 i Internet Explorer och Windows OS [19] .
Apples webbläsare Safari (för OS X 10.8, iOS 8.1 och senare) motverkade POODLE-attacker genom att avskaffa alla CBC -protokoll i SSL 3.0 , men detta tillvägagångssätt gav fortfarande stöd för RC4 , som också är känsligt för RC4-attacker på SSL 3.0- [20 ] . POODLE-attacksårbarheten stängdes helt i OS X 10.11 (El Capitan 2015) och iOS 9 (2015). För att förhindra POODLE-attacker har vissa tjänster (som CloudFlare och Wikimedia, till exempel) inaktiverats för SSL 3.0 [21] .
Network Security Services - biblioteksuppsättningen version 3.17.1 och 3.16.2.3 gav stöd för "TLS_FALLBACK_SCSV"-mekanismen [22] [23] , varefter stöd för SSL 3.0-protokollet inaktiverades som standard [24] . OpenSSL - bibliotek versionerna 1.0.1j, 1.0.0o och 0.9.8zc ger stöd för "TLS_FALLBACK_SCSV"-mekanismen [25] . I LibreSSL version 2.1.1 är SSL 3.0-stödet inaktiverat som standard [26] .
En ny variant av den klassiska POODLE-attacken tillkännagavs den 8 december 2014 [3] . Denna typ av attack utnyttjar brister i implementeringen av CBC -krypteringsläget i TLS 1.0 - 1.2-protokollen. Även om TLS -specifikationerna kräver att servrar kontrollerar den så kallade "padding" (en uppsättning ytterligare bitar som läggs till en nyckel , lösenord eller vanlig text genom kryptering för att dölja deras verkliga värde), klarar vissa implementeringar av detta protokoll inte med korrekt validering, vilket gör vissa servrar sårbara för POODLE-attacker även om SSL 3.0 är inaktiverat. Denna typ av POODLE-attack anses vara farligare än den klassiska på grund av det faktum att angripare vid attack inte behöver på konstgjord väg få kanalskyddet att falla tillbaka till SSL 3.0, vilket innebär att färre operationer behövs för att slutföra en framgångsrik attack . SSL Pulse-projektet upptäckte att "ungefär 10 % av alla servrar påverkas av TLS POODLE modifieringsattacker" innan denna sårbarhet tillkännagavs [27] . Denna bugg har tilldelats CVE-ID CVE-2014-8730 i F5 Networks TLS -implementering. Information från National Vulnerability Database från NIST visar att detta CVE-ID är tilldelat till felaktiga TLS -implementationer som endast utförs av F5 Networks. Andra leverantörer som har samma "utfyllnads"-implementeringsfel (som A10 och Cisco Systems ) bör utfärda sina egna CVE-ID:n , enligt National Vulnerability Database , eftersom deras TLS - versioner inte fungerar korrekt på grund av ett fel i protokollet, men en felaktig implementering av detta protokoll [5] .