In coders/xbm.c in ImageMagick 7.0.6-1 Q16, a DoS in ReadXBMImage() due to lack of an EOF (End of File) check might cause huge CPU consumption. When a crafted XBM file, which claims large rows and columns fields in the header but does not contain sufficient backing data, is provided, the loop over the rows would consume huge CPU resources, since there is no EOF check inside the loop.
[
{
"digest": {
"function_hash": "215445183312191341726070120287432714269",
"length": 5095.0
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"id": "CVE-2017-14175-31f2ab5d",
"source": "https://github.com/imagemagick/imagemagick/commit/d9a8234d211da30baf9526fbebe9a8438ea7e11c",
"target": {
"function": "ReadXBMImage",
"file": "coders/xbm.c"
}
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"75355378327067456798751025390452206241",
"141810320395183736985744031401668937186",
"12658557245069636461200372521193317907",
"40995245431991860850146773333953264086",
"162833324008694907519642885606916276890",
"291510617104165506973992051289833568321",
"101036367907823272162813950817169559998",
"237673055227486977415920658344539470603",
"232257034630086355812318587844087608797",
"279802895753315972798456054448976214943",
"194988175870895379385590803087001243566",
"48719567047868585561279560208165026012",
"319504108237927955536514552798214134136",
"99328733460631759249596974572498646826",
"306474171478366498323080802254978657251",
"273390795999919125928020154821440036871",
"177629174253743903027881826512985916285",
"305088695214833770884778937992592196276",
"213607506058180916919985919114677418878",
"272264231728514507026099892996447354376",
"65457656179027957205837183014487671256",
"298555703327628733134797244797542943663",
"229120705087760256082315949948914271275",
"245200341407905352116847715442655104506",
"179397644109130762834640444016081512280",
"69245218947336887620593376325589414481",
"125092107822131119533180761847075070532",
"322633485317111498160525593811782961882",
"194565838556570923956664418088873038226",
"176928428437231390920686823766277986220",
"74017901146342513461026570438431535962",
"325201064911585135777530699699930640901",
"140731276478438774592122844515246943074",
"156182018895720678116895483964204988914",
"316146773586956924322353221621133836962",
"148864739057068288377281144967394906471",
"286715696580760003822115393716340444576",
"66578945725007564212663348501110054520",
"160525882646253059935591181687939061217",
"68271628479770020155035292135580209416",
"272827454721607817378569517046127289725",
"61841108442380893982074096371959039700",
"294216403250549407233159433749642943118",
"309347190725974139103994919865232310794",
"35294908611308394665687987813225991260",
"115204851577071085970853378770782950978",
"339455691165631897316526729607261501359"
]
},
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"id": "CVE-2017-14175-c40afe02",
"source": "https://github.com/imagemagick/imagemagick/commit/d9a8234d211da30baf9526fbebe9a8438ea7e11c",
"target": {
"file": "coders/xbm.c"
}
},
{
"digest": {
"function_hash": "189110900927147398612065403524043995321",
"length": 551.0
},
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"id": "CVE-2017-14175-fc2bfd86",
"source": "https://github.com/imagemagick/imagemagick/commit/d9a8234d211da30baf9526fbebe9a8438ea7e11c",
"target": {
"function": "XBMInteger",
"file": "coders/xbm.c"
}
}
]