Innledning: Puslespillet med overløpssider
Tenk deg at du kjøper en plakat som er for stor for rammene du har hjemme. For å kunne vise den ordentlig, må du klippe den opp i seksjoner slik at den får plass i de tilgjengelige rammene. Det samme prinsippet gjelder for SQLite-databaser når de håndterer store poster - de deler dem opp i deler og lagrer dem på flere sider. Det er her overløpssider ...kom inn.
Overflyt-sider lagrer data som ikke får plass på en enkelt SQLite-database-side (vanligvis 4 096 byte). Disse sidene er knyttet sammenDe danner en kjede som kriminalteknikere må rekonstruere for å gjenopprette komplette data. Hvis analytikerne ikke følger overløpsstrukturen, risikerer de å hente ufullstendige eller ødelagte bevis.
I denne artikkelen skal vi se nærmere på hvordan overflow-sider fungerer, hvorfor de er viktige i kriminaltekniske undersøkelser, og hvordan du trinn for trinn kan hente ut fragmenterte data.
Hva er overflytsider i SQLite?
SQLite-databaser tildeler en fast sidestørrelse (f.eks, 4 096 byte). Men når en post - for eksempel et bilde som er lagret som en BLOB (Binary Large Object)-overskrider denne størrelsen, overflødige data flyter over på overflow-sider.
De viktigste erfaringene:
✅ Overløpssider forhindre store poster fra å monopolisere en enkelt side.
✅ De er knyttet sammen i en kjede, med utgangspunkt i hovedsiden.
✅ Kriminaltekniske analytikere må rekonstruere disse kjedene for å hente ut komplette data.
Å forstå hvordan overflow-sider fungerer, er avgjørende for kriminaltekniske undersøkelser.
Oversikt på høyt nivå: Hvordan overflytsider fungerer
La oss se på følgende eksempler for å illustrere konseptet med overflow-sider:
1. Fragmentert bilderepresentasjon

Denne visualiseringen viser hvordan store BLOB-er, for eksempel bilder, lagres i SQLite. Bildet er delt opp i flere seksjoner, akkurat som en overflow-side lagrer fragmenterte data.
2. Data lagret på én enkelt side

Her får et bilde plass på én databaseside, slik at det ikke er behov for overløpssider.
3. Data deles over flere sider

Dette eksemplet illustrerer hvordan data lagres på en ikke-sammenhengende måte, noe som krever kriminalteknisk analyse for å rekonstruere dem korrekt.
4. Rekonstruere data fra overløpssider

Ved å følge overløpssidepekere kan kriminalteknikere sette sammen fragmenterte data på nytt.
Den rettsmedisinske betydningen av overflytsider
Mange meldingsapper, mobilapplikasjoner og databaser lagre brukerprofilbilder, chat-logger og vedlegg i SQLite. Når bilder og dokumenter spenner over flere sider, må kriminalteknikere forstå overflow-strukturer for å kunne hente ut dataene på riktig måte.
Rettsmedisinske utfordringer:
- Fragmenterte data: BLOB-er (for eksempel bilder) er ofte delt over flere sider.
- Pekerbasert gjenfinning: Analytikere må følge SQLites overflow-sidepekere for å rekonstruere hele bildet eller filen.
- Utskjæringsproblemer: Hvis du bare søker etter en JPEG-header (FFD8FF) og -footer (FFD9), kan det mislykkes fordi de kan finnes på separate sider.
Eksempel fra den virkelige verden: Trekke ut et profilbilde fra Overflow-sider
La oss nå gå gjennom en trinnvis rettsmedisinsk gjenoppretting av et bilde som er lagret i en SQLite-database.
Finn BLOB-en i databasen

Ved hjelp av DB-nettleser for SQLiteidentifiserer kriminalteknikere posten som inneholder profilbildet i kontakter
bord.
Identifiser BLOB-lengden i hex

Ved hjelp av HxDmed en hex-editor, finner de posthodet, som inneholder en VARINT som bestemmer BLOB-lengden.
Bekreft bildestørrelsen

Den andre VARINT-verdien i posthodet angir bildets størrelse. I dette tilfellet er den totale størrelsen 6 325 byte, som overskrider sidebegrensningen.
Følg overløpspekeren

Nederst på hovedsiden vises en peker på fire byte fører til side 4som inneholder den neste delen av bildet.
Undersøk overløpssiden

De fire første byte på side 4 angir om det følger en ny overflow-side. Siden verdien er 0x00000000
dette er siste overløpsside.
Trekk ut og rekonstruer bildet

Rettsmedisinske analytikere trekker ut 6 292 byte av bildet fra begge sidene og rekonstruere det manuelt.
📌De fire byte-pekerne er IKKE en del av dataene som skal inkluderes i det utskårne bildet
Bekreft det gjenopprettede bildet

Det ekstraherte bildet er nå fullstendig gjenopprettet og kan vises.
Avsluttende tanker: Betydningen av analyse av overflytsider
I kriminaltekniske undersøkelser kan det å overse overflow-sider føre til tap av kritisk bevismateriale. Å forstå SQLites lagringsmekanisme er avgjørende for å nøyaktig datauttrekk og rekonstruksjon.
Viktig rettsmedisinsk innsikt:
✔️ Alltid se etter overfylte sidernår du analyserer store poster.
✔️ Følg SQLites overløpspekereforsiktig.
✔️ Simple filskjæringsteknikker fungerer kanskje ikke på grunn av ikke-sammenhengende lagring.
Enten man analyserer chat-databaser, kontaktlister eller programloggermå rettsmedisinere være dyktige til å gjenopprette fragmenterte data.
💡 Har du støtt på fragmenterte data i SQLite-forensics? Hvordan går du frem for å analysere overflow-sider? Del din innsikt nedenfor!