diff --git a/Lib/socketserver.py b/Lib/socketserver.py
index e16aca5..1524d16 100644
--- a/Lib/socketserver.py
+++ b/Lib/socketserver.py
@@ -319,6 +319,8 @@
             except:
                 self.handle_error(request, client_address)
                 self.shutdown_request(request)
+        else:
+            self.shutdown_request(request)
 
     def handle_timeout(self):
         """Called if no new request arrives within self.timeout.
diff --git a/Lib/test/test_socketserver.py b/Lib/test/test_socketserver.py
index 1ea66a6..f8f7762 100644
--- a/Lib/test/test_socketserver.py
+++ b/Lib/test/test_socketserver.py
@@ -280,6 +280,30 @@
                 socketserver.TCPServer((HOST, -1),
                                        socketserver.StreamRequestHandler)
 
+    def test_shutdown_request_called_if_verify_request_false(self):
+        # Issue #26309: BaseServer should call shutdown_request even if
+        # verify_request is False
+        shutdown_called = False
+
+        class MyServer(socketserver.TCPServer):
+            def verify_request(self, request, client_address):
+                return False
+
+            def shutdown_request(self, request):
+                nonlocal shutdown_called
+                shutdown_called = True
+                super().shutdown_request(request)
+
+        def connect_to_server(proto, addr):
+            s = socket.socket(proto, socket.SOCK_STREAM)
+            s.connect(addr)
+            s.close()
+
+        self.run_server(MyServer,
+                        socketserver.StreamRequestHandler,
+                        connect_to_server)
+        self.assertEqual(shutdown_called, True)
+
 
 class MiscTestCase(unittest.TestCase):
 
diff --git a/Misc/NEWS b/Misc/NEWS
index 20be117..2442290 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -76,6 +76,10 @@
 Library
 -------
 
+- Issue #26309: In the "socketserver" module, shut down the request (closing
+  the connected socket) when verify_request() returns false.  Patch by Aviv
+  Palivoda.
+
 - Issue #25939: On Windows open the cert store readonly in ssl.enum_certificates.
 
 - Issue #25995: os.walk() no longer uses FDs proportional to the tree depth.
