A flaw was found in libgit2 before version 0.27.3. It has been discovered that an unexpected sign extension in gitdeltaapply function in delta.c file may lead to an integer overflow which in turn leads to an out of bound read, allowing to read before the base object. An attacker may use this flaw to leak memory addresses or cause a Denial of Service.
[
{
"source": "https://github.com/libgit2/libgit2/commit/c1577110467b701dcbcf9439ac225ea851b47d22",
"target": {
"function": "git_delta_apply",
"file": "src/delta.c"
},
"id": "CVE-2018-10887-1585ab76",
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 1647.0,
"function_hash": "50153901881954610807918949779039243924"
}
},
{
"source": "https://github.com/libgit2/libgit2/commit/3f461902dc1072acb8b7607ee65d0a0458ffac2a",
"target": {
"file": "src/delta.c"
},
"id": "CVE-2018-10887-45eb445f",
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"93358178968321194831444214876825155984",
"153164923682411593608041793273404037304",
"33570991496418120927041558322251026310",
"25890608630727613520783049424086629885",
"8219917613978475874616252252903839753",
"157188723891115284879704770483038487554",
"159604477385763283317304130011059385784",
"81904769943703288569337594233540962291",
"112054984904375948736070256909490718514",
"165913531869763643342738475326403458842",
"137578180004472586807634081757936950735",
"248693588680834188084334061751426487955",
"44641286980390635702979826641543948021",
"282553991696690259056494778295165650355",
"167706338245615166082035964895252361564",
"23084315564040188015269456616744310927",
"329984421577273086786058054331424958785",
"188314240373868938705342051951699180651",
"236606851842754160901515092890706080877",
"276132694717688210291205250221461881669",
"142390257640951138957146834467012636402",
"87133306260567778534006037764680438181",
"24723767431555947822021443173930564179",
"125740413611477975180755802450891674951",
"126046746389768506668085498987763294456"
]
}
},
{
"source": "https://github.com/libgit2/libgit2/commit/3f461902dc1072acb8b7607ee65d0a0458ffac2a",
"target": {
"function": "git_delta_apply",
"file": "src/delta.c"
},
"id": "CVE-2018-10887-52e70510",
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 1630.0,
"function_hash": "30479628900503576871371879598159361351"
}
},
{
"source": "https://github.com/libgit2/libgit2/commit/c1577110467b701dcbcf9439ac225ea851b47d22",
"target": {
"file": "src/delta.c"
},
"id": "CVE-2018-10887-723ecc26",
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"25890608630727613520783049424086629885",
"205307063431193828010410566590225596596",
"104755187980086926400873452967897138328",
"246214797780804558292486128338090090245",
"118319113467707406452273961369960474000",
"128397637477622903842078481926997632109",
"263241811020821181855373069697997938497",
"116704154704623022471621320862743374716",
"86420227134014276184589479866678038631"
]
}
},
{
"source": "https://github.com/libgit2/libgit2/commit/3f461902dc1072acb8b7607ee65d0a0458ffac2a",
"target": {
"file": "tests/diff/binary.c"
},
"id": "CVE-2018-10887-894982c6",
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"321298229990734240231701353982565208171",
"338340993582561346439169088761704448539",
"72631701717246723849238254513035996107"
]
}
}
]