diff --git a/recipes-openharmony/openharmony/openharmony-standard-3.0/base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch b/recipes-openharmony/openharmony/openharmony-standard-3.0/base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch
new file mode 100644
index 0000000000000000000000000000000000000000..77d632e7525b83a64e686ef392eed6e6ce06a832
--- /dev/null
+++ b/recipes-openharmony/openharmony/openharmony-standard-3.0/base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch
@@ -0,0 +1,27 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+Patch for //base/startup/appspawn_standard repository of OpenHarmony 3.0 codebase.
+
+Fix App_Spawn_Server_Override_007 test.
+
+Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
+Upstream-Status: Pending
+
+diff --git a/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp b/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp
+index 8956e0c272b9..516ca82a8ef6 100644
+--- a/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp
++++ b/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp
+@@ -208,8 +208,9 @@ HWTEST_F(AppSpawnServerOverrideTest, App_Spawn_Server_Override_007, TestSize.Lev
+ {
+     GTEST_LOG_(INFO) << "App_Spawn_Server_Override_007 start";
+ 
+-    char longProcName[20] = "longProcName";
+-    int64_t longProcNameLen = strlen(longProcName);
++    char longProcName[22] = "longProcName";
++    // longProcName array must be large enough to hold processName set below
++    int64_t longProcNameLen = sizeof(longProcName);
+     char processName[32] = "processName0123456789";
+     int32_t len = sizeof(processName);
+ 
diff --git a/recipes-openharmony/openharmony/openharmony-standard-3.0/base_startup_appspawn_standard-setprocessname-buffer-overflow.patch b/recipes-openharmony/openharmony/openharmony-standard-3.0/base_startup_appspawn_standard-setprocessname-buffer-overflow.patch
new file mode 100644
index 0000000000000000000000000000000000000000..2c45a341c64aa312460ece9e2ba0a1c7f8bbc81b
--- /dev/null
+++ b/recipes-openharmony/openharmony/openharmony-standard-3.0/base_startup_appspawn_standard-setprocessname-buffer-overflow.patch
@@ -0,0 +1,25 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+Patch for //base/startup/appspawn_standard repository of OpenHarmony 3.0 codebase.
+
+Prevent buffer overflow error in AppSpawn::SetProcessName() when processName is
+longer than longProcNameLen - 1.
+
+Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
+Upstream-Status: Pending
+
+diff --git a/src/appspawn_server.cpp b/src/appspawn_server.cpp
+index 9e238409ad41..ea539e5b5b2a 100644
+--- a/src/appspawn_server.cpp
++++ b/src/appspawn_server.cpp
+@@ -267,7 +267,7 @@ int32_t AppSpawnServer::SetProcessName(
+     }
+ 
+     // set long process name
+-    if (strncpy_s(longProcName, len, processName, len) != EOK) {
++    if (strncpy_s(longProcName, longProcNameLen, processName, len) != EOK) {
+         HiLog::Error(LABEL, "strncpy_s long name error: %{public}d", strerror_r(errno, err_string, ERR_STRING_SZ));
+         return -EINVAL;
+     }
diff --git a/recipes-openharmony/openharmony/openharmony-standard-3.1/base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch b/recipes-openharmony/openharmony/openharmony-standard-3.1/base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch
new file mode 100644
index 0000000000000000000000000000000000000000..6b45e4f56f3d3384824d2e33dd1fbf0162dec6af
--- /dev/null
+++ b/recipes-openharmony/openharmony/openharmony-standard-3.1/base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch
@@ -0,0 +1,27 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+Patch for //base/startup/appspawn_standard repository of OpenHarmony 3.1 codebase.
+
+Fix App_Spawn_Server_Override_007 test.
+
+Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
+Upstream-Status: Pending
+
+diff --git a/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp b/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp
+index 8956e0c272b9..516ca82a8ef6 100644
+--- a/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp
++++ b/test/unittest/app_spawn_server_test/app_spawn_server_override_test.cpp
+@@ -208,8 +208,9 @@ HWTEST_F(AppSpawnServerOverrideTest, App_Spawn_Server_Override_007, TestSize.Lev
+ {
+     GTEST_LOG_(INFO) << "App_Spawn_Server_Override_007 start";
+ 
+-    char longProcName[20] = "longProcName";
+-    int64_t longProcNameLen = strlen(longProcName);
++    char longProcName[22] = "longProcName";
++    // longProcName array must be large enough to hold processName set below
++    int64_t longProcNameLen = sizeof(longProcName);
+     char processName[32] = "processName0123456789";
+     int32_t len = sizeof(processName);
+ 
diff --git a/recipes-openharmony/openharmony/openharmony-standard-3.1/base_startup_appspawn_standard-setprocessname-buffer-overflow.patch b/recipes-openharmony/openharmony/openharmony-standard-3.1/base_startup_appspawn_standard-setprocessname-buffer-overflow.patch
new file mode 100644
index 0000000000000000000000000000000000000000..0d5b7915b51a15836b2277a9269f76d3d1452490
--- /dev/null
+++ b/recipes-openharmony/openharmony/openharmony-standard-3.1/base_startup_appspawn_standard-setprocessname-buffer-overflow.patch
@@ -0,0 +1,25 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+Patch for //base/startup/appspawn_standard repository of OpenHarmony 3.1 codebase.
+
+Prevent buffer overflow error in AppSpawn::SetProcessName() when processName is
+longer than longProcNameLen - 1.
+
+Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
+Upstream-Status: Pending
+
+diff --git a/src/appspawn_server.cpp b/src/appspawn_server.cpp
+index 54f66450b81e..707aed8c924e 100644
+--- a/src/appspawn_server.cpp
++++ b/src/appspawn_server.cpp
+@@ -514,7 +514,7 @@ int32_t AppSpawnServer::SetProcessName(
+     }
+ 
+     // set long process name
+-    if (strncpy_s(longProcName, len, processName, len) != EOK) {
++    if (strncpy_s(longProcName, longProcNameLen, processName, len) != EOK) {
+         HiLog::Error(LABEL, "strncpy_s long name error: %{public}d", errno);
+         return -EINVAL;
+     }
diff --git a/recipes-openharmony/openharmony/openharmony-standard_3.0.bb b/recipes-openharmony/openharmony/openharmony-standard_3.0.bb
index 5c51b25c25c276cbfb921f65e0fd3e1e7b1a1a76..6b0d720866712f139e6b0a8348282b512224f4d2 100644
--- a/recipes-openharmony/openharmony/openharmony-standard_3.0.bb
+++ b/recipes-openharmony/openharmony/openharmony-standard_3.0.bb
@@ -50,6 +50,8 @@ SRC_URI += "file://xf86drm.c-Add-drmWaitVBlank-hack.patch;patchdir=${S}/third_pa
 SRC_URI += "file://graphic-standard-Add-missing-entry-for-libwms_client.patch;patchdir=${S}/foundation/graphic/standard"
 
 SRC_URI += "file://appspawn-procps.patch;patchdir=${S}/base/startup/appspawn_standard"
+SRC_URI += "file://base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch;patchdir=${S}/base/startup/appspawn_standard"
+SRC_URI += "file://base_startup_appspawn_standard-setprocessname-buffer-overflow.patch;patchdir=${S}/base/startup/appspawn_standard"
 
 inherit python3native gn_base ptest
 
diff --git a/recipes-openharmony/openharmony/openharmony-standard_3.1.bb b/recipes-openharmony/openharmony/openharmony-standard_3.1.bb
index 3756a8c02422d5beefedf8078296e91c38fc431f..726dc705d14366ab674ab33619930b9f7ce8ce83 100644
--- a/recipes-openharmony/openharmony/openharmony-standard_3.1.bb
+++ b/recipes-openharmony/openharmony/openharmony-standard_3.1.bb
@@ -74,6 +74,8 @@ SRC_URI += "file://foundation_distributedschedule_safwk-slash-system-symlink.pat
 SRC_URI += "file://foundation_distributedschedule_samgr-slash-system-symlink.patch;patchdir=${S}/foundation/distributedschedule/samgr"
 
 SRC_URI += "file://appspawn-procps.patch;patchdir=${S}/base/startup/appspawn_standard"
+SRC_URI += "file://base_startup_appspawn_standard-app-spawn-server-override-007-fix.patch;patchdir=${S}/base/startup/appspawn_standard"
+SRC_URI += "file://base_startup_appspawn_standard-setprocessname-buffer-overflow.patch;patchdir=${S}/base/startup/appspawn_standard"
 
 # Workaround for problem with nodejs 17:
 # error:0308010C:digital envelope routines::unsupported