.SER

SER-fil

Java Serialized Object File
Ställ en fråga
SNABBT SVAR

En SER-fil är oftast ett Java Serialized Object - en binär ögonblicksbild av ett eller flera Java-programobjekt sparade på disk. För att öppna den behöver du den specifika applikation som skapade den; GeneMapper-användare öppnar den direkt i GeneMapper. Deserialisera inte en okänd SER-fil i godtycklig Java-kod - det är en känd vektor för fjärrkörning av kod (RCE).

Utvecklare: Sun Microsystems / Oracle Corporation Kategori: Filer med uppgifter Öppen standard MIME: application/x-java-serialized-object
ÖPPNAS PÅ Windows macOS Linux
Relaterat: .PKPASS · .DAT · .JSON · .RIS

På denna sida

19k+ filtillägg indexerade
Senast granskad Aug 10, 2026

Osäker på vad din fil är?

Släpp valfri fil i vår identifierare - vi läser bara de första byten för att namnge formatet.

Identifiera en fil

Vad är filformatet SER?

En .ser-fil innehåller en Java serialized object stream - en binär kodning av ett eller flera Java-objekt producerade av ObjectOutputStream och som läses tillbaka av ObjectInputStream. Formatet introducerades med Java 1.1 år 1997 och definieras i Java Object Serialization Specification.

Varje giltig .ser-fil börjar med den 4-byte långa magiska sekvensen AC ED 00 05: byte 0-1 innehåller STREAM_MAGIC (0xACED) och byte 2-3 innehåller STREAM_VERSION (0x0005). Strömmen kodar varje objekts klassbeskrivning, fält och nästlade data med hjälp av typade blockmarkörer: TC_OBJECT (0x73), TC_CLASS (0x76), TC_ARRAY (0x75), TC_STRING (0x74) och TC_NULL (0x70).

Serialisering användes i stor utsträckning för att cacha applikationstillstånd, skicka objekt mellan JVM:er och spara konfigurationsdata. Men Java-deserialisering är en känd säkerhetsbrist - illvilligt utformade strömmar kan utnyttja «gadget chains» i klassökvägen för att uppnå fjärrkörning av kod. Java 9 introducerade ObjectInputFilter för att begränsa vilka klasser som får deserialiseras, och moderna Java-rekommendationer avråder starkt från att använda .ser-filer för opålitlig data.

Föredragna moderna alternativ inkluderar JSON (via Jackson eller Gson), Protocol Buffers eller Kryo. GeneMapper (Thermo Fisher Scientific) använder .ser-filer för bioinformatikprojektdata. Verktyget SerializationDumper kan inspektera innehållet i .ser utan att köra dem.

Säkerhet & trygghet

RISK: HIGH

Java-deserialisering är en av de mest allvarliga attackytorna i Java-applikationer (historiskt sett OWASP Top 10). Att öppna en opålitlig .ser-fil i en sårbar applikation kan köra godtycklig kod via «gadget chains» (t.ex. Apache Commons Collections-exploateringen, 2015). Slutanvändare bör endast öppna .ser-filer från pålitliga källor och i deras avsedda applikation. För analys av okända .ser-filer: använd SerializationDumper (statisk dump, kör inte innehållet) snarare än att deserialisera dem i en aktiv JVM.

Formatdetaljer

i ett nötskal
FULLSTÄNDIGT NAMNJava Serialized Object Fileäven känd som Java serialization stream, .ser file
UTVECKLARESun Microsystems / Oracle Corporationsedan 1997 (Java 1.1, JDK 1.1)
MIME-TYPapplication/x-java-serialized-object
TYPbinär serialiserad Java-objektström
STANDARDÖppen · royaltyfri
Detta filtillägg används också av…
  • GeneMapper Project File - Programvaran Applied Biosystems/Life Technologies GeneMapper använder .ser som sin proprietära behållare för projektdata.
  • Generisk datacache för applikationer - Vilken Java-applikation som helst kan serialisera godtyckliga objekt till .ser; innehållet är helt applikationsspecifikt.
MAGIC BYTES · FILSIGNATUR
OFFSET
00010203
HEX
ACED0005
ASCII
····
Byte 0-1: STREAM_MAGIC=0xACED; byte 2-3: STREAM_VERSION=0x0005. Alla giltiga serialiserade Java-strömmar börjar med dessa 4 byte.

Program som öppnar SER-filer

Windows2 apps
GeneMapper (Thermo Fisher Scientific) Betald Öppna GeneMapper, använd File > Open Project och välj projektfilen .ser.
SerializationDumper Öppen källkod java -jar SerializationDumper.jar < input.ser - dumpar den råa strukturen för serialiseringsströmmen för analys.
macOS1 app
SerializationDumper Öppen källkod java -jar SerializationDumper.jar < input.ser - dumpar den råa strukturen för serialiseringsströmmen för analys.
Linux1 app
SerializationDumper Öppen källkod java -jar SerializationDumper.jar < input.ser - dumpar den råa strukturen för serialiseringsströmmen för analys.

Tekniska detaljer

djup specifikation
Magiska byteAC ED 00 05 vid offset 0 - STREAM_MAGIC (0xACED) följt av STREAM_VERSION (0x0005)
KodningBinär, big-endian
MIME-typapplication/x-java-serialized-object
Serialiserings-APIjava.io.ObjectOutputStream (skriv) / java.io.ObjectInputStream (läs); klasser måste implementera java.io.Serializable
ProtokollversionSerialiseringsprotokoll version 2 (strömversion 5), stabilt sedan Java 1.2
KlassversioneringVarje klass bäddar in ett serialVersionUID; versionsfel kastar InvalidClassException vid deserialisering
InnehållsmarkörerTC_OBJECT (0x73), TC_CLASS (0x76), TC_ARRAY (0x75), TC_STRING (0x74), TC_NULL (0x70)
SäkerhetsriskKänd vektor för deserialiseringsattacker via «gadget-chains»; Java 9+ mildrar detta via ObjectInputFilter-vitlistning
Typisk storlekFrån några få byte för enkla objekt upp till hundratals MB för stora serialiserade objektgrafer
PlattformsoberoendeLäsbar av valfri JVM på Windows, Linux eller macOS; inte portabel utanför Java-ekosystemet
StrömkomprimeringOkomprimerad på formatnivå; GZIPOutputStream-paketering kan valfritt tillämpas på applikationsnivå
IntegritetIngen inbyggd kontrollsumma; integritet tillhandahålls genom signering på applikationsnivå eller säker transport
Känd applikationGeneMapper (Thermo Fisher Scientific) använder .ser för bioinformatikprojekt och datafiler
Släppt1997 (Java 1.1, JDK 1.1)
Senaste versionStream version 5 (serialization protocol version 2, since Java 1.2)
Öppen standardJa · royaltyfri
Specifikationdocs.oracle.com

SER-konverteringar

Frågor & svar

frågat av användare
Ställ en snabb fråga
Få hjälp från personer som arbetar med SER-filer. Var specifik - inkludera ditt system och programversion.
Inget konto behövs · svar vanligtvis inom en dag

Inga frågor än - bli den första att fråga om SER-filer.

Vanliga frågor

Hur öppnar jag en .ser-fil?
Du behöver den specifika Java-applikation som skapade den. De flesta användare stöter på .ser från GeneMapper - öppna den med GeneMapper. För rå inspektion, använd SerializationDumper (kör inte innehållet).
Kan jag konvertera .ser till JSON eller CSV?
Inte universellt - en .ser-fil är bunden till specifika Java-klasser. Den ägande applikationen måste exportera datan; det finns ingen generisk konverterare.
Är en .ser-fil farlig?
Att öppna den i dess avsedda applikation är säkert. Att deserialisera en okänd .ser i godtycklig Java-kod innebär hög risk (fjärrkörning av kod via «gadget chains»). Använd SerializationDumper för analys av opålitliga filer.
Varför kastar min Java-applikation InvalidClassException för en .ser-fil?
Värdet för serialVersionUID i filen matchar inte den nuvarande klassdefinitionen. .ser-filen sparades av en annan (vanligtvis äldre) version av programvaran.

Referenser

1Java Object Serialization Specification (Oracle)docs.oracle.com
2GeneMapper Software 6 - Thermo Fisher Scientificwww.thermofisher.com

Fortsätt utforska

genom databasen

Populära filtillägg denna vecka

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.MDMarkdown Document
4.BINCD/DVD Disc Image (BIN/CUE)
5.NOMEDIAAndroid No-Media Marker File
6.PARTPartial Download File
7.RPMSGRestricted Permission Message
8.EXEWindows Executable (Portable Executable)
9.AVIFAV1 Image File Format (AVIF)
10.DBSQLite Database File

Relaterade filtillägg

.PKPASSApple Wallet Pass (formerly Passbook)
.DATProgram Data File (generic)
.JSONJavaScript Object Notation file
.RISResearch Information Systems citation file
.OFXOpen Financial Exchange
.CSVComma-Separated Values

Gratis filverktyg

En filidentifierare och bildkonverterare direkt i webbläsaren - allt körs på din enhet.

Öppna verktygslådan

Bläddra bland filtillägg A-Ö