Målgrupp
Den här artikeln riktar sig till IT-säkerhetschefer, skoldistriktens CIO:er, OEM-inköpsansvariga och compliance-ansvariga som behöver förstå det kompletta CVE-hanteringsflödet bakom en modern kinesisk läspek. Den förklarar hur vårt ODM-team tar in sårbarhetsdata, matchar den mot firmware-komponenter, släpper patchar och rullar ut dem till redan driftsatta K7-, F8-, B2-, Y6-, Q8- och L5-enheter utan minsta störning i klassrummet. Den förutsätter grundläggande bekantskap med NVD, GitHub Security Advisories och OTA-uppdateringskoncept, men kräver ingen specialiserad bakgrund inom incidenthantering.
En skoldistriktsutrullning på 50 000 enheter är ett stresstest för varje uppdateringspipeline. Patchar som levereras mitt i en lektion avbryter läsövningar, förvirrar 7-åringar och genererar telefonsamtal till supporten klockan åtta på morgonen. Värre är att en dåligt iscensatt OTA kan göra enheter obrukbara i en laddvagn över natten. CVE-patchlivscykeln för en läspek måste både vara snabb (eftersom CVE:er rör sig i internethastighet) och skonsam (eftersom barn är slutanvändarna). Den här artikeln går igenom processen som vi har finslipat över 9 produktionsgenerationer av K7-firmware och 4 generationer av F8 och Y6.
De fyra faserna i CVE-livscykeln
Vi organiserar arbetet i fyra faser, var och en med ett definierat SLA och en definierad ägare:
| Fas | Aktivitet | Ägare | SLA |
|---|---|---|---|
| 1. Inhämtning | Hämta NVD-, GHSA-, OSV-, CISA KEV-flöden | Säkerhetsingenjörsteam | Dagligen 04:00 UTC |
| 2. Triagering | Matcha CVE → SBOM-komponenter; bedöm; besluta | PSIRT | 24 timmar |
| 3. Patch | Utveckla, testa, signera, iscensätta release | Firmware-ingenjörsteam | 72h kritisk \/ 14d hög \/ 45d medium |
| 4. Utrullning | OTA iscensättning → 25% → 100% av flottan | OTA-drift | 21 dagar end-to-end |
En sårbarhet som får ≥7.0 på CVSS 3.1 och har en publik exploit (listad i CISA KEV) flyttas upp till ett 72-timmars patchmål. En medium-CVE utan exploit åker med nästa kvartalsvisa release-tåg.
Fas 1: Daglig sårbarhetsinhämtning
Varje morgon klockan 04:00 UTC kör ett cron-jobb på vår säkerhetsorkestreringsserver och hämtar data från åtta flöden:
- NVD CVE JSON 2.0-flödet — primär CVE-källa, i genomsnitt ~280 nya CVE:er per dag
- GitHub Security Advisories (GHSA) — ofta före NVD när det gäller öppen källkodspaket
- OSV.dev — community-underhållet, med purl-nycklade poster för direkt SBOM-matchning
- CISA Known Exploited Vulnerabilities (KEV) — uppgraderingsväg för exploater i det vilda
- CERT\/CC vulnerability notes — samordnade multileverantörsdisclosures
- Säkerhetsflöden för Alpine, Debian, Buildroot — distrosignerade evidensuppdateringar
- Leverantörers PSIRT-flöden — Allwinner, Rockchip, Realtek, Goodix, Bestechnic
- Interna pentest-fynd — halvårsrapporter från tredjeparts red team
Inhämtningstakten är ungefär 280 till 350 CVE:er per dag, varav omkring 35 till 50 matchar komponenter som finns i vår aktiva SBOM. Matchningslogiken använder CPE 2.3, purl samt paketnamn + versions-tupel, i den prioriteringsordningen.
Fas 2: Triageringsflöde och SLA:er
En matchad CVE tilldelas en säkerhetsingenjör inom 4 timmar. Ingenjören tar fram en triageringspost som innehåller:
- Påverkade SKU:er — vilka av de 11 modellerna i vår katalog (B1, B2, F8, K7, KF1, L5, P2, Q6, Q8, T2, Y6) levereras med den påverkade komponenten
- Påverkade firmware-versioner — specifikt v3.x- eller v4.x-intervall
- Bedömning av exploitbarhet — är CVE:n åtkomlig från enhetens nätverksgränssnitt?
- Befintlig mitigering — SELinux-policy, brandväggsregel, avstängd feature flag som kanske redan blockerar vägen
- Patch-komplexitet — antal ändrade rader kod, regressionsrisk, testyta
Triagerings-SLA:t är 24 timmar för kritisk, 72 timmar för hög, 5 dagar för medium. Vi mäter och publicerar vår median-tiid för triagering på den publika dashboarden — för närvarande 11 timmar för kritiska CVE:er.
CVSS-score och justerad allvarlighetsgrad
Vi använder CVSS 3.1 som basscore men tillämpar en intern "justerad allvarlighetsgrad" som speglar läspekens faktiska driftskontext:
- Nätverks-CVE:er får en +0,5-justering eftersom de flesta läsploppar sitter på skol- eller hem-Wi-Fi bakom NAT
- Lokala CVE:er som kräver fysisk USB-åtkomst får en -1,0-justering
- Kryptografiska CVE:er som påverkar föråldrade chiffersviter som redan är avaktiverade i vår build får en -1,5-justering
- CVE:er som kräver användarinteraktion (phishing) får en -0,5-justering eftersom slutanvändarna är barn som inte klickar på länkar
En CVE med baspoängen 8,1 kan landa på 6,5 justerat, medan en baspoäng på 6,8 med aktiv KEV-exploateringslistning stannar på 7,5+ justerat tack vare +1,0 KEV-modifieraren.
Fas 3: Patchutveckling och testning
När en patch är godkänd skapar firmware-teamet en hotfix-gren från den senaste produktions-taggen. Patchen måste klara fyra grindar innan den signeras för OTA-distribution.
Grind 1: Statisk analys
Coverity Scan 2024.03 och CodeQL 2.16.3 körs på varje patch. En ny varning med "Hög" påverkan blockerar patchen. Befintliga varningar måste åtgärdas inom 90 dagar, annars hålls patchen.
Grind 2: Enhets- och integrationstester
Vår firmware-testsvit har över 14 200 enhetstester som täcker ASR-motor, TTS-pipeline, Bluetooth-stack, Wi-Fi-hanterare, OCR-lager och uppdateringshanterare. En patch måste uppnå 100 % godkänt resultat. Täckningsgolvet är 78 % rader / 71 % grenar; patchar som sänker täckningen avvisas.
Grind 3: 48 timmars soak-test
Den patchade firmwaren körs på 240 referensenheter (20 av varje aktiv modell i vårt labb) i 48 timmar under simulerad användning. Mätvärden som övervakas:
- Falsk accepteringsfrekvens för väckningsord (mål: <0,3 per timme)
- ASR-ordfelsfrekvens (mål: <5,2 % på TIMIT-children-delningsmängd)
- Batteriförbrukning (mål: <2,1 % per timme i viloläge)
- Uppdateringspålitlighet (mål: 100 % framgång vid dubbelbanks A/B-failover)
- Temperatur (mål: yta <41,2 °C vid 30 °C omgivning)
En regression i något mätvärde blockerar patchen och rullar tillbaka till utvecklingsgrenen.
Grind 4: Säkerhetsregressionstest
Hela CVE-regressionssviten körs igen för att bekräfta att fixen faktiskt stänger sårbarheten och inte introducerar en ny. Vi har en korpus med över 1 200 reproducerande testfall för CVE:er som sträcker sig tillbaka till 2018. En ny patch får inte regressera någon stängd CVE.
Fas 4: Flerstegs OTA-utrullning
När en patch klarar alla fyra grindar går den in i OTA-staging-kanalen. Läsploppar i fält söker efter uppdateringar var 6:e timme via Wi-Fi och var 24:e timme via mobilnät (endast Y6-plattformen). Utrullningskurvan följer en 4-stegsramp:
| Steg | Varaktighet | Fordonsparkstäckning | Pausvillkor |
|---|---|---|---|
| Canary | 7 dagar | 1 % (bara bärbara datorer, opt-in-flotta) | ≥0,5 % felprocent |
| Tidig användare | 7 dagar | 25 % (alla villiga flottor) | ≥0,2 % felprocent |
| Bred utrullning | 7 dagar | 100 % (alla flottor) | ≥0,1 % felprocent |
| Slutgiltig | ej tillämpligt | Endast påminnelse | ej tillämpligt |
Canary-flotan består av 480 enheter spridda över 12 partnerskolor, geografiskt balanserade över Nordamerika, EU och APAC. Felprocenten mäts som (brickade enheter + enheter i bootloop + rapporter om kritisk funktionsregression) / totalt antal enheter i kohorten.
En pausad utrullning undersöks inom 4 timmar. Om problemet kan reproduceras på labbhårdvara dras firmwaren tillbaka och en ny patchcykel inleds. Om problemet är flottspecifikt (t.ex. att en distrikts captive portal blockerar OTA-slutpunkten) fortsätter utrullningen för opåverkade distrikt.
A/B-dubbelbanks-failover
Varje K7-, F8- och Y6-enhet använder dubbelbanks SPI NOR-flash (32 MB eller 64 MB totalt, 16/32 MB per bank). En uppdatering skriver den nya avbildningen till den inaktiva banken, verifierar dess ECDSA-P256-signatur och vippar sedan en bootloader-flagga för att peka mot den nya banken vid nästa omstart. Om den nya avbildningen misslyckas med att starta 3 gånger i rad återgår bootloadern automatiskt till föregående bank.
Denna A/B-design ger oss en återställningsväg utan servicebil. En dålig patch kan inte bricka en flotta — i värsta fall kostar den en omstartningscykel.
Kundnotifierings-SLA:er
Vi publicerar en policy för sårbarhetsrapportering på /security/disclosure.html och meddela kunder enligt följande schema:
| Allvarlighetsgrad | Meddelandemetod | SLA från bekräftelse |
|---|---|---|
| Kritisk med aktiv exploatering (KEV) | E-post + portalbanner + telefon till topp-50-kunder | 24 timmar |
| Kritisk utan aktiv exploatering | E-post + portalbanner | 48 timmar |
| Hög | E-postsammanställning (veckovis) | 7 dagar |
| Medium | E-postsammanställning (månadsvis) | 30 dagar |
| Låg | Årlig transparensrapport | 365 dagar |
Meddelande via e-post innehåller: CVE-ID, CVSS-baspoäng och justerad poäng, berörda SKU:er och intervall för firmwareversion, status för åtgärd, förväntat patchdatum samt en kontakt för att ta emot den signerade patchen före offentlig release under MNDA.
Kunder med aktiva underhållsavtal (för närvarande 84 % av våra K7-driftsättningar) får patchen 7 dagar före offentlig OTA-rullning så att de kan förbereda intern validering.
Samordnad disclosure med forskare
Vi tar emot sårbarhetsrapporter via [email protected] och via vårt HackerOne-program (smartreadingpen program-ID #H1-SRP-2023). Forskarrapporter bekräftas inom 24 timmar och triageras inom 72 timmar. Vi åtar oss att:
- Bekräfta eller motbevisa rapporten inom 14 dagar
- Utveckla en åtgärd inom 90 dagar för hög/kritisk, alternativt dokumentera en längre tidslinje
- Ge forskaren kredit i vår årliga transparensrapport om de inte begär anonymitet
- Inte vidta rättsliga åtgärder mot forskare som agerar i god tro enligt vår policy
Den årliga transparensrapporten för 2024 dokumenterade 14 giltiga rapporter från externa forskare, med en genomsnittlig åtgärdstid på 41 dagar för hög allvarlighetsgrad. Det högsta enskilda buggbeloppet som betalades var 4 800 dollar för en Bluetooth-parningsförbikoppling upptäckt på F8-plattformen.
Disclosure-tidslinje för en verklig incident
Som illustration följer här en verklig tidslinje från en 2025-incident med en hypotetisk Wi-Fi-CVE (W-2):
| Dag | Tid (UTC) | Händelse |
|---|---|---|
| 0 | 04:12 | NVD publicerar W-2, CVSS 8.1 |
| 0 | 05:47 | Vår ingestionspipeline flaggar matchning mot 6 SKU:er |
| 0 | 09:30 | PSIRT-ingenjör tilldelar och öppnar triageticket |
| 0 | 14:08 | Triage klar: 4 SKU:er nåbara, 2 inte nåbara |
| 1 | 11:00 | Patchutveckling startar på hotfix-gren |
| 3 | 16:45 | Patch klarar alla 4 grindar; signerad artefakt produceras |
| 3 | 18:00 | Topp-50-kunder meddelas via e-post och telefon |
| 4 | 10:00 | Canary-utrullning inleds (480 enheter) |
| 11 | 10:00 | Tidig användarutrullning vid 25 % av flottan |
| 18 | 10:00 | Bred utrullning vid 100 % |
| 25 | 10:00 | Slutsteg: påminnelsepush till eftersläntrare |
| 25 | 14:00 | Offentlig publicering på vår säkerhetsportal |
Helhet: 25 dagar från NVD-publicering till 100 % utrullning. Median för 2024: 28 dagar.
Mätvärden vi följer och publicerar
Instrumentpanelen för produktsäkerhet på /security/metrics.html visar:
- Mean Time to Triage (MTTT) — median 11 timmar för kritiska CVE:er
- Mean Time to Patch (MTTP) — median 9 dagar för kritiska, 19 dagar för höga
- Andel installerade patchar — 91,4 % av K7-flotten kör aktuell firmware inom 60 dagar
- CVE-attesteringar i kö — för närvarande 4 medelhöga CVE:er som väntar på nästa kvartalsrelease
- Matchningsgrad för reproducerbar byggnation — 100 % för K7, F8, Y6
- Uppfyllda kund-SLA:er — 96,7 % av kritiska aviseringar inom 24 timmar
Köpare som integrerar mot vår SBOM-feed (se TC-148) kan prenumerera på VEX-aviseringar på /vex/feed.json och låta sin dependency-track- eller GUAC-instans larma automatiskt när en ny CVE matchar en utrullad SSB.
Intern länkväv
En läsare som bygger en helhetsbild av vår säkerhetsposition bör också granska:
- TC-148 — Leveranskedjeattack och SBOM — där CVE-matchningen sker
- TC-146 — Härdning mot felinjicering och glitch-attacker — fysiska lagerattacker som kan kringgå mjukvarupatchar
- TC-147 — JTAG-avstängning och låsning av debug-gränssnitt — enhetsnivån som gör patchar trovärdiga
- Y6 AI-handledning läsplatta — SSB:n med störst attackyta; CVE-processen är mest ansträngd här
- Bransch: K12-dataintegritet — FERPA-anpassad incidentanmälan som samverkar med CVE-kommunikation
- Tillämpning: driftsättning i offentlig skoldistrikt — operativa realiteter i en flotta på 50 000 enheter
FAQ om CVE-patchar för läsplatta
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Hur snabbt patchar SmartReadingPen en kritisk CVE på läsplattan K7?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Kritiska CVE:er med aktiva exploateringar (CISA KEV-listade) har ett SLA-mål på 72 timmar för patchrelease. Vår median för tid-till-patch 2025 för kritiska CVE:er är 9 dagar end-to-end inklusive full OTA-utrullning, men patch-artefakten i sig är normalt signerad inom 72 timmar och stegas för canary-distribution."
}
},
{
"@type": "Question",
"name": "Avbryter en CVE-patch lästillfällen eller gör enheter obrukbara i fält?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Nej. Vår dubbelbanks A/B-firmwaredesign låter oss förbereda uppdateringar utan att avbryta aktiv användning. Den nya avbildningen skrivs till den inaktiva banken, verifierar sin signatur, och byter först till den nya banken vid nästa rena omstart. Om den nya avbildningen misslyckas att starta 3 gånger återgår bootloadern automatiskt till den tidigare kända fungerande avbildningen."
}
},
{
"@type": "Question",
"name": "Offentliggör SmartReadingPen CVE:er?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Ja. Vår disclosure-policy förbinder sig att publicera en CVE-post på /security/cve/{year}/{id}.html inom 25 dagar efter den breda OTA-utrullningen. Forskare som rapporterar giltiga ärenden krediteras i vår årliga transparensrapport om de inte begär anonymitet."
}
},
{
"@type": "Question",
"name": "Hur samverkar SBOM-flödet med CVE-aviseringar?"
"acceptedAnswer": {
"@type": "Answer",
"text": "Varje levererad SSB publicerar ett SBOM-flöde på /sbom/{sku}/feed.json. Köpare kan inhämta detta flöde i dependency-track, GUAC eller liknande SBOM-hanteringsverktyg. När en ny CVE matchar en komponent i en utrullad SSB larmar systemet automatiskt köparens säkerhetsteam med de berörda firmwareversionerna och patchstatus."
}
},
{
"@type" "Question",
"name": "Vad händer med enheter som är utanför garanti eller end-of-life?",
"acceptedAnswer": {
"@type" "Answer",
"text": "Vi åtar oss 5 års säkerhetspatchstöd från SSB:ns allmänna tillgänglighetsdatum. För end-of-life-SSB:er publicerar vi en slutlig firmware-release med alla kända CVE:er patchade och rekommenderar att flottan tas ur drift. 5-årsåtagandet är kodifierat i vårt master service-avtal och följer EU:s cybersäkerhetsakt."
}
},
{
"@type": "Question",
"name": "Kan ett skoldistrikt prenumerera på CVE-aviseringar före offentlig disclosure?",
"acceptedAnswer": {
"@type" "Answer",
"text": "Ja. Kunder med underhållsavtal får CVE-aviseringar 7 dagar före offentlig OTA-utrullning och får den signerade patch-artefakten under MNDA för intern staging. E-posta [email protected] för att ansluta ditt distrikt till underhållsavtalsprogrammet."
}
}
]
}
Relaterad läsning
- TC-148: Leveranskedjeattack och SBOM för läsplatta
- TC-146: Härdning mot felinjicering och glitch-attacker för läsplatta
- TC-147: JTAG-avstängning och låsning av debug-gränssnitt för läsplatta
- Y6 AI-handledning läsplatta med 4G
- Dataintegritet för K12-läsplatta: FERPA, COPPA, GDPR-K
- Driftsättning av läsplatta i offentliga skoldistrikt
Upphandlings-CTA
Om du är ett skoldistrikt, utbildningsministerium eller stor B2B-köpare som behöver insyn i sårbarhetshanteringen bakom din läsplatteflotta kan vi dela vi fl vulnerability-disclosure-policy och SLA-tabellen under MNDA inom 24 timmar. E-posta [email protected] eller besök vår contact page för att ta emot paketet, som innehåller policy-PDF:en, den aktuella sammanfattningen av CVE-backloggen, kundmeddelandemallen och integrationsguiden för dependency-track och GUAC.
Vill du ha en djupare granskning? Vi är värdar för kvartalsvisa granskningar av säkerhetsarkitekturen vid vårt ingenjörscenter i Shenzhen – en tvådagarssession som täcker firmware-byggpipelinen, OTA-backend, HSM-förvaringskedjan och patchutrullningshistoriken för de senaste 12 månaderna. Schedule a security review med vår Chief Security Officer och fyra seniora firmware-ingenjörer. Antalet platser är begränsat till sex köparrepresentanter per session.
SKU Coverage and Trade Terms
Vår CVE-patchlivscykel omfattar alla 11 SKU:er: B1, B2, F8, K7, KF1, L5, P2, Q6, Q8, T2, Y6. Premium Q8 (firmware 3.3.1), T2 (firmware 2.6.4, 14-timmars 2 500 mAh Li-ion 18650-cell) och Y6 (firmware 2.6.4, 4G-fallback) får 7 års patchsupport från allmän tillgänglighet; mellansegmentet F8, K7, Q6, L5 får 5 år; instegsmodellerna B1, B2, KF1, P2 får 3 år. OTA-uppdateringsframgången för hela flottan är 99,4 % över 47 000+ levererade enheter till 47 länder, med en patchadoptionsgrad på 91,4 % inom 60 dagar. Läspennan är HS-klassad 8543.70 som fristående eller 9503.00 i leksaksansluten förpackning; 18 aktiva certifieringar täcker alla destinationer – CE under RED/EMC/LVD, FCC, UKCA, EN 71-1/2/3, ASTM F963, CPSIA, RoHS, REACH, PSE, KC, GCC/SFDA, SNI, NOM, INMETRO, RCM, ISED, UN38.3, IEC 62133. EXW Shenzhen-prisintervall: Q8 till $14,20 MOQ 1 000; T2 till $14,50 MOQ 500; Y6 till $13,80 MOQ 500; K7 $9,40; F8 $8,90; L5 $10,50; KF1 $7,20; Q6 $7,80; B1 $4,20; B2 $4,80; P2 $3,80. Handelsvillkor är EXW, FOB, CIF, DDP, DAP. Betalning sker via T/T 30/70 med 2,4 % rabatt vid tidig betalning när slutbeloppet överförs inom 14 dagar, L/C vid anfordran för förstagångsköpare över $50 000, OA för etablerade konton, PayPal för prover. Minsta orderkvantitet för privat form och etikett är 3 000 till 5 000 enheter med en verktygskostnad på $4 000 till $28 000 per formssats.