From d8490969475cf2731d2f94d3282fdb67923f8670 Mon Sep 17 00:00:00 2001
From: Huyou <huyou36@126.com>
Date: Thu, 22 Oct 2020 18:17:08 +0800
Subject: [PATCH] change vuln-3 from heap overflow to stack overflow

---
 src/vuln-3/dc.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/vuln-3/dc.c b/src/vuln-3/dc.c
index 2b3e940..f7ee5b8 100644
--- a/src/vuln-3/dc.c
+++ b/src/vuln-3/dc.c
@@ -74,10 +74,13 @@ static node_t *node_new(const char *varname, const value_t value){
   assert(new != NULL && "new: malloc failed");
 
   //new->varname = strdup(varname);
+  char varname_copy[1015];
+  unsigned int count = 0;
+  while (varname[count] != '\0') {
+	  varname_copy[count] = varname[count++];
+  }
 
-  /*---- vuln-3 ----*/
-  new->varname = (char *)malloc(1014 * sizeof(char));
-  strcpy(new->varname, varname);
+  new->varname = varname_copy;
 
   assert(new->varname != NULL && "new: strdup varname failed");
   new->value = value;
-- 
GitLab