The XFRM dump policy implementation in net/xfrm/xfrmuser.c in the Linux kernel before 4.13.11 allows local users to gain privileges or cause a denial of service (use-after-free) via a crafted SORCVBUF setsockopt system call in conjunction with XFRMMSGGETPOLICY Netlink messages.
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2017-16939.json"
[
{
"id": "CVE-2017-16939-30581847",
"signature_type": "Function",
"digest": {
"function_hash": "263430357699231882004620930874975529648",
"length": 177.0
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@1137b5e2529a8f5ca8ee709288ecba3e68044df2",
"target": {
"function": "xfrm_dump_policy_done",
"file": "net/xfrm/xfrm_user.c"
},
"deprecated": false
},
{
"id": "CVE-2017-16939-4a9a47cd",
"signature_type": "Function",
"digest": {
"function_hash": "104256803548335301637147077594189404228",
"length": 574.0
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@1137b5e2529a8f5ca8ee709288ecba3e68044df2",
"target": {
"function": "xfrm_dump_policy",
"file": "net/xfrm/xfrm_user.c"
},
"deprecated": false
},
{
"id": "CVE-2017-16939-a77a184f",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"232542767298088701867650607442859380588",
"114049598210704873676864880912774613392",
"305632462673713605007245411527317650455",
"200492495159141691334419125322434029292",
"211077201663363512179120838617883792427",
"249874250376654066641160395261254821207",
"104990041645414464937945804013532099053",
"143460071187342385631700241095230978202",
"207292591731284560929930223454762999015",
"126259261492396613551147187642675317738",
"180492684298867694224610681773969685353",
"133277005225064598435087754133499556356",
"99625862466884656910664389474473969961",
"113997132628349460886073124460319290029",
"294182644881506750589150851292207189366",
"129336583985439224266191530060726815108",
"170971318735978434456885268829110821062",
"87758400920320914900406933800999758736",
"145056166219160318043300042549135551336",
"313130992127822208908280009814168677641",
"71707199994775426501143173377917921640",
"171846532950538510698306190092103567578",
"55799572242439755724392856970317992107",
"35914505360023112609378314611952291098",
"34724314505393580921985351011423749439",
"181980453660482609367790270274022423053",
"9447808023824534934066683634397101894",
"151261778831003062506610187688521814577",
"206215491358014587941248851267892332330",
"331825620004304147799498945310593915203",
"75869527893100106918543095650680268993",
"92169881155037640128287330849127012515",
"61651331112697785049283534862761956041",
"313682309171350537814844095480494175767",
"328259901369598648280276967313628903344"
]
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@1137b5e2529a8f5ca8ee709288ecba3e68044df2",
"target": {
"file": "net/xfrm/xfrm_user.c"
},
"deprecated": false
},
{
"id": "CVE-2017-16939-c81e5842",
"signature_type": "Function",
"digest": {
"function_hash": "192744397232845373973505484291945450038",
"length": 1021.0
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@1137b5e2529a8f5ca8ee709288ecba3e68044df2",
"target": {
"function": "xfrm_user_rcv_msg",
"file": "net/xfrm/xfrm_user.c"
},
"deprecated": false
}
]