The invention relates to a method for detecting nine cholesterol oxides in food by gas chromatography-mass spectrometry, which comprises the following steps: S1, adding 19-hydroxycholesterol as an internal standard substance to carry out sample lipid extraction; S2, dissolving the obtained lipid extract, and carrying out saponification extraction to remove moisture so as to obtain a concentrated filtrate; S3, purification and concentration: adding 3mL of n-hexane, shaking and dissolving, adding into activated NH2-SPE, washing the column, discarding waste liquid, collecting filtrate, and blow-drying by nitrogen; S4, derivatization: adding 100 [mu] L of N, O-bis (trimethylsilane) trifluoroacetamide BSTFA for derivatization for 40 min, blow-drying with nitrogen, and dissolving with 1.0 mL of n-hexane to a constant volume; and S5, taking a mixed standard solution of nine cholesterol oxides, detecting the mixed standard solution under gas chromatography conditions and mass spectrometry conditions, and drawing a standard curve. According to the method, a pretreatment mode suitable for complex samples is established, saponification conditions and a solid-phase extraction column are optimized, the accuracy of analysis and detection is improved by adopting an internal standard substance, and the method has the advantages of accuracy, high efficiency and wide applicability.