Message ID | 20241023104029.2383733-1-ant.v.moryakov@gmail.com |
---|---|
State | Dropped |
Delegated to: | Mark Wielaard |
Headers |
Return-Path: <elfutils-devel-bounces~patchwork=sourceware.org@sourceware.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 5F04C3858D28 for <patchwork@sourceware.org>; Wed, 23 Oct 2024 10:40:54 +0000 (GMT) X-Original-To: elfutils-devel@sourceware.org Delivered-To: elfutils-devel@sourceware.org Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [IPv6:2a00:1450:4864:20::135]) by sourceware.org (Postfix) with ESMTPS id C39483858D21 for <elfutils-devel@sourceware.org>; Wed, 23 Oct 2024 10:40:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C39483858D21 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C39483858D21 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::135 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1729680042; cv=none; b=vnQ/vOLDq6H+//zb3vI1qIEv9mfxRDvE0pf/wPqJvZiCXztscodb/PTo5G5G2zsJt3f7oiWIJXg7pWg++lgvRXwJtjl0qz0m0izGxuxFEZ4QoZyyN56DuLl1EtBeJSgE2PvOnrAqojtEiBNIQq8ppPhpA7Day9wz776EhJXevBY= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1729680042; c=relaxed/simple; bh=Umkk7DyywY8w7Dm6FJsr3ERTaEWt+lwm5r/uIhykB/U=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=h/UrulVHO0W/hFzI3s9CCP8JGPstiIicw0fLLxnw/AbLEulgRo2MLIvmz3YhReYfEkucJn2XU1vUgPpGjY34LfSuxXy3osbuEbVPElRqK0EX+ovfV6QeGemZH5+PZwpeJOZAj30Q3kQtkUaUdak/u74c18ht4Eq/bCxnL3nu3hc= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-539fbbadf83so8792926e87.0 for <elfutils-devel@sourceware.org>; Wed, 23 Oct 2024 03:40:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1729680035; x=1730284835; darn=sourceware.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=gDNLMunJdU0fR55tUTOhkSjiyqd2WhPHdKhRv0vEVIk=; b=Ro44oKV1/DUo4OF1I4VgDKG56elccGmMNmd+7xIMbJesumy6Z6RSxMjlrwpCpl8POI 0WTztepvgPNSs/H28nIqx+fX+nF+y5bvrvrMl4cuhwRX8gWZyVXw4C1CHN5gupmTt60w WSUllCv2+f6tSzB88E6EuLnjglnFiUcbpO887Uzt1xQ8TYRI6aMW3uBsEzkhpPgaIKXP 01xeghij91PkL4xNOHPXs6QCFAPjjl22PqJH+nk1ilJqDdzeitvt2nAbIX8HsWstxlM0 1AxpdvNWS8jgA/kK5jxz0HyLqBrOT5PLQRU04FiMhTweaZAQvqzD73+tMbizOuEOJoLw 5B8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729680035; x=1730284835; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=gDNLMunJdU0fR55tUTOhkSjiyqd2WhPHdKhRv0vEVIk=; b=FQzGvmsxqBm+Y4YFM9XlNPSTMP9aZBY3m0ikQGYOt1a01kqhceFinchz06U7YRaFNh Qr5t7GOQ9DP7ZcBNhbhoAq56sw2uWrhl578S9BbKh0YVEUSI5+Wq1g4W60TGhVrlInow 7Rc680kNux4gCWxu4WDcDf5/83T+bRhkc1/P12mAgAbly2HlXuIB3zLe2+X0nq/1jNc9 zn8M+JX7TGvIqGUNnYSCy2cpYQ+Dg5nwxpvcoI/Xhl+ojcYOJ6XM3oWnI5PXnxVv72zD 272Lag0plgc6rPH/LPx+Zpfo1t+rmoNGesjaqmDygmnoQyTZzbvcoZRP1FHbQkhtIBpF 3bYQ== X-Gm-Message-State: AOJu0YxF+HEnGRZ1AFdAn4BR8kTU1qHOB+t8uDHTIYR4K/mjFEcSySGj ckD0jw9KX7N7zDWBwejbAuzzxN7cGYNnQBPSmxbn4f9Cw1N0P0KRD3snh52SlRo= X-Google-Smtp-Source: AGHT+IGsvvC5k6SY0Ck+UHgvNwgvEDyqDXLTIBN3Daz1+FI98qsqr3Zu2m6TveqZ4HJxN0wXy7geyA== X-Received: by 2002:a05:6512:1104:b0:539:f689:3c30 with SMTP id 2adb3069b0e04-53b1a308759mr950326e87.20.1729680034639; Wed, 23 Oct 2024 03:40:34 -0700 (PDT) Received: from anton-desktop.. (static.38.52.108.65.clients.your-server.de. [65.108.52.38]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-53a223e587fsm1031485e87.10.2024.10.23.03.40.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 23 Oct 2024 03:40:34 -0700 (PDT) From: ant.v.moryakov@gmail.com To: elfutils-devel@sourceware.org Cc: AntonMoryakov <ant.v.moryakov@gmail.com> Subject: [PATCH] dwarf_ranges.c: Prevent null pointer dereference in dwarf_ranges Date: Wed, 23 Oct 2024 13:40:29 +0300 Message-Id: <20241023104029.2383733-1-ant.v.moryakov@gmail.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: elfutils-devel@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Elfutils-devel mailing list <elfutils-devel.sourceware.org> List-Unsubscribe: <https://sourceware.org/mailman/options/elfutils-devel>, <mailto:elfutils-devel-request@sourceware.org?subject=unsubscribe> List-Archive: <https://sourceware.org/pipermail/elfutils-devel/> List-Post: <mailto:elfutils-devel@sourceware.org> List-Help: <mailto:elfutils-devel-request@sourceware.org?subject=help> List-Subscribe: <https://sourceware.org/mailman/listinfo/elfutils-devel>, <mailto:elfutils-devel-request@sourceware.org?subject=subscribe> Errors-To: elfutils-devel-bounces~patchwork=sourceware.org@sourceware.org |
Series |
dwarf_ranges.c: Prevent null pointer dereference in dwarf_ranges
|
|
Commit Message
Anton Moryakov
Oct. 23, 2024, 10:40 a.m. UTC
From: AntonMoryakov <ant.v.moryakov@gmail.com>
Fix a bug that caused a null pointer dereference in the `dwarf_ranges` function.
Added a check for NULL before dereferencing the pointer `d` to prevent potential
segmentation faults.
---
libdw/dwarf_ranges.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
Comments
Hi Anton, On Wed, 2024-10-23 at 13:40 +0300, ant.v.moryakov@gmail.com wrote: > Fix a bug that caused a null pointer dereference in the `dwarf_ranges` function. > Added a check for NULL before dereferencing the pointer `d` to prevent potential > segmentation faults. Basically the same comments as for the other patch. Please sign your work and follow the formatting conventions of the existing code. Also do you have a testcase for this? I have some trouble seeing how we would at this point with d equal to NULL. It seems like other guards would prevent us reaching this point. > --- > libdw/dwarf_ranges.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/libdw/dwarf_ranges.c b/libdw/dwarf_ranges.c > index b853e4b9..a4a04761 100644 > --- a/libdw/dwarf_ranges.c > +++ b/libdw/dwarf_ranges.c > @@ -532,9 +532,10 @@ dwarf_ranges (Dwarf_Die *die, ptrdiff_t offset, Dwarf_Addr *basep, > secidx, offset, 1)) > return -1; > } > - > - readp = d->d_buf + offset; > - readendp = d->d_buf + d->d_size; > + if(d != NULL){ > + readp = d->d_buf + offset; > + readendp = d->d_buf + d->d_size; > + } > > Dwarf_Addr begin; > Dwarf_Addr end; Thanks, Mark
diff --git a/libdw/dwarf_ranges.c b/libdw/dwarf_ranges.c index b853e4b9..a4a04761 100644 --- a/libdw/dwarf_ranges.c +++ b/libdw/dwarf_ranges.c @@ -532,9 +532,10 @@ dwarf_ranges (Dwarf_Die *die, ptrdiff_t offset, Dwarf_Addr *basep, secidx, offset, 1)) return -1; } - - readp = d->d_buf + offset; - readendp = d->d_buf + d->d_size; + if(d != NULL){ + readp = d->d_buf + offset; + readendp = d->d_buf + d->d_size; + } Dwarf_Addr begin; Dwarf_Addr end;