diff --git a/Lib/inspect.py b/Lib/inspect.py
index 4c3e33d..f6e1b47 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -1912,6 +1912,10 @@
         pass
     else:
         if sig is not None:
+            if not isinstance(sig, Signature):
+                raise TypeError(
+                    'unexpected object {!r} in __signature__ '
+                    'attribute'.format(sig))
             return sig
 
     try:
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py
index 1ede3b5..da0572d 100644
--- a/Lib/test/test_inspect.py
+++ b/Lib/test/test_inspect.py
@@ -3048,6 +3048,13 @@
         self.assertEqual(lines[:-1], inspect.getsource(module).splitlines())
         self.assertEqual(err, b'')
 
+    def test_custom_getattr(self):
+        def foo():
+            pass
+        foo.__signature__ = 42
+        with self.assertRaises(TypeError):
+            inspect.signature(foo)
+
     @unittest.skipIf(ThreadPoolExecutor is None,
             'threads required to test __qualname__ for source files')
     def test_qualname_source(self):
