In Nimbus JOSE+JWT before 4.39, there is no integer-overflow check when converting length values from bytes to bits, which allows attackers to conduct HMAC bypass attacks by shifting Additional Authenticated Data (AAD) and ciphertext so that different plaintext is obtained for the same HMAC.
[
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"168737763824720600879208904081502951545",
"302567068559763296819114101514944017815",
"230869455070445968182594749778657341675",
"283935422213370696407798878291984490947",
"315665346146488759464290514101678114000",
"199114374991634250325189251898026238432",
"329395400188898088948366080947006100789"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/RSA1_5.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-011c9f1e"
},
{
"digest": {
"length": 73.0,
"function_hash": "268383303490108261703502224559116684261"
},
"signature_type": "Function",
"target": {
"function": "size",
"file": "src/main/java/com/nimbusds/jose/jwk/OctetSequenceKey.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-24209499"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"237706141522443329892358720866463998438",
"324010941776266364390120152883005911783",
"243076908048097007417633745113335229211",
"90092983308114395773940124960991546178",
"298837952353261299150420403494590187018",
"282360178354435980873742188674850035098",
"70018380420855359861466606240521456096",
"263259739511378256223257868817627381738",
"294221454441061468944461007536954228932"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/AAD.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-2dea60f6"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"307700605187138687526984698875500074150",
"24969852970028678038490162687253090186",
"179287720149843692598401002699231307295",
"8611822431368367361956550746277118573",
"139846294648089010547716477717108683346",
"42428330065101331924202698488332969968",
"61576523446879651083235913902398372676",
"283543066535150811598091479227484072107",
"332603698936186730139759600804147020953",
"86723057084435517126927788261714495506",
"33730488403011083972651898334373226912",
"106429779004582307873726401793362390070"
]
},
"signature_type": "Line",
"target": {
"file": "src/test/java/com/nimbusds/jose/crypto/AADTest.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-3ad8ef96"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"150896086058429499327501026347678103958",
"127227738995467194781179690314379375695",
"109334578001973239677475579002706154918",
"336999666330873705279848479680841962450",
"182380943961269966997496840307966289291",
"72828264218771395126176260508692903621",
"190569358059299257518815577580690324400"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/DirectEncrypter.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-5c14192b"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"232888998697217806484311424362040604452",
"79563156495832145290587017112322441021",
"57946194883724050587184835140952264331",
"237123529249827582402158178937164550961",
"95024887126792259353084271672438692852",
"154281180036102263906323916576001154449",
"181608596495438708160370960987593189150",
"202145710558911091547703732526024783225",
"96273157581862057232781848170114863430",
"183482483933182757021870555633110767476",
"184555146199255596600264346691601187703",
"182377197255264686783348993894973183374",
"331917177960713445851749380386340760277"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/jwk/RSAKey.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-72fa0533"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"268654735462253415356359022392147155873",
"232888998697217806484311424362040604452",
"79563156495832145290587017112322441021",
"57946194883724050587184835140952264331",
"237123529249827582402158178937164550961",
"151689390433282551718270747285611477113",
"335741726761475986209462109989453655687",
"147675954362977689294816009667525421102",
"30846833992337196048724994863608773527",
"213706348147894701945892572411881840022",
"299034758898565177812571422997448420951",
"232147838900057129397269575162405640879",
"135539528210154176132208467093808773800"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/jwk/OctetSequenceKey.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-804e0816"
},
{
"digest": {
"length": 73.0,
"function_hash": "137372075645284302827252804517773606637"
},
"signature_type": "Function",
"target": {
"function": "size",
"file": "src/main/java/com/nimbusds/jose/jwk/RSAKey.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-82725d3c"
},
{
"digest": {
"length": 115.0,
"function_hash": "267913083107651721422318958924185504600"
},
"signature_type": "Function",
"target": {
"function": "testAADLengthComputation",
"file": "src/test/java/com/nimbusds/jose/crypto/AESCBCTest.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-8a14cdd9"
},
{
"digest": {
"length": 284.0,
"function_hash": "94467738440777304089185681095782348238"
},
"signature_type": "Function",
"target": {
"function": "checkCEKLength",
"file": "src/main/java/com/nimbusds/jose/crypto/ContentCryptoProvider.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-ae576bd1"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"84137067322283839825205822337526037356",
"278313541754829900208913014945198541762",
"40687950734415644437241196116501371385",
"309755736367940573768786425536160193776",
"328153018022980147790503304506065256713"
]
},
"signature_type": "Line",
"target": {
"file": "src/test/java/com/nimbusds/jose/util/ByteUtilsTest.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-b68ae730"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"32383480734683772536912283883661482549",
"216183336963785789442048893996803442691",
"114014675732776626528332206495647595813",
"335432703739897809560418464042010493720",
"177774681975823394080592514139954930476",
"16455260380068284860945001983399601244",
"85456155979618242410953811571445311300",
"168536106393098167052569216829529988157",
"191605060509175831442191922384617015845"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/util/ByteUtils.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-b6e85c3f"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"279302843528326554557395779506297631570",
"68837334235864258222044474136335456340",
"14262115020304873918660516344339697224",
"320447986941090818350865767914465061256",
"257738106142193723590480276808990837124",
"147420188732514315990170903786702376838",
"244474157375498520664360424264483525082",
"19338943929966105697940344933697594977",
"12598856043775227817307074258382927073",
"192838745515398581135225500166610643490",
"8411702802549003874773765885069598031"
]
},
"signature_type": "Line",
"target": {
"file": "src/test/java/com/nimbusds/jose/crypto/AESCBCTest.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-c2d6fbea"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"95259769531966343370169011042469545778",
"257133433690831533093581837775348808804",
"107437025294458820614269312001728618560",
"283582744454872804025211391269006162651",
"246141335718094425881400271907242195317",
"29152429034532573818640305328156727177",
"11528336840115380978760453684157222839",
"28029004616166714415717697844510934052",
"45613031604441494655983829612457768411",
"99648038163444886854229346973211594848",
"65175936860579601752440798113899978688",
"151003580201633903155967224232462771249",
"5886689539007511441959001973513702650",
"98628318771706111378454557187162171481"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/AESGCM.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-c935ca8c"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"134176139255843890709851474652080540785",
"118782986781672275840820227666649687813",
"48256242829436966584423552467560703096",
"37836057034549784497731361307909413673",
"255407985008534538776295696780966296583",
"46007123076665221255259311660713187660",
"141069446923907567482496672188234344416",
"4953700867941580088919641085798716583"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/AESGCMKW.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-cc91d1c5"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"266893018196631136950273847994494902683",
"191641946806963940745159115067211258624",
"204796056270814204710025734827567361375",
"174426886261901122973475139626211048955",
"123452958859067139486843269833187153778",
"174853788021889295719684031803472998576",
"297142065400076201898476165046906206534"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/ConcatKDF.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-d47c50ca"
},
{
"digest": {
"length": 189.0,
"function_hash": "100707433899611702456899907145320633374"
},
"signature_type": "Function",
"target": {
"function": "testComputeLength",
"file": "src/test/java/com/nimbusds/jose/crypto/AADTest.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-d8d4b29b"
},
{
"digest": {
"length": 172.0,
"function_hash": "228020516826701200730953980111888843899"
},
"signature_type": "Function",
"target": {
"function": "computeLength",
"file": "src/main/java/com/nimbusds/jose/crypto/AAD.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-ded43979"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"21078211937174734458409276243274658789",
"9054285039619540650250959310326978414",
"110790819663157139460163652315939708175",
"318563159160044263657243974140529051330",
"166623452206966797920479389368044042129",
"66650317482681101803477134811190238077",
"100703764894263545152527047161148048091",
"195910674511004964607185451722007867276",
"321084376093164699119978281208940155466",
"20034503063849651181797521532235023068",
"50591532102752121908100632827925341841",
"206442105900636551799483067050019565663",
"56139014125121889705006378212480633149",
"41994352155316152330082366379179913796",
"235895357285667647191150425397721687714",
"20146359414023215387532113750223017983",
"60593320749049224087091673334326713096",
"47830335370856090526656187295043278372",
"300337235259036803181669253853221169741",
"238311798553611672698954646334488254059",
"321031733456861818975867169638620113766",
"71278082356427553430566389092756273047",
"203722826027740314310702846623001881372",
"178937064782926496451214249959364601087",
"167322751413677435254802986151845803700",
"155021759869974681348123774703751762208",
"80067225297656631308390832034345759315",
"312551636305492808249854060299306503683",
"252823809645143649110428980317899620534",
"149295184096783766341460884248699973350",
"259146910671245054513012657843509219047",
"62514117691234732922398646652092393319",
"46483711304005348015602044559479327401",
"111099870746539484772180212841322540767",
"316998462883691420287048371661179770505",
"220123158629717857665245215489471566311",
"187788301802847784982489370104293444034",
"325179086650008004040331266621952025355"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/AESEncrypter.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-e92a4703"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"319815675751253864862173705361896348005",
"253594595926899038914310697694472436084",
"281806858831644348303557717058875824715",
"287895574698526860124967684305276559685",
"185575127317553460140722231693227824343",
"122833615529194558579199571139619496822",
"193473439597586093868069737916981839122",
"292357082084983187564286185051924125907",
"107253612107574492488894243735779009496"
]
},
"signature_type": "Line",
"target": {
"file": "src/main/java/com/nimbusds/jose/crypto/ContentCryptoProvider.java"
},
"deprecated": false,
"source": "https://bitbucket.org/connect2id/nimbus-jose-jwt@0d2bd649ea386539220d4facfe1f65eb1dadb86c",
"signature_version": "v1",
"id": "CVE-2017-12972-ebf963b5"
}
]