Mjukvarubugg hos Fastly slog ut Amazon, Reddit och stora nyhetssajter

Permalänk
Melding Plague

Mjukvarubugg hos Fastly slog ut Amazon, Reddit och stora nyhetssajter

Fastly avfärdar spekulationer om att en illasinnad attack låg bakom att många högtrafikerade webbplatser var oåtkomliga under en knapp timme.

Läs hela artikeln här

Visa signatur

Observera att samma trivselregler gäller i kommentarstrådarna som i övriga forumet och att brott mot dessa kan leda till avstängning. Kontakta redaktionen om du vill uppmärksamma fel i artikeln eller framföra andra synpunkter.

Permalänk
Medlem

nä men se Testmiljö, det är inget vi tycker är värt att investera i.

// LZ

Permalänk
Medlem

Så gick det med dina tankar om en riktad attack @crew seven

Visa signatur

i9 11900k ||32GB 4000MHz CL15||ASUS ROG STRIX Z590-E||Noctua NH-D15s
Intel Arc a750 ||Samsung 980 pro|| EVGA Supernova G3 850W
Asus xonar essence STX|| Lian-Li O11 Dynamic XL
Asus VG27AQ 165Hz IPS, Sennheiser HD650, Logitech g502 Hero, fUnc f30r, Vortex TAB90M, Audio-Technicha ATR2500x-USB
Server: x10SL7-F, Xeon E3 1230v3, 32GB Samsung ECC ram, 6x3TB WD RED, FD Node 804.

Permalänk
Inaktiv
Skrivet av Tea42BBS:

nä men se Testmiljö, det är inget vi tycker är värt att investera i.

// LZ

"Dessutom har man inlett en utredning för att ta reda på hur buggen lyckades slinka igenom testprocessen."

Permalänk
Medlem

Skönt att veta att det är inkompetens som sänker webbtjänster och inte attacker

Permalänk
Avstängd

Tur att inte Ubisoft är CDN-leverantör!

Visa signatur

"Företagsboendeförmedlare" | Min Überkill Dator: Processor: Intel Pentium P5 66 Mhz OC | Moderkort: ASRock P4I65G | Minnen: 2st Samsung 128MB PC133 | Grafikkort: Canopus GeForce 256 DDR | Lagring: IBM 350 4,4 MB | Operativsystem: DOS/360 | Chassi: Mercury Full-Tower ATX Chassis |

Permalänk
Medlem

Intressant läge där en kunds konfiguration kan slå ut hela systemet för alla kunder, känns som det är något generellt galet i arkitekturen där utöver just den buggen som nu råkade slå till.

Permalänk
Medlem
Skrivet av Tea42BBS:

nä men se Testmiljö, det är inget vi tycker är värt att investera i.

// LZ

Så sant! Och chefen på Fastly skyller på QA och testgrupperingar? Blir så jäkla sur när jag ser sådant för jag vet vilka resurser ledningar är villiga att lägga på detta... Och garanterat att det fanns en fast deadline som inte gick att rucka på.

Visa signatur

Processor: Motorola 68000 | Klockfrekvens: 7,09 Mhz (PAL) | Minne: 256 kB ROM / 512 kB RAM | Bussbredd: 24 bit | Joystick: Tac2 | Operativsystem: Amiga OS 1.3

Permalänk
Medlem

Slowly

Permalänk
Medlem
Skrivet av Tea42BBS:

nä men se Testmiljö, det är inget vi tycker är värt att investera i.

// LZ

"Everybody has a test environment. Some are lucky enough to have a separate production environment"

Vet inte vem som sagt det först, men det stämmer bra väl

Permalänk
Medlem
Permalänk

Vad är skillnaden mellan Fastly och Cloudflare? Gör de samma sak?

Permalänk
Medlem
Skrivet av Bardropper:

Vad är skillnaden mellan Fastly och Cloudflare? Gör de samma sak?

ja dom är konkurrenter.

Permalänk
Medlem
Skrivet av talonmas:

Så sant! Och chefen på Fastly skyller på QA och testgrupperingar? Blir så jäkla sur när jag ser sådant för jag vet vilka resurser ledningar är villiga att lägga på detta... Och garanterat att det fanns en fast deadline som inte gick att rucka på.

Att ha separata QAs och testgrupperingar tyder på amatörer till utvecklare.

Permalänk

"Drabbades av en bug"
Det betyder förmodligen att nån antingen skrev den buggen nyligen, eller lade till kod som visade upp den. Hyffsat svettigt att vara ansvarig där alltså

Permalänk
Medlem
Skrivet av dmlr:

Att ha separata QAs och testgrupperingar tyder på amatörer till utvecklare.

Menar du att QA och test är två separata grupper eller att test utförs separat från utvecklingen?

Men jag tvivlar på att de är amatörer. Kolla vilket backend de har skapat.

Visa signatur

Processor: Motorola 68000 | Klockfrekvens: 7,09 Mhz (PAL) | Minne: 256 kB ROM / 512 kB RAM | Bussbredd: 24 bit | Joystick: Tac2 | Operativsystem: Amiga OS 1.3

Permalänk
Medlem
Skrivet av talonmas:

Menar du att QA och test är två separata grupper eller att test utförs separat från utvecklingen?

Men jag tvivlar på att de är amatörer. Kolla vilket backend de har skapat.

Huruvida dom har QA och test som separata grupper är väl svårt att säga utan att få tag på ett organogram.
Det går inte ens att veta huruvida dom har en QA avdelning. Gissningsvis har dom i alla fall inte en QA avdelning med något slags mandat att säkerställa kvaliteten.

Att dom skapat en fantastisk backend har noll relevans till om dom är amatörer på området kvalitetsäkring och test. Det är inte testarna som bygger backend. Det gör utvecklare. Och det har dom säkerligen en hel del som är kompetenta.

Jag skulle säga att den här incidenten är ett ganska tydligt exempel på ett företag som (liksom många andra) har alldeles för lite fokus på kvalitetssäkring och testning och framför allt en korkad syn på hur det borde hanteras.

Permalänk
Medlem
Skrivet av mandrag0ran:

"Drabbades av en bug"
Det betyder förmodligen att nån antingen skrev den buggen nyligen, eller lade till kod som visade upp den. Hyffsat svettigt att vara ansvarig där alltså

Det stod väl i texten att det var på grund av något som deployats i maj och att problemet endast kunde "triggas" om någon kund gjorde en viss kombination av inställningar.

Hur som håller med om att det skulle vara lite jobbigt att vara den som commitade ändringarna.. Men samtidigt måste ändringarna ha granskats av flera och utöver det kan man också som andra redan varit inne på, tycka att testningen borde upptäckt felet.

Tycker ändå det löste felet snabbt med tanke på att det var från en commit som varit deployad över en månad utan att felet uppstått.

Visa signatur

13700K & GTX 3070

Permalänk
Inaktiv
Skrivet av mandrag0ran:

"Drabbades av en bug"
Det betyder förmodligen att nån antingen skrev den buggen nyligen, eller lade till kod som visade upp den. Hyffsat svettigt att vara ansvarig där alltså

Eller så var det en släng av Covid det är ju en elak bug om något

Permalänk
Medlem
Skrivet av sba74:

Huruvida dom har QA och test som separata grupper är väl svårt att säga utan att få tag på ett organogram.
Det går inte ens att veta huruvida dom har en QA avdelning. Gissningsvis har dom i alla fall inte en QA avdelning med något slags mandat att säkerställa kvaliteten.

Att dom skapat en fantastisk backend har noll relevans till om dom är amatörer på området kvalitetsäkring och test. Det är inte testarna som bygger backend. Det gör utvecklare. Och det har dom säkerligen en hel del som är kompetenta.

Jag skulle säga att den här incidenten är ett ganska tydligt exempel på ett företag som (liksom många andra) har alldeles för lite fokus på kvalitetssäkring och testning och framför allt en korkad syn på hur det borde hanteras.

Jag jobbar som testledare och test manager så jag är alltid intresserad av att utveckla mig inom området. Hur skulle man hitta en defekt som uppstår under väldigt specifika förhållanden och månen är i zenit? Testa allt?

Visa signatur

Processor: Motorola 68000 | Klockfrekvens: 7,09 Mhz (PAL) | Minne: 256 kB ROM / 512 kB RAM | Bussbredd: 24 bit | Joystick: Tac2 | Operativsystem: Amiga OS 1.3

Permalänk
Medlem
Skrivet av talonmas:

Jag jobbar som testledare och test manager så jag är alltid intresserad av att utveckla mig inom området. Hur skulle man hitta en defekt som uppstår under väldigt specifika förhållanden och månen är i zenit? Testa allt?

Svårt att svara generellt på det men det viktigaste med det hela är verkligen att på riktigt anamma testdriven utveckling. Många pratar om det men i praktiken är det relativt ovanligt att det verkligen görs ordentligt utanför dom mest kritiska operationerna (banker/medicin). Om man hela tiden jobbar med metoden att vi definierar input - output när vi ska skapa något och skriver testerna parallellt med utvecklingen (eller innan, smaksak det där) så kommer vi täcka in den absoluta majoriteten av alla buggar.

Dom talar om specifik konfiguration och om vi tar det till att mena det mer komplexa fallet med X parametrar som alla måste vara specifika värden för att orsaka buggen (och inte det mer vanliga, en specifik parameter med ett specifikt värde) så behöver vi ett lager till utöver det ovan (enhetstester). För nästa lager (integrationstestning) blir allt långt mer komplext som du såklart vet, här måste man jobba utifrån use-cases, vad tror vi att folk kommer göra? Och skriva tester för det.

I detta fallet där dom utvecklat en ny funktion så verkar det som att dom inte täckt in ett sätt att använda funktionen på i sina tester, men alla olika sätt går inte rimligt att skriva testfall för om man har många parametrar. Men det finns verktyg som kan automatgenerera sådana tester. Blir det tillräckligt många så tar testerna för lång tid för att man ska kunna vänta på dom i sin CI/CD pipe, då får man välja ut ett subset som core grejer som körs som del i pipe:en och sen nattliga tester på hela sviten.

Sen kan man ta en sida ur Netflix tankesätt också, de utvecklade internt ett "verktyg" som heter Chaos Monkey som live i produktion sänker godtyckliga servrar och applikationer/noder för att på så sätt tvinga fram bättre redundans och felhantering. Samma princip har ju länge använts inom testning, att försöka ha "sönder" koden, men kan man automatisera det? Låta den slumpa fram indata och tugga loss i sin egen instans och se vad som smäller.

Permalänk
Medlem
Skrivet av sebstr:

Det stod väl i texten att det var på grund av något som deployats i maj och att problemet endast kunde "triggas" om någon kund gjorde en viss kombination av inställningar.

Hur som håller med om att det skulle vara lite jobbigt att vara den som commitade ändringarna.. Men samtidigt måste ändringarna ha granskats av flera och utöver det kan man också som andra redan varit inne på, tycka att testningen borde upptäckt felet.

Tycker ändå det löste felet snabbt med tanke på att det var från en commit som varit deployad över en månad utan att felet uppstått.

I en normal hälsosam företagskultur ska personen, teamet etc som gjort commit inte direkt påverkas då bestraffning av sådant istället leder till rädsla att göra ändringar. Möjligen några pikar i fikarummet men är det mer än så, då har företaget större problem än en bug.

Visa signatur

"One is always considered mad, when one discovers something that others cannot grasp."
- Ed Wood

Permalänk
Medlem
Skrivet av Ferrat:

I en normal hälsosam företagskultur ska personen, teamet etc som gjort commit inte direkt påverkas då bestraffning av sådant istället leder till rädsla att göra ändringar. Möjligen några pikar i fikarummet men är det mer än så, då har företaget större problem än en bug.

Ja det har du givetvis helt rätt i.

Visa signatur

13700K & GTX 3070

Permalänk
Medlem
Skrivet av takeoninja:

Svårt att svara generellt på det men det viktigaste med det hela är verkligen att på riktigt anamma testdriven utveckling. Många pratar om det men i praktiken är det relativt ovanligt att det verkligen görs ordentligt utanför dom mest kritiska operationerna (banker/medicin). Om man hela tiden jobbar med metoden att vi definierar input - output när vi ska skapa något och skriver testerna parallellt med utvecklingen (eller innan, smaksak det där) så kommer vi täcka in den absoluta majoriteten av alla buggar.

Dom talar om specifik konfiguration och om vi tar det till att mena det mer komplexa fallet med X parametrar som alla måste vara specifika värden för att orsaka buggen (och inte det mer vanliga, en specifik parameter med ett specifikt värde) så behöver vi ett lager till utöver det ovan (enhetstester). För nästa lager (integrationstestning) blir allt långt mer komplext som du såklart vet, här måste man jobba utifrån use-cases, vad tror vi att folk kommer göra? Och skriva tester för det.

I detta fallet där dom utvecklat en ny funktion så verkar det som att dom inte täckt in ett sätt att använda funktionen på i sina tester, men alla olika sätt går inte rimligt att skriva testfall för om man har många parametrar. Men det finns verktyg som kan automatgenerera sådana tester. Blir det tillräckligt många så tar testerna för lång tid för att man ska kunna vänta på dom i sin CI/CD pipe, då får man välja ut ett subset som core grejer som körs som del i pipe:en och sen nattliga tester på hela sviten.

Sen kan man ta en sida ur Netflix tankesätt också, de utvecklade internt ett "verktyg" som heter Chaos Monkey som live i produktion sänker godtyckliga servrar och applikationer/noder för att på så sätt tvinga fram bättre redundans och felhantering. Samma princip har ju länge använts inom testning, att försöka ha "sönder" koden, men kan man automatisera det? Låta den slumpa fram indata och tugga loss i sin egen instans och se vad som smäller.

Det du pratar om är väldigt standard o type det man lör sig på en tvådagars kurs om agil utveckling. Problemet, och som man får lära sig första minuten, är att man aldrig kan testa allt. Aldrig. Du kan vara scripta och automatisera scenarion som du vet om.

Ditt prat om agilt och ci/cd får mig att tro att du jobbat mycket inom produktbolag. Där är SUT extremt isolerat och där kanske det fungerar med det du säger. Har ingen erfarenhet tyvärr

Där jag jobbar, och på tidigare arbetsplatser, så utvecklar vi system som ska interagera med kanske 60 andra system och hundratals integrationer. Vissa nya, vissa webbaserade och vissa skrivna i språk där samtliga utvecklare dött. Här kan man omöjligt och aldrig förutse extremfall. Man kommer alltid bli tagen på sängen. Så man får jobba mer med mitigering, rollbackrutiner osv. Och Fastly var ganska snabbt på benen så de har nog testat sina rutiner ganska bra ändå.

Och då har jag inte ens nämnt arbete med känslig data där alla system och testare ska hållas separerade. Nä, jag önskar att vi körde devops o liknande men är nöjd så länge vi kan köra agilish

(Nu ska jag förbereda test enligt GDP, blir inte mer stelbent än så, lol)

Visa signatur

Processor: Motorola 68000 | Klockfrekvens: 7,09 Mhz (PAL) | Minne: 256 kB ROM / 512 kB RAM | Bussbredd: 24 bit | Joystick: Tac2 | Operativsystem: Amiga OS 1.3

Permalänk
Medlem
Skrivet av talonmas:

Det du pratar om är väldigt standard o type det man lör sig på en tvådagars kurs om agil utveckling. Problemet, och som man får lära sig första minuten, är att man aldrig kan testa allt. Aldrig. Du kan vara scripta och automatisera scenarion som du vet om.

Ditt prat om agilt och ci/cd får mig att tro att du jobbat mycket inom produktbolag. Där är SUT extremt isolerat och där kanske det fungerar med det du säger. Har ingen erfarenhet tyvärr

Där jag jobbar, och på tidigare arbetsplatser, så utvecklar vi system som ska interagera med kanske 60 andra system och hundratals integrationer. Vissa nya, vissa webbaserade och vissa skrivna i språk där samtliga utvecklare dött. Här kan man omöjligt och aldrig förutse extremfall. Man kommer alltid bli tagen på sängen. Så man får jobba mer med mitigering, rollbackrutiner osv. Och Fastly var ganska snabbt på benen så de har nog testat sina rutiner ganska bra ändå.

Och då har jag inte ens nämnt arbete med känslig data där alla system och testare ska hållas separerade. Nä, jag önskar att vi körde devops o liknande men är nöjd så länge vi kan köra agilish

(Nu ska jag förbereda test enligt GDP, blir inte mer stelbent än så, lol)

Absolut, så är det, utgick helt ifrån hur Fastly skulle gjort med sin produkt, då det var den som felade och de som teoretiskt skulle ha kunnat hitta buggen via testning. Integrationstestning som du pratar om är en helt annan best och man kan mycket riktigt inte testa allt, varför jag nämnde testa utifrån use cases för att säkra alla viktiga/primära flöden. Utöver det, för att få ett säkert/stabilt system, handlar det om att skapa säkerhetsdörrar och vattenlås i systemet, se till så att om något börjar mumsa trådar eller läcka minne etc.

så hindras det från att sänka hela applikationen. I detta fallet skulle det ha yttrat sig som att för just den kunden som triggade buggen skulle systemet vara otillgängligt eftersom de sänkte varje instans de pratade med med sin konf. Men alla andra kunder skulle inte ha påverkats av det om dom tagit det konceptet fullt ut.

För så komplexa miljöer du jobbar i är det dock bara att inse som du säger att det inte går att förutspå allt så man måste istället jobba med att kunna rädda och gå tillbaka till ett tidigare stable state.

Sen, ja, alla lär sig det där i kurs 101-A men väldigt få tillämpar det faktiskt hela vägen i min erfarenhet. Många kör någon halvmesyr av sunkiga enhetstester och klagar om att "se jag gjorde det och det hjälpte inte, kan jag få sluta med det nu och bara koda?"

Permalänk
Medlem
Skrivet av takeoninja:

Absolut, så är det, utgick helt ifrån hur Fastly skulle gjort med sin produkt, då det var den som felade och de som teoretiskt skulle ha kunnat hitta buggen via testning. Integrationstestning som du pratar om är en helt annan best och man kan mycket riktigt inte testa allt, varför jag nämnde testa utifrån use cases för att säkra alla viktiga/primära flöden. Utöver det, för att få ett säkert/stabilt system, handlar det om att skapa säkerhetsdörrar och vattenlås i systemet, se till så att om något börjar mumsa trådar eller läcka minne etc.

så hindras det från att sänka hela applikationen. I detta fallet skulle det ha yttrat sig som att för just den kunden som triggade buggen skulle systemet vara otillgängligt eftersom de sänkte varje instans de pratade med med sin konf. Men alla andra kunder skulle inte ha påverkats av det om dom tagit det konceptet fullt ut.

För så komplexa miljöer du jobbar i är det dock bara att inse som du säger att det inte går att förutspå allt så man måste istället jobba med att kunna rädda och gå tillbaka till ett tidigare stable state.

Sen, ja, alla lär sig det där i kurs 101-A men väldigt få tillämpar det faktiskt hela vägen i min erfarenhet. Många kör någon halvmesyr av sunkiga enhetstester och klagar om att "se jag gjorde det och det hjälpte inte, kan jag få sluta med det nu och bara koda?"

Trevligt med fler som jobbar inom samma område. Kanske dags för den stora SweTesters tråden?

Visa signatur

Processor: Motorola 68000 | Klockfrekvens: 7,09 Mhz (PAL) | Minne: 256 kB ROM / 512 kB RAM | Bussbredd: 24 bit | Joystick: Tac2 | Operativsystem: Amiga OS 1.3

Permalänk
Medlem
Skrivet av BergEr:

Så gick det med dina tankar om en riktad attack @crew seven

Samma grupp som ligger bakom Coop, det va bara början.

Visa signatur

Min dator är Cat-säker.
Hakuna Matata